1、检测是否已经安装
rm -qa | grep vsftpd
2、安装vsftpd
没有安装话,首先进行安装:yum install vsftpd
3、配置ftp服务
vi /etc/vsftpd/vsftpd.conf
禁用匿名登录:anonymous_enable=YES设置为NO
#允许ascii文件上传和下载
ascii_upload_enable=YES
ascii_download_enable=YES
#将用户限制在为其配置的主目录
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#允许写
allow_writeable_chroot=YES
4、查看ftp服务器生效的配置文件
cat /etc/vsftpd/vsftpd.conf | grep ^[^#]
5、重启vsftpd服务
service vsftpd restart
6、创建ftp用户
创建组名:groupadd name
useradd -g name-d /data/www/name-s /sbin/nologin name(-s /sbin/nologin name表示不允许该用户通过命令行方式登录)
设置密码:passwd python
7、如果遇到无法通过FTP软件链接的话,原因和有可能就是因为防火墙的问题
如果关闭防火墙能够访问,打开却不能的情况需要我们添加一个模块一下是添加步骤
添加ip_conntrack_ftp 模块
[root@hexuweb101 ~] vi /etc/sysconfig/iptables-config
添加下面一行
IPTABLES_MODULES="ip_conntrack_ftp"
然后进行重启防火墙即可 测试通过FTP软件连接正常!
8.报错331和530问题解决方案
现象:
ftp连接远程服务器时报错
USER ***
331Please specify password
PASS ***
530 Login incorrect
第一种:
vi /etc/pam.d/vsftpd(是因为用户鉴权问题没解决好,(因为用户是nologin的,所以存在))
注释掉/etc/pam.d/vsftpd文件里这一行:
#auth required pam_shells.so
第二种:
vi /etc/shells
在最后一行下边加上:/sbin/nologin