How to configure Pure-FTPD on Ubuntu/Debian with Self Signed Certificate

Everything Linux, A.I, IT News, DataOps, Open Source and more delivered right to you.
"The best Linux newsletter on the web"

In this post, you will learn how to configure Pure-FTPD.

Pure-FTPD is a free FTP server which mainly focuses on security. It can be setup really easily within five minutes and it does not take much time or effort to setup. Pure-FTPD offers many features like limiting simultaneous users, Limiting bandwidth on each user to avoid saturation of the network speed, hiding files through permissions and moderating new uploads and content. In this tutorial we will see how to easily configure Pure-FTPD server with Self Signed Certificate

File Transfer Protocol (FTP) is a way to receive or transfer data from one server to another. It is a standard communication protocol that enables the transfer or receiving of data over network. For in our case, We can use SFTP protocol for linux servers to transfer files, but if we have to create a FTP server we can use Pure-FTPD

configure Pure-FTPD on Debian / Ubuntu

Step 1 : Updating the Server

First step will be to update your server to look for any new packages, updates, security releases.

apt-get update -y
apt-get upgrade -y

Step 2 : Installing PureFTPD

PureFTPD is available in the official ubuntu or debian repository we do not need any additional repository to install it
run the following command to install PureFTPD

apt-get install pure-ftpd openssl
configure Pure-FTPD
configure Pure-FTPD

– Enable the server on boot and start the server

systemctl enable pure-ftpd
systemctl start pure-ftpd

– Check the status using the following command

systemctl status pure-ftpd

Step 3 : Create an additional FTP User

Our Pure-FTPD server is running fully fine, now we have to create an additional user for FTP run the following commands

adduser ftpd

Step 4 : Configure Self Signed Certificate

PureFTPD is installed and also the user is also configured for the FTP server, now we can create a self-signed SSL/TLS certificate, run the following command to generate it

openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem -days 365

— You will get a prompt like this, You will be prompted to enter some details like Country Code, State, etc. You can leave it blank or you may put it according to your own self

Next step will be to configure and force PureFTPD to communicate over TLS protocol, We have generated our private key file and cert file. Run the following command

echo “2” > /etc/pure-ftpd/conf/TLS

— Restart PureFTPD server

systemctl restart pure-ftpd

Open your preferred FTP Client and connect your server using the credentials you have generated while creating a user, and confirm whether your Self-Signed Certificate is working and your PureFTPD server is running over SSL/TLS Protocol

Conclusion :

You have configured a PureFTPD server on your machine and configured to work over SSL/TLS protocol!

Everything Linux, A.I, IT News, DataOps, Open Source and more delivered right to you.
"The best Linux newsletter on the web"
I'm a freelancer and a semi-professional VALORANT Player from Pakistan, Expert in Network & System Administration & WordPress Developing.


Please enter your comment!
Please enter your name here

Latest articles

Join us on Facebook