1、安装vsftpd
首先查看你是否安装了vsftpd
[root@localhost ~]# rpm -q vsftpd
1
vsftpd-3.0.2-10.el7.x86_64 (显示也就安装成功了!)
如果没有则安装vsftpd
[root@localhost ~]# yum install -y vsftpd
1
安装完成后可以查看到安装的目录
[root@localhost ~]# whereis vsftpd
1
vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
查看vsftpd服务的状态
[root@localhost ~]# systemctl status vsftpd.service
1
● vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; enabled; vendor preset: disabled)
Active: active (running) since 三 2017-07-05 14:29:53 CST; 3s ago
Process: 3951 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS)
Main PID: 3953 (vsftpd)
CGroup: /system.slice/vsftpd.service
├─3953 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
├─3963 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
└─3964 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
7月 05 14:29:53 localhost.localdomain systemd[1]: Starting Vsftpd ftp daemon…
7月 05 14:29:53 localhost.localdomain systemd[1]: Started Vsftpd ftp daemon.
开启vsftpd服务
[root@localhost ~]# systemctl start vsftpd.service
1
设置vsftpd服务开机自启
[root@localhost ~]# systemctl enable vsftpd.service
(或者:[root@localhost ~]# chkconfig vsftpd on)
1
2
2、配置vsftpd.conf文件
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
3、添加FTP账户
这里设置的账户名为“test”,密码为“123456”
[root@localhost ~]# useradd test -s /sbin/nologin
[root@localhost ~]# passwd 123456
1
2
4、编辑user_list文件,允许test用户访问FTP
[root@localhost ~]# vi /etc/vsftpd/user_list
5、建根目录,并设置访问权限
[root@localhost ~]# mkdir /var/public_root
[root@localhost ~]# chown -R test /var/public_root
[root@localhost ~]# chmod -R 755 /var/public_root
6、防火墙设置
如果系统启用了防火墙和SELinux,那么还要做以下配置(默认情况下CentOS7是使用firewall和selinux的,不在使用iptables)
防火墙添加FTP服务
[root@localhost ~]# firewall-cmd –permanent –zone=public –add-service=ftp
[root@localhost ~]# firewall-cmd –reload
1
2
设置SELinux
[root@localhost ~]# getsebool -a | grep ftp
[root@localhost ~]# setsebool -P ftpd_full_access on
1
2
或者修改配置文件彻底关闭selinux,需要重启机器
[root@localhost ~]# vi /etc/selinux/config
This file controls the state of SELinux on the system.
SELINUX= can take one of these three values:
enforcing - SELinux security policy is enforced.
permissive - SELinux prints warnings instead of enforcing.
disabled - No SELinux policy is loaded.
SELINUX=disabled
SELINUXTYPE= can take one of three two values:
targeted - Targeted processes are protected,
minimum - Modification of targeted policy. Only selected processes are protected.
mls - Multi Level Security protection.
SELINUXTYPE=targeted
7、重启vsftpd服务器
[root@localhost ~]# systemctl stop vsftpd.service
[root@localhost ~]# systemctl start vsftpd.service
[root@localhost ~]# systemctl status vsftpd.service
1
2
3
卸载vsftpd的方法
如果配置出错需要卸载vsftpd,在卸载之前先停止vsftpd
[root@localhost ~]# rpm -aq vsftpd
1
vsftpd-3.0.2-21.el7.x86_64 (此处是查找vsftpd的返回结果)
用rpm -e 查找结果 进行删除就ok了
[root@localhost
无妨 2018/9/11 15:31:39
检查是否卸载了vsftpd,进行stop及start操作
[root@localhost ~]# systemctl stop vsftpd.service
1
vsftpd: unrecognized service #找不到vsftpd
[root@localhost ~]# systemctl start vsftpd.service
1
vsftpd: unrecognized service #找不到vsftpd检查是否卸载了vsftpd,进行stop及start操作
[root@localhost ~]# systemctl stop vsftpd.service
1
vsftpd: unrecognized service #找不到vsftpd
[root@localhost ~]# systemctl start vsftpd.service
1
vsftpd: unrecognized service #找不到vsftpd