[1] 安装VSFTP
[root@localhost ~]# yum -y install vsftpd
[2] 配置vsftpd.conf文件
# 1.与用户有关的设定
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=002
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
local_root=/tmp
# 3. 与服务器有关的設定
use_localtime=YES
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/xferlog
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
tcp_wrappers=YES
banner_file=/etc/vsftpd/welcome.txt 欢迎文件(这个必须有)
local_max_rate=1000000
max_clients=10
max_per_ip=1
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
pasv_min_port=65400 被动最小连接端口
pasv_max_port=65410 被动最大连接端口
pasv_enable=YES
connect_timeout=60
accept_timeout=60
data_connection_timeout=300 数据连接超时
idle_session_timeout=300 空闲等待时间
nopriv_user=nobody
如果是默认安装vsftpd的话,以下是一些文件的位置约定:
/usr/sbin/vsftpd —- VSFTPD的主程序
/etc/rc.d/init.d/vsftpd —- 启动脚本
/etc/vsftpd/vsftpd.conf —- 主配置文件
/etc/pam.d/vsftpd —- PAM认证文件
/etc/vsftpd.ftpusers —- 禁止使用VSFTPD的用户列表文件
/etc/vsftpd.user_list —- 禁止或允许使用VSFTPD的用户列表文件
/var/ftp —- 匿名用户主目录
/var/ftp/pub —- 匿名用户的下载目录
如果要更改默认下载目录,修改/etc/vsftpd/vsftpd.conf,加入如下三行:
local_root=/
chroot_local_user=YES
anon_root=/
local_root表示使用本地用户登录到ftp时的默认目录
anon_root表示匿名用户登录到ftp时的默认目录
上面的chroot_list_file是设定锁定登陆用户在其home目录的列表,要在chroot_list_enable=YES情况下才生效。
[3] 增加FTP帐户
[root@localhost ~]# adduser -g ftp -s /sbin/nologin cent [root@localhost ~]# passwd cent
[4] 编辑user_list文件,允许cent用户访问FTP
[root@localhost ~]# vi /etc/vsftpd/user_list # vsftpd userlist # If userlist_deny=NO, only allow users in this file # If userlist_deny=YES (default), never allow users in this file, and # do not even prompt for a password. # Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers # for users that are denied. root bin daemon adm lp sync shutdown halt mail news uucp operator games nobody cent
[5] 建立我们的根目录,并设置访问权限
[root@localhost ~]# mkdir /var/public_root [root@localhost ~]# chown -R cent /var/public_root [root@localhost ~]# chmod -R 777 /var/public_root
[6] 开启vsftpd服务
[root@localhost ~]# service vsftpd start Starting vsftpd for vsftpd: [ OK ]
[7] 默认开启vsftp服务
[root@localhost var]# chkconfig vsftpd on