1:安装vsftpd yum install vsftpd
2:关闭防火墙 service iptables stop
3:允许21端口通行 vi /etc/sysconfig/iptables 添加两条 -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT -A INPUT -p tcp --dport 30000:30100 -j ACCEPT
4:重启防火墙 service iptables restart
5:启动ftp service vsftpd start (这时可以匿名登录ftp了)
6:配置ftp vi /etc/vsftpd/vsftpd.conf
修改一下内容:
anonymous_enable=NO
设定不允许匿名用户访问。
之类的软件更好的连接服务器,得让VSFTPD支持被动模式才行,上面已经开通相应端口防火墙,在最后加入
pasv_enable=YES
pasv_max_port=30100
pasv_min_port=30000
(上面的30000--30100端口号可以是其它的,在此举例)
7:添加用户
vi /etc/vsftpd/vsftpd.conf 中
把用户限定到自己的目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
在chroot_list中添加用户名就行了 一行一个用户
# useradd -d /var/www/html -g ftp -s /sbin/nologin xxx
设置用户密码
# passwd xxx
提升目录权限
# chmod 777 /var/www/html -R
将目录分配给ftp组的xxx用户
# chown xxx:ftp /var/www/html 若不成功直接修改/etc/passwd ftptest:x:501:50::/var/www/html:/sbin/nologin
重启vsftpd
# service vsftpd restart
linux--解决登录vsftpd后无法使用dir和切换目录的方法
查看selinux是否打开ftp支持
# getsebool -a|grep ftp
开启目录查看和文件上传
# setsebool -P ftpd_disable_trans 1 或 setsebool -P ftp_home_dir 1
# setsebool -P allow_ftpd_full_access 1
然后重启服务器