Atlantic.Net Blog

How to Install FTP Server with ProFTPD on RockyLinux 8

ProFTPd is a free and open-source FTP application used to transfer files over the network. It is simple, easy to install, and highly configurable. ProFTPd is used by many users due to its security policies that make it perfect for web hosting environments. Compared to other FTP applications, ProFTPd focuses on speed, security, and simplicity.

In this post, we will show you how to install a ProFTPD FTP server on Rocky Linux 8.

Prerequisites

  • A server running RockyLinux 8 on the Atlantic.Net Cloud Platform
  • A root password configured on your server

Step 1 – Create Atlantic.Net Cloud Server

First, log in to your Atlantic.Net Cloud Server. Create a new server, choosing Rocky Linux 8 as the operating system with at least 2GB RAM. Connect to your Cloud Server via SSH and log in using the credentials highlighted at the top of the page.

Once you are logged in to your server, run the following command to update your base system with the latest available packages.

dnf update -y

Step 2 – Install ProFTPD

By default, ProFTPD is not included in the Rocky Linux default repo, so you will need to install the EPEL repo on your system. You can install it using the following command:

dnf install epel-release -y

Once the EPEL repository is installed, run the following command to install the ProFTPD package:

dnf install proftpd -y

After the installation, start the ProFTPD service and enable it to start at system reboot:

systemctl start proftpd
systemctl enable proftpd

You can verify the status of ProFTPD using the following command:

systemctl status proftpd

You will get the following output:

● proftpd.service - ProFTPD FTP Server
   Loaded: loaded (/usr/lib/systemd/system/proftpd.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2021-11-08 10:27:37 UTC; 5s ago
  Process: 73449 ExecStartPre=/usr/sbin/proftpd --configtest (code=exited, status=0/SUCCESS)
 Main PID: 73450 (proftpd)
    Tasks: 1 (limit: 11411)
   Memory: 29.8M
   CGroup: /system.slice/proftpd.service
           └─73450 proftpd: (accepting connections)

Nov 08 10:27:37 rockylinux systemd[1]: Starting ProFTPD FTP Server...
Nov 08 10:27:37 rockylinux proftpd[73449]: Checking syntax of configuration file
Nov 08 10:27:37 rockylinux proftpd[73449]: daemon[73449]: processing configuration directory '/etc/proftpd/conf.d'
Nov 08 10:27:37 rockylinux systemd[1]: Started ProFTPD FTP Server.
Nov 08 10:27:37 rockylinux proftpd[73450]: daemon[73450]: processing configuration directory '/etc/proftpd/conf.d'
Nov 08 10:27:37 rockylinux proftpd[73450]: daemon[73450] proftpd-ip: ProFTPD 1.3.6e (maint) (built Tue Sep 7 2021 10:22:00 UTC) standalone >

You can verify the ProFTPD version using the following command:

proftpd -v

You will get the following output:

ProFTPD Version 1.3.6e

Step 3 – Create an FTP User

Next, you will need to create a user for FTP. You can create a new user named user1 with the following command:

useradd user1

Next, set a password for user1 using the command below:

passwd user1

Set the password as shown below:

Changing password for user user1.
New password: 
Retype new password: 
passwd: all authentication tokens updated successfully.

Next, log in to user1 with the following command:

su - user1

Next, create some files and directories using the following command:

touch cat dog 
mkdir jan feb march

Next, exit from user1 with the following command:

exit

Step 4 – Access ProFTPD Server

There are two ways to access the FTP server: using the command-line, or via the FTP client.

Access FTP Via Command Line

On the remote machine, open the command-line interface and run the following command to connect to the ProFTPD server.

ftp proftpd-ip

You will be asked to provide your FTP username and password:

Connected to proftpd-ip.
220 FTP Server ready.
Name (proftpd-ip:vyom): user1
331 Password required for user1
Password:

Once you are connected, you should get the following output:

230 User user1 logged in
Remote system type is UNIX.
Using binary mode to transfer files.

Now, run the following command to list all files and directories on the FTP server:

ftp> ls

You will get the following output:

200 PORT command successful
150 Opening ASCII mode data connection for file list
-rw-rw-r--   1 user1    user1           0 Nov  8 10:31 cat
-rw-rw-r--   1 user1    user1           0 Nov  8 10:31 dog
drwxrwxr-x   2 user1    user1           6 Nov  8 10:31 feb
drwxrwxr-x   2 user1    user1           6 Nov  8 10:31 jan
drwxrwxr-x   2 user1    user1           6 Nov  8 10:31 march
226 Transfer complete

Access FTP via FTP Client

Open the FileZilla FTP client as shown below:
Filezilla interface
Click on the Site manager to create a new FTP connection:
Filezilla Site Manager
Provide your FTP server IP, username, and password, and click on the connect button. Once you are connected, you should see the following screen:
Filezilla Connection Established

Conclusion

In the above guide, we explained how to install the ProFTPD FTP server on Rocky Linux 8. We also explained how to access FTP via command-line and FTP client. You can now set up an FTP server on your website to download and upload website pages – try it on VPS hosting from Atlantic.Net!

Get started with 12 months of free cloud VPS hosting

Free Tier includes:
G3.2GB Cloud VPS Server Free to Use for One Year
50 GB of Block Storage Free to Use for One Year
50 GB of Snapshots Free to Use for One Year