1. 安装vsftpd sudo apt-get install vsftpd
安装后会自动新建一个用户ftp,密码ftp,作为匿名用户登录的默认用户
sudo /etc/init.d/vsftpd restart 重启ftp server
sudo /etc/init.d/vsftpd start
sudo /etc/init.d/vsftpd stop
2. 配置 sudo /etc/vsftpd.conf
1) 用户进入时路径:
默认的路径是 /srv/ftp, 可修改.
local_root=/home/ftp #本地用户登录后路径
anon_root=/home/ftp #匿名用户登录后路径
2) 匿名用户设置
anonymous_enable=YES #允许匿名用户登录
anon_upload_enable=YES #允许匿名用户上传文件, 相关文件夹必须有写权限,同时 write_enable=YES 开启
#anon_mkdir_write_enable=YES #允许匿名用户新建文件夹 推荐关闭
anon_umask=022 #用户上传文件的权限设置, umask为权限的补码
chown_uploads=YES #修改匿名用户上传文件的所有者, 所有者可通过chown_username=whoever 来设置,不推荐使用root
ftp_username= # 匿名用户所使用的系统用户名.默认下,此参数在配置文件中不出现, 值为ftp
sword=YES # 控制匿名用户登入时是否需要密码,YES不需要,NO需要.默认值为NO.
3) 本地用户设置
基本与匿名用户设置一致
4) 目录访问控制
#chroot_list_enable=YES # 将用户锁在自己目录中, 具体用户在chroot_list_file中设置
#chroot_list_file=/etc/vsftpd.chroot_list # 指出被锁定在自家目录中的用户的列表文件.文件格式为一行一用户.
#chroot_local_user=YES # 将本地用户锁定在自家目录中. 当此项被激活时,chroot_list_enable和chroot_local_users参数的作用将发生变化, chroot_list_file所指定文件中的用户将不被锁定在自家目录.本参数被激活后,可能带来安全上的冲突,特别是当用户拥有上传 shell访问等权限时.因此,只有在确实了解的情况下,才可以打开此参数.默认值为NO.
5) 其他设置
xferlog_enable=YES #使用上传/下载日志, 日志文件默认为/var/log/vsftpd.log, 可以通过xferlog_file更改
dirmessage_enable=YES #进入目录时显示此目录下message_file选项指定的文件(默认为.message)的内容
use_localtime=YES #使用本地时间, 否则使用GMT
connect_from_port_20=YES #使用20号端口
6) 安全选项
idle_session_timeout=600 # 秒, 用户会话空闲后10分钟断开
data_connection_timeout=120 # 将数据连接空闲2分钟断开
accept_timeout=60 # 将客户端空闲1分钟后断
connect_timeout=60 #中断1分钟后又重新连接
local_max_rate=50000 # bite 本地用户传输率50K
anon_max_rate=30000 # bite 匿名用户传输率30K
pasv_min_port=50000 # 将客户端的数据连接端口改在50000
pasv_max_port=60000 # 50000—60000之间
max_clients=200 # FTP的最大连接数
max_per_ip=4 # 每IP的最大连接数
listen_port=5555 # 从5555端口进行数据连接
转载于:https://blog.51cto.com/wzktravel/1100276