centos7 安装vsftpd的步骤

感觉很坑,按照网上说的没一个都测试了,可一直都报错。

不断的重新安装不下10次,最后一次终于测试出了正确的方法。

#官网配置说明##

https://security.appspot.com/vsftpd/vsftpd_conf.html


##需求##

1)登录FTP 只能看到当前用户的,不能跨越到主目录

2)禁止匿名用户登录FTP

3)修改FTP 监听端口号!


##问题##

yum install vsftpd

结果一大堆问题,

1)无法启动 systemctl stop vsftpd --> 成功过,第二行 systemctl start vsftpd ==> 一直报错一直报错

[root@niche vsftpd]# whereis vsftpd
vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
[root@niche vsftpd]# systemctl status vsftpd
vsftpd.service - Vsftpd ftp daemon
   Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled)
   Active: failed (Result: exit-code) since Wed 2014-12-17 15:16:58 UTC; 18min a                                                              go

Dec 17 15:16:58 niche systemd[1]: vsftpd.service: control process exited, c...=2
Dec 17 15:16:58 niche systemd[1]: Failed to start Vsftpd ftp daemon.
Dec 17 15:16:58 niche systemd[1]: Unit vsftpd.service entered failed state.
Dec 17 15:17:25 niche systemd[1]: Stopped Vsftpd ftp daemon.
Dec 17 15:23:12 niche systemd[1]: Stopped Vsftpd ftp daemon.
Dec 17 15:26:11 niche systemd[1]: Stopped Vsftpd ftp daemon.
Dec 17 15:33:55 niche systemd[1]: Stopped Vsftpd ftp daemon.
Dec 17 15:34:11 niche systemd[1]: Stopped Vsftpd ftp daemon.
Hint: Some lines were ellipsized, use -l to show in full.
[root@niche vsftpd]# systemctl stop vsftpd
[root@niche vsftpd]# systemctl start vsftpd
Job for vsftpd.service failed. See 'systemctl status vsftpd.service' and 'journalctl -xn' for details.
[root@niche vsftpd]#

最后的解决办法,手动杀死 进程。ps auxf | grep vsftpd。

然后在重启 systemctl start vsftpd,又可以使用systemctl来控制vsftpd了,真的是有点出鬼?


2)禁用匿名用户,本来一开始就修改了vsftpd.conf,但是怎么都无法重启无法生效。现在手动杀死进程才可以。

3)锁定在根目录,禁止local用户跳出根目录。测试了很多次最后这一行才可以:


chroot_local_user=NO
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list

4)修改监听端口号:配置文件结尾加入新的端口号,listen_port=2001,然后重启!


5)允许chroot !仅仅对有读写权限的进行!

pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
listen_port=2001
pasv_min_port=2100
pasv_max_port=2199
allow_writeable_chroot=YES


1、设置被动模式打开的配置文件

#vim /etc/vsftpd/vsftpd.conf

添加或修改以下内容

connect_from_port_10021=YES     //这里的10021端口,你可以修改为你喜欢的 
pasv_min_port=8888           //设置被动模式的端口范围,最小端口号~最大端口号
pasv_max_port=8899            //我们设置的范围可以不用那么大,但数值最好大些(至少也大于1024)

  2、然后更改防火策略

#vim /etc/sysconfig/iptables

添加以下防火规则

-A INPUT -m state --state NEW -m tcp -p tcp --dport 10021 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8888:8899 -j ACCEPT



======================================================

2015-1-12 23:37:27补充


[root@unbox vsftpd]# diff vsftpd.conf vsftpd.conf.bak
12c12
< anonymous_enable=NO
---
> anonymous_enable=YES
29c29
< anon_upload_enable=NO
---
> #anon_upload_enable=YES
100,101c100,101
< chroot_local_user=NO
< chroot_list_enable=YES
---
> #chroot_local_user=YES
> #chroot_list_enable=YES
103c103
< chroot_list_file=/etc/vsftpd/chroot_list
---
> #chroot_list_file=/etc/vsftpd/chroot_list
114c114
< listen=YES
---
> listen=NO
123c123
< listen_ipv6=NO
---
> listen_ipv6=YES
128,131d127
< listen_port=2100
< pasv_min_port=8190
< pasv_max_port=8192
<
[root@unbox vsftpd]#


============================

2017-11-15 补充:

最新正确配置方法 http://blog.csdn.net/default7/article/details/78543808




猜你喜欢

转载自blog.csdn.net/default7/article/details/41992843