问题描述:

  之前在centos6/7可以快速构建vsftpd服务,在ubuntu上频繁出错。最后发现是vsftpd版本比较新(新增安全特性导致的)

问题解决:

  加上对应参数即可解决问题

window资源管理器登录ftp

ftp://user:pass@ip/xxx/    //账户认证登录

ftp://ip/xxx

ftp://anonymous:@ip/xxx   //匿名登录ftp

ftp://ftp:@ip/xxx

部署环境:

01、系统发行版本

02、vsftpd版本

apt-get install -y vsftpd

 03、匿名登录ftp

/etc/vsftpd.conf

listen=YES
anonymous_enable=YES
local_enable=NO
write_enable=YES
local_umask=
anon_upload_enable=YES
anon_mkdir_write_enable=YES
#人工定义根目录
anon_root=/ldata/ftp_pub
allow_writeable_chroot=YES
chroot_local_user=NO

注意:结尾不能有空格,血的教训

mkdir -p /ldata/ftp_pub      ###进入后的跟目录

mkdir /ldata/ftp_pub/pub   ###匿名帐户可以出创建删除文件的目录

chown -R ftp:ftp /ldata/ftp_pub

chmod a-w /ldata/ftp_pub

04、匿名登录测试

systemctl restart vsftpd       ###观察服务是否启动正常    ss -lnt|grep 21

journalctl -u vsftpd -f     ###日志是否正常

root@bogon:~# ftp localhost    //注意也可以使用IP登录
ftp: connect to address ::: Connection refused
Trying 127.0.0.1...
Connected to localhost.
(vsFTPd 3.0.)
Name (localhost:user): ftp //匿名登录可以使用的账户 ftp/anonymous密码不用填写
Please specify the password.
Password:
Login successful. //登录成功
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> dir //注意根目录不能创建目录及上传文件,需要在pub目录下
PORT command successful. Consider using PASV.
Here comes the directory listing.
drwxr-xr-x Aug : pub
Directory send OK.
ftp> cd pub
Directory successfully changed.
ftp> dir
PORT command successful. Consider using PASV.
Here comes the directory listing.
drwx------ Aug : cd
drwx------ Aug : sb
Directory send OK.
ftp> mkdir good
"/pub/good" created
ftp> cd good
Directory successfully changed.
ftp> touch sb
?Invalid command
ftp> mkdir sb
"/pub/good/sb" created
ftp>

 05、linux本地账户登录

###本地账户登录进入根目录/home/xxx/


root@bogon:/etc# cat vsftpd.conf
listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES  //本地账户许可登录ftp
write_enable=YES
local_umask=022

dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
idle_session_timeout=600
data_connection_timeout=120


ascii_upload_enable=YES
ascii_download_enable=YES


secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
utf8_filesystem=YES
allow_writeable_chroot=YES


#指定本地账户可以登录ftp

userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/ftpuser_list   //清单中的账户可以登录ftp

root@bogon:/etc# cat ftpuser_list
ftp_test

local_root=/ldata/ftp_data     //指定本地登录账户的根目录,

chown -R ftp_test: /ldata/ftp_data    //把可以登录账户的权限赋值正确

06、用户登录测试

注意:man 5 vsftpd.conf  //查看详细的参数配置及含义

ubuntu16.04部署vsftpd的更多相关文章

  1. 基于ubuntu16.04部署IBM开源区块链项目-弹珠资产管理(Marbles)

    前言 本教程基本上是对Marbles项目的翻译过程. 如果英文比较好的话,建议根据官方操作说明,一步步进行环境部署.当然你也可以参考本教程在自己的主机上部署该项目. Marbles 介绍 关于 Mar ...

  2. ubuntu16.04 部署配置LVS主从

    实验环境---ubuntu16.04 四台机器:10.211.55.13—55.16 具体实验环境配置如下: 10.211.55.102  LVS_VIP 10.211.55.13  LVS_MAST ...

  3. disconf实践(一)Ubuntu16.04部署disconf

    在企业中,随着公司业务的扩张,用户量的增大,单一节点应用无法支撑正常的业务逻辑,比较常见的现象是访问速度变慢,甚至超时,严重时可能会造成系统宕机.为了尽量减少宕机的风险,单一节点系统需要进行水平扩展, ...

  4. Ubuntu16.04部署python2和python3共存的Jupyter Notebook

    一.安装python和python-pip sudo apt-get install python python3 python-pip python3-pip sudo pip install -- ...

  5. Ubuntu16.04部署phantomjs的一个问题

    首先phantomjs是作为pyspider的一个外部依赖组件部署的. apt安装完出现问题: QXcbConnection: Could not connect to display Phantom ...

  6. Ubuntu16.04 部署安装Docker容器 & 注意事项

    一.部署安装Docker容器 1.1 Ubuntu下安装 crul sudo apt install curl curl是利用URL语法在命令行方式下工作的开源文件传输工具.它被广泛应用在Unix.多 ...

  7. ubuntu16.04部署RED5流媒体服务器

    前提:jdk已经安装 1,下载RED5(https://github.com/Red5/red5-server/releases)选择red5-server-X.X.X-MXX.tar.gz 2,解压 ...

  8. Ubuntu16.04 部署配置GO语言开发环境 & 注意事项

    1. 安装GO 安装go语言包: $ curl -O https://storage.googleapis.com/golang/go1.10.1.linux-amd64.tar.gz   下载完成后 ...

  9. 阿里云 Ubuntu16.04 部署 LAMP

    1.更新软件源 sudo apt-get update 2.安装Apache sudo apt-get install apache2 3.查看Apache是否安装成功 apache2 –v 如下所示 ...

随机推荐

  1. CentOS7优化打开文件句柄数,修改MariaDB允许最大连接数、允许最大插入数据库的数据大小。

    修改服务器配置:vim /etc/systemd/system.conf查找并修改下列两行的值:DefaultLimitNOFILE=1024000DefaultLimitNPROC=1024000 ...

  2. 自动化办公:python操作Excel

    1.安装 -- upgrade pippython -m pip install --- install pypipip install pypi 执行python setup.py install进 ...

  3. notepad++去掉红色波浪线

    1 在notepad++的首页上找到插件菜单,并点击打开插件设置的下拉菜单.   2 下拉菜单中有一个菜单项是DSpellCheck,这个菜单项的子项中有一项是Spell Check Document ...

  4. PHP 1000个进程同时利用file_put_contents的追加FILE_APPEND模式

    1000个进程同时利用file_put_contents的追加FILE_APPEND模式,不会出现写入的数据被覆盖? <?php // fork出1000个进程查询,内存大,cpu屌,1000个 ...

  5. CocosCreator TypeScript项目 (vscode 设置中文,默认调试环境设置)

    版本:2.2.1 深圳好多公司用的cocoscreator,学习一下. 这篇是如何安装,然后运行一个hello world. 一  下载 cocoscreator:https://www.cocos. ...

  6. PMP模拟错题总结

    本打算15天完成第二轮复习的,结果项目太忙,拖成了25天.第二轮主要以小绿书为主,就是如下这本 怎么说呢,题目偏向于考ITTO的内容,情景题比较少.可以使用“管理圈”APP作为补充 1.敏感性分析的结 ...

  7. 相同数据中选择id最大数据 的sql

    select max(id)id ,name, age from tablename group by name, age

  8. Xamarin.Android UnauthorizedAccessException: Access to the path is denied

    进行文件读写,勾选了权限 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" / ...

  9. 【ARM-Linux开发】OpenACC并行编程实战笔记

    今年运气比较好,学了cuda之后,了解到了gpu的另两种使用语言opencl和openacc,  opencl(Open Computing Language ,开放计算语言)是面向异构系统的并行编程 ...

  10. DOM事件: DOM事件级别、DOM事件流、DOM事件模型、DOM事件捕获过程、自定义事件

    前端面试中只要问到事件,就肯定会有DOM事件:如果回答出来了,就会一直向下延申,其实这些东西都很简单,但我第一次被问到的时候,也是懵的: DOM事件级别: DOM0 element.onclick = ...