CentOS

1. install vsftpd.(PS:procedure 1-4 under the circumstance that the firewall is closed and the iptables is inactive)

1 # install vsftpd
2 sudo yum install vsftpd
3 # start vsftpd
4 sudo systemctl start vsftpd.service
5 # start automatic after rebooting

2.configurations about vsftpd.

 1 sudo vim /etc/vsftpd/vsftpd.conf
 2 
 3 ###The following key-values is specially listed####
 4 anonymous_enable=NO
 5 dirmessage_enable=YES
 6 local_umask=022
 7 xferlog_enable=YES
 8 ftpd_banner="welcome messages"
 9 data_connection_timeout=120
10 
11 # restart vsftpd service
12 sudo systemctl restart vsftpd.service

3.create ftp user

1 sudo useradd -s /sbin/nologin netlab
2 sudo passwd netlab
3 sudo chmod -R 777 /home/netlab

4.limit the user to the root directory

# revise the configuration of vsftpd
sudo vim /etc/vsftpd/vsftpd.conf

#####Special items###########
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
allow_writeable_chroot=YES


# create a file. Otherwise, it would be wrong.
sudo touch /etc/vsftpd/chroot_list

# restart the service
sudo systemctl restart vsftpd.service

5.about the firewall

open the port to allow the application to use the port.

e.g.,

-A INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT

原文地址:https://www.cnblogs.com/loadofleaf/p/5879107.html