ftp(file translation protocol)文件传输协议
sudo apt-get install vsftpd
查看ftp运行状态 service vsftpd status
开启ftp服务 sudo /etc/init.d/vsftpd start 或者 service vsftpd start关闭ftp服务 sudo /etc/init.d./vsftpd stop 或者 service vsftpd stop
重启ftp服务 sudo /etc/init.d/vsftpd restart 或者 service vsftpd restart
配置ftp
默认配置文件/etc/vsftpd.conf
#运行standalone模式(关于standlone模式)
listen=YES
#接受匿名用户
anonymous_enable=YES
#接受本地用户
local_enable=YES
#允许本地账户写文件
write_enable=YES
#本地用户上传后的文件的权限
local_umask=022
#允许匿名用户上传
anon_upload_enable=YES
#允许匿名用户创建、修改、删除文件
anon_mkdir_write_enable=YES
#用户进入一个目录后给出信息提示
dirmessage_enable=YES
#使用服务器本地时间
use_localtime=YES
#记录ftp的上传下载记录
xferlog_enable=YES
#允许从20端口连接
connect_from_port_20=YES
#改变上传文件的归属
chown_uploads=YES
#同上,改变文件的归属,与上一个一起使用
chown_username=whoever
#日志文件的文件名
xferlog_file=/var/log/vsftpd.log
#日志使用标准xferlog格式
xferlog_std_format=YES
#空闲600秒自动断开ftp连接
idle_session_timeout=600
#数据传输超时的时间,多久接收不到数据,断开连接
data_connection_timeout=120
#ftp用户登入时显示的信息
ftpd_banner=Welcome to blah FTP service.
#本地所有账户都只能在自家目录
chroot_local_user=YES
#文件中的名单可以调用
chroot_list_enable=YES
#chroot_list_file的路径
chroot_list_file=/etc/vsftpd.chroot_list
#每个本地用户登陆后的默认目录
local_root=/home/ftp
#匿名用户登陆后的默认目录
amon_root=/home/ftp
限制本地用户访问ftp
Userlist_enable=yes(用Userlist来限制用户访问)
Userlist_deny=no(名单中的人不允许访问)
Userlist_file= (文件放置的路径)
userlist_enable=yes 匿名帐号不能登陆
chroot_local_user、 chroot_list_enable、chroot_list_file
这个组合用于指示用户可否切换到默认目录以外的目录。
其中,chroot_list_file默认是/etc/vsftpd.chroot_list,该文件定义一个用户列表。
若chroot_local_user 设置为NO,chroot_list_enable设置为NO,则所有用户都是可以切换到默认目录以外的。
若chroot_local_user 设置为YES,chroot_list_enable设置为NO,则锁定FTP登录用户只能在其默认目录活动,不允许切换到默认目录以外。
若chroot_local_user 设置为YES,chroot_list_enable设置为YES,则chroot_list_file所指定的文件里面的用户列表都可以访问默认目录以外的目录,而列表以外的用户则被限定在各自的默认目录活动。
若chroot_local_user设置为NO,chroot_list_enable设置为YES,则chroot_list_file所指定的文件里面的用户列表都被限定在各自的默认目录活动,而列表以外的用户则可以访问默认目录以外的目录。
建议设置:chroot_local_user与chroot_list_enable都设置为YES。这样就只有chroot_list_file所指定的文件里面的用户列表可以访问默认目录以外的目录,而列表以外的用户则被限定在各自的默认目录活动!
好处:所有人都被限制在特定的目录里面。如果某些特定用户需要访问其他目录的权限,只需将其用户名写入chroot_list_file文件就可以赋予其访问其他目录的权限!
userlist_file、userlist_enable、userlist_deny
这个组合用于指示用户可否访问FTP服务。
其中,userlist_file默认是/etc/vsftpd.user_list,该文件定义一个用户列表。
若userlist_enable设置为YES,userlist_deny设置为NO,则只有userlist_file所指定的文件里面的用户列表里面的用户可以访问FTP。
若userlist_enable设置为YES,userlist_deny设置为YES,则userlist_file所指定的文件里面的用户列表里面的用户都被拒绝访问FTP。
若userlist_enable设置为NO,userlist_deny设置为YES,则这个列表没有实际用处,起不到限制的作用!因为所有用户都可访问FTP。
建议设置:userlist_enable与userlist_deny都设置为YES。这样则userlist_file所指定的文件里面的用户列表里面的用户都被拒绝访问FTP。
好处:只需将某用户帐号加入到userlist_file所指定文件里面的用户列表,就可以起到暂时冻结该用户的功能!