Updated: 28 September 2026 · Applies to: Ubuntu 24.04, Debian 12, AlmaLinux 9 and Rocky Linux 9

CentOS 7 is end of life, and Pure-FTPd no longer needs to be compiled: it is packaged for Ubuntu 24.04, Debian 12, AlmaLinux 9 and Rocky Linux 9 (EPEL on AlmaLinux/Rocky).

Install

dnf install epel-release && dnf install pure-ftpd     # AlmaLinux / Rocky
apt install pure-ftpd                                 # Ubuntu / Debian
systemctl enable --now pure-ftpd

Virtual FTP users

Virtual users log in with their own FTP password and are mapped to a system user:

useradd -r -d /srv/ftp -s /sbin/nologin ftpuser
mkdir -p /srv/ftp/alice && chown -R ftpuser: /srv/ftp
pure-pw useradd alice -u ftpuser -d /srv/ftp/alice
pure-pw mkdb

On Ubuntu/Debian enable the database once: ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure and restart. On AlmaLinux/Rocky uncomment PureDB /etc/pure-ftpd/pureftpd.pdb in /etc/pure-ftpd/pure-ftpd.conf.

Require TLS

Put a certificate (key and certificate in one file) at /etc/ssl/private/pure-ftpd.pem and set TLS 2 (echo 2 > /etc/pure-ftpd/conf/TLS on Ubuntu/Debian). Open port 21 and a passive range (PassivePortRange 30000 30100) in the firewall.

Note: Plain FTP sends passwords unencrypted. Prefer SFTP (see "How to Create SFTP User without Shell Access on Ubuntu 18.04 & 16.04?") when your users can use it.

Related services

KVM VPS hosting

NVMe SSD and full root access, with Free Basic Managed Support.

Unmanaged dedicated servers

full root access and free IPMI KVM, with Free Basic Managed Support.

Managed dedicated servers

our engineers look after the server for you, from $135 a month.

Was this answer helpful?

Still stuck? Open a ticket