1.安装vsftpd
查看是否安装vsftpd(执行以下命令,显示有结果也就安装成功了!)
[root@afcdb 0]# rpm -q vsftpd
vsftpd-3.0.2-22.el7.x86_64
[root@afcdb 0]#
如果没有则安装vsftpd
[root@afcdb 0]# yum install -y vsftpd
安装完成后,再检查一遍
[root@afcdb 0]# whereis vsftpd
vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
[root@afcdb 0]#
查看vsftpd服务的状态,active (running)则为激活状态
[root@afcdb 0]# systemctl status vsftpd.service
● vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; enabled; vendor preset: disabled)
Active: active (running) since 一 2021-06-07 14:43:25 CST; 37min ago
Process: 4809 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS)
Main PID: 4810 (vsftpd)
CGroup: /system.slice/vsftpd.service
└─4810 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
6月 07 14:43:25 afcdb systemd[1]: Starting Vsftpd ftp daemon...
6月 07 14:43:25 afcdb systemd[1]: Started Vsftpd ftp daemon.
[root@afcdb 0]#
设置vsftpd服务开机自启动
[root@afcdb 0]# systemctl enable vsftpd.service
2.配置vsftpd.conf
备份vsftpd.conf文件
[root@afcdb vsftpd]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
[root@afcdb vsftpd]# ll
总用量 36
-rw-------. 1 root root 290 6月 7 14:43 chroot_list
-rw-------. 1 root root 125 8月 3 2017 ftpusers
-rw-------. 1 root root 361 6月 7 14:38 user_list
-rw-r--r--. 1 root root 12 3月 9 2017 vftpuser.txt
-rw-------. 1 root root 5121 6月 7 14:40 vsftpd.conf
-rw-------. 1 root root 5030 3月 9 2017 vsftpd.conf.bak
-rwxr--r--. 1 root root 338 8月 3 2017 vsftpd_conf_migrate.sh
vi命令编辑vsftpd.conf文件,如下进行配置修改(默认不需要修改,连接FTP服务器报530错误,在进行修改)
[root@afcdb vsftpd]# grep -v "^#" /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_umask=022
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
ftpd_banner=Welcome to blah FTP service.
chroot_local_user=YES
chroot_list_enable=YES
listen=NO
listen_ipv6=YES
allow_writeable_chroot=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
[root@afcdb vsftpd]#
3.增加用户ftpuser并分配密码,指向目录/home/beyond,禁止登录SSH权限
[root@afcdb vsftpd]# useradd -d /home/beyond -g ftp -s /sbin/nologin ftpuser
[root@afcdb home]# passwd ftpuser
[root@afcdb vsftpd]# cat /etc/passwd
ftpuser:x:1000:50::/home/beyond:/sbin/nologin
[root@afcdb vsftpd]# cd /home/
[root@afcdb home]# ll
总用量 8
drwxr-xr-x. 5 ftpuser ftp 94 6月 7 14:46 beyond
drwxr-xr-x. 5 root root 4096 8月 7 2020 java
drwxr-xr-x. 4 root root 44 4月 3 2020 jfinal
drwxr-xr-x. 6 root root 87 10月 16 2019 jfinal_bak
drwxr-xr-x. 3 root root 24 5月 16 2020 logs
drwxr-xr-x. 6 mysql mysql 4096 12月 6 2017 mysql
[root@afcdb home]#
4.新建chroot_list文件,添加登录FTP服务器的用户
[root@afcdb vsftpd]# cat chroot_list
ftpuser
[root@afcdb vsftpd]#
5.文件权限配置
[root@afcdb beyond]# chmod 755 /home/beyond
6.重启vsftpd服务
[root@afcdb 0]# systemctl restart vsftpd.service
7.禁用SElinux(连接FTP服务器,如果报500 OOPS错误,则需要禁用SElinux)
[root@afcdb beyond]# setenforce 0 (临时禁用,下边是永久禁用)
[root@afcdb beyond]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config