centos7 安装配置vsftp – Haswell
安装vsftpd
yum install -y vsftpd
- 编辑ftp配置文件
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
#anonymous_enable=YES
chroot_local_user=YES
#去掉前面的注释
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd/chroot_list
#不受限制的用户列表,用不用都OK
allow_writeable_chroot=YES
#加上这行解决了无法登陆的问题
启动/重新启动ftp
service vsftpd start
service vsftpd restart
- 设置开机启动ftp
chkconfig vsftpd on
- 防火墙配置(iptables)
vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
- 防火墙重新启动
- 建立ftp账户
useradd -d /path/you/want -s /sbin/nologin ftpadmin
- 修改密码
passwd ftpadmin
- 设置账户权限
chown -R ftpadmin.ftpadmin /path/you/set
http://www.centoscn.com/image-text/install/2015/0227/4748.html
修改iptables防火墙规则解决vsftp登录后不显示文件目录的问题
iptables里面仅仅开放了80、21等常用端口,这样就导致了vsFTPd在被动模式时无法使用随机端口,从而造成了客户端连接FTP时无法列出目录这样的问题。解决方式很简单,给vsFTPd增加随机端口的范围,然后把这个端口范围添加到iptables。
具体做法如下:
1、修改/etc/vsftpd/vsftpd.conf的配置文件,在文件末端添加:
pasv_min_port=5555
/etc/init.d/vsftpd restart
2、添加一条防火墙规则
iptables -I INPUT -p tcp –dport 5555:6666 -j ACCEPT
/etc/init.d/iptables save
/etc/init.d/iptables start
最后再次进行ftp连接,成功。
第二种方法:
添加附加模块,链接追踪模块
modprobe ip_conntrack_ftp //临时加载/etc/sysconfig/iptables-config//这个是永久的
IPTABLES_MODULES=”ip_conntrack_netbios_ns ip_conntrack_ftp”service iptables restart
http://www.jb51.net/article/46169.htm
强制ssl
4.编辑配置文件,添加如下行
# vim /etc/vsftpd/vsftpd.conf
添加如下行
# SSL configure
ssl_enable=YES
ssl_tlsv1=YES //建议开启这个就行了
ssl_sslv2=NO
ssl_sslv3=NO
allow_anon_ssl=YES //匿名用户开启使用ssl
force_local_data_ssl=YES //强制数据传输使用加密
force_local_logins_ssl=YES //强制登录时使用ssl
rsa_cert_file=/etc/vsftpd/ssl/ftp.crt
rsa_private_key_file=/etc/vsftpd/ssl/ftp.key
5.开启vsftpd服务,在客户端就可以使用ssl加密方式访问ftp了
# service vsftpd start
0 条评论