centos7 安装vsftpd的步骤

时间:2024-10-07 08:35:20

感觉非常坑,依照网上说的没一个都測试了,可一直都报错。

不断的又一次安装不下10次,最后一次最终測试出了正确的方法。

#官网配置说明##

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

##需求##

1)登录FTP 仅仅能看到当前用户的,不能跨越到主文件夹

2)禁止匿名用户登录FTP

3)改动FTP 监听port号!

##问题##

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)改动监听port号:配置文件结尾增加新的port号,listen_port=2001,然后重新启动!(by default.fu@foxmail.com)

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     //这里的10021port,你能够改动为你喜欢的 
pasv_min_port=8888           //设置被动模式的port范围。最小port号~最大port号
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补充

#by default.fu@foxmail.com
[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]#