Ubuntu版本:Ubuntu 18.04.1 LTS
目的:快速创建一个ftp,满足以下功能
1.局域网内所有用户,均可以通过ftp工具连接到ftp指定路径
2.局域网所有用户可以上传和下载
3.普通用户不能删除ftp文件
4.特定用户可以删除ftp文件
搭建和配置过程
1.安装工具
$ sudo apt install vsftpd
2.修改配置文件
$ sudo gedit /etc/vsftpd.conf
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
allow_writeable_chroot=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
chroot_local_user=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
local_root=/home/erge/workspace
3.创建用于存放ftp文件的工作路径
$ mkdir -p /home/erge/workspace #这个路径跟上面的配置文件,最后一行的路径保持一致即可
4.创建一个新Ubuntu用户,这里命名为 ftperge
$ sudo useradd -d /home/erge/workspace -M ftperge
$ sudo passwd ftperge
5.修改ftp权限
$ chmod -R 777 workspace/
6.修改配置文件,解决ftp登录错误:530 login incorrect
$ sudo gedit /etc/pam.d/vsftpd
#注释掉最后一行
#auth required pam_shells.so
7.重新启动服务,看下效果
$ sudo service vsftpd restart
此时可以正常连接ftp了,上传、下载、删除 文件都没有问题
现在的关键问题是,如何让普通登录者没有删除文件的权限