Install FTP Server on CentOS 7

# yum update
$ sudo yum update

# install vsftpd
$ sudo yum install vsftpd

# start service and set it to launch when the system boots
$ sudo systemctl start vsftpd
$ sudo systemctl enable vsftpd

# create a rule for firewall
$ sudo firewall-cmd --zone=public --permanent --add-port=21/tcp
$ sudo firewall-cmd --zone=public --permanent --add-service=ftp
$ sudo firewall-cmd --reload

# set configuration
# first, create a copy of the default configuration file
sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.default

# edit the configuration file
$ sudo vim /etc/vsftpd/vsftpd.conf

# edit them to match the following
anonymouse_enable=NO   # disable anonymouse users
local_enable=YES       # allow local users.
write_enable=YES       # allow a logged-in user to upload files
chroot_local_user=YES  # limit FTP users to their own home directory

# restart service
$ sudo systemctl restart vsftpd