安装完vsftp,并设置好用户名和密码以后,如果出现无法登录,一般是因为selinux阻止了,用终端运行以下代码就可以解决:
setsebool -P ftp_home_dir 1
service vsftpd restart
这时候应该就可以登录了,可是有的时候会出现可以登录,可是不能显示目录,在执行LIST时提示:连接超时,获取目录失败。
这是因为CentOS的防火墙阻止了ftp被动模式需要的一些非特殊端口,有两个解决办法:
- 设置vsftp的端口范围并设置防火墙允许这些端口。
- 在ftp客户端设置只使用主动模式连接。