How to install VSFTPD on Centos 8

Very Secure FTP Daemon (VSFTPD) is an FTP daemon that establishes a secure connection to FTP Server by creating a secure tunnel that encrypts data flow to and from FTP Server.It has been available for many years now. This protects files being uploaded or downloaded from hackers thus enforcing end-to-end encryption between the user and FTP Server.

Installing VSFTPD

To enable FTP on your VPS, you will first need to install the VSFTPD package with the following command.

dnf install vsftpd -y

Output:

[root@my ~]# dnf install vsftpd -y
CentOS-8 - AppStream                             11 MB/s | 6.3 MB     00:00
CentOS-8 - Base                                 2.4 MB/s | 7.9 MB     00:03
CentOS-8 - Extras                               692  B/s | 2.1 kB     00:03
Dependencies resolved.
================================================================================
 Package         Arch            Version               Repository          Size
================================================================================
Installing:
vsftpd          x86_64          3.0.3-28.el8          AppStream          180 k

Once the installation is complete, We start the vsftpd service and enable it to start automatically at system boot.

systemctl start vsftpd
systemctl enable vsftpd

Output:

[root@my ~]# systemctl start vsftpd
[root@my ~]# systemctl enable vsftpd
Created symlink /etc/systemd/system/multi-user.target.wants/vsftpd.service → /usr/lib/systemd/system/vsftpd.service.
[root@my ~]#

Next, We open the FTP port on the system firewall to allow access to the FTP service from external systems.

firewall-cmd --add-service=ftp --permanent --zone=public

firewall-cmd --reload

Output:

[root@my ~]# firewall-cmd --add-service=ftp --permanent --zone=public
success
[root@my ~]# firewall-cmd --reload
success
[root@my ~]#

Creating an FTP user

Creating an FTP user and create a password for that user.

First, We add the user,

useradd  user2

Next, we setup a password for the user,

passwd user2

Output:

[root@my ~]# useradd user2
[root@my ~]# passwd user2
Changing password for user user2.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[root@my ~]#

Testing the FTP connection

Finally test FTP connection using FileZilla Client software.

Use your server hostname OR IP

Your FTP username

Your FTP Password

image