PureFTPd is a standard-conformant FTP server, free (BSD), secure, production-quality, and standard-conformant FTP server which doesn't provide useless bells and whistles but focuses on efficiency and ease of use. It provides simple answers to common needs, in addition to interesting valuable highlights for individual clients just as facilitating suppliers.
- Download
# wget https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.47.tar.bz2
# tar –xvjf pure-ftpd-1.0.47.tar.bz2
# cd ./ pure-ftpd-1.0.47.tar.bz2
- Compile installation with all options
#./configure --prefix=/usr/local/pure-ftpd/ --with-everything
# make
# make install
- Please update configuration information.
Change to installation path
# cd /usr/local/pure-ftpd/etc/
# vi pure-ftpd.conf
ChrootEveryone yes
Noanonymous yes
Unixauthentication no
PureDB /usr/local/pure-ftpd/etc/pureftpd.pdb
/* make sure to change the PureDB to the path where it is located in this installation */
- Please update environment variable
# export PATH=$PATH:/usr/local/pure-ftpd/bin
- Please create ftp user and ftp group
# groupadd ftpgroup
# useradd ftpuser –g ftpgroup –d /dev/null -s /sbin/nologin
- Please create virtual user:
Create user root dirctory:
# mkdir /var/www/site1 –p
Grant permission:
#chown ftpuser:ftpgroup /var/www/site1 –R
Create virtual user:
#pure-pw useradd user1 -u ftpuser -g ftpgroup -d /var/www/site1 –m
Create virtual user DB:
#pure-pw mkdb
Check and show user detailed information :
# pure-pw show user1
- Please open ports in firewall :
# firewall-cmd --add-port=21/tcp
# firewall-cmd --add-port=30000-50000/tcp
# firewall-cmd --list-ports
- Please start Pure-ftpd service:
# /usr/local/pure-ftpd/sbin/pure-ftpd -j -lpuredb:/usr/local/pure-ftpd/etc/pureftpd.pdb &