一、开启防火墙ftp端口
vi /etc/sysconfig/iptables #编辑防火墙配置文件
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT(允许21端口通过防火墙)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT(允许20端口通过防火墙)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9000:9045 -j ACCEPT(设置ftp被动模式的端口范围)
二、检查系统是否已安装vsftp
rpm -q vsftpd
package vsftpd is not installed #说明系统没有安装vsftpd
三. 安装vsftpd
yum install vsftpd
按Y回车,系统自动安装
service vsftpd start #启动vsftpd
service vsftpd restart #重启
service vsftpd stop #停止
chkconfig vsftpd on #设置开机时自动运行
此时可以测试是否安装成功(注:此时为匿名登录, 此次登录为匿名登录名user: anonymous密码为空,登录成功则说明vsftp已安装成功)
四、配置vsftp服务器
1.配置前先备份
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
vi /etc/vsftpd/vsftpd.conf #配置
2.需要修改的配置信息:
listen_port=21 #默认无此行,ftp端口为21,添加listen_port=2222把默认端口修改为2222,注意:防火墙同时要开启2222端口
anonymous_enable=NO #禁止匿名用户
local_enable=YES #设定本地用户可以访问。
write_enable=YES #全局设置,是否容许写入(无论是匿名用户还是本地用户,若要启用上传权限的话,就要开启他)
local_umask=022 #设定上传后文件的权限掩码。
anon_upload_enable=NO #禁止匿名用户上传。
anon_mkdir_write_enable=NO #禁止匿名用户建立目录。
dirmessage_enable=YES #设定开启目录标语功能。
xferlog_enable=YES #设定开启日志记录功能。
connect_from_port_20=YES #设定端口20进行数据连接。
chown_uploads=NO #设定禁止上传文件更改宿主。
xferlog_file=/var/log/vsftpd.log #日志保存路径(先创建好文件)
xferlog_std_format=YES #使用标准格式
async_abor_enable=YES #设定支持异步传输功能。
ascii_upload_enable=YES
ascii_download_enable=YES #设定支持ASCII模式的上传和下载功能。
ftpd_banner=Welcome to FTP service. #设定Vsftpd的登陆标语。
chroot_local_user=YES #禁止本地用户登出自己的FTP主目录。
chroot_list_enable=YES #限制登出自己的FTP主目录的用户名单。
chroot_list_file=/etc/vsftpd/chroot_list #限制登出自己的FTP主目录的用户名单所在路径。
userlist_enable=yes #用userlist来限制用户访问
以下需手动增加:
user_config_dir=/etc/vsftpd/userconf #用户的配置文件路径
pasv_enable=yes #开启被动模式
pasv_min_port=9000 #被动模式最小端口
pasv_max_port=9045 #被动模式最大端口
reverse_lookup_enable=NO #关闭DNS查找,加快ftp登录速度
3.建立用户配置目录
mkdir /etc/vsftpd/userconf
建立限制登出自己的FTP主目录的用户名单
touch /etc/vsftpd/chroot_list
建立用户登陆后的目录
mkdir /test
并设置目录权限
chown -R 777 /test/
4.添加用户配置文件
vi /etc/vsftpd/userconf/ftpuser #此处ftpuser为ftp的用户名
内容为local_root=/test #FTP用户登陆后指定的目录
5.添加用户
useradd ftpuser
passwd ftpuser设置ftpuser用户的密码
此时重启vsftp服务,service vsftpd restart
到此,vsftp已安装配置完成,可以通过ftp客户端正常登录了。