ProFTPd — FTP-server for Linux and UNIX-like operating systems.
The installation command in Ubuntu:
sudo apt install proftpd
During installation, you will need to select the launch mode:
(standalone – independently, that is, it will be automatically loaded at system startup or inetd – manually)
After that, the FTP server can already be connected using the system user’s logins and passwords.
By default, users can go higher than their home directory, that is, they can access the system files.
For more detailed settings, open the ProFTPd configuration file in any text editor:
sudo nano /etc/proftpd/proftpd.conf
Specify the name of the server:
ServerName "Debian"
We prohibit users to walk higher than their home directory (if you specify a specific directory and put other user’s directories in it, they will be able to see the files of other users):
DefaultRoot ~
The server port, given the large number of bot scanners on the Internet, it’s better to change to an arbitrary one:
Port 21
We forbid you to connect to the server as root:
RootLogin off
Permit to continue uploading files:
AllowStoreRestart on
After editing the configuration file, we will check it for correctness:
sudo proftpd -t
Restart ProFTPd to apply the new settings:
sudo /etc/init.d/proftpd restart
You can see the version of ProFTPd like this:
proftpd -v
Logs are stored in the /var/log/proftpd/ directory.
When installed, the /srv/ftp/ directory is automatically created, which can be used to locate user directories.
If something does not work, then you can stop and start ProFTPd in debug mode, after which all the detailed information about the work will be displayed on the screen (you can exit this mode with the CTRL+C keys):
sudo /etc/init.d/proftpd stop
sudo proftpd -nd6
Extended logs can be activated, for example:
nano /etc/proftpd/proftpd.conf
ExtendedLog /var/log/proftpd/extendedlog.log
LogFormat custom "%a %h %l %u %t \"%r\" %s"
See also my articles:
Configuring FTPS (TLS)
IPTables rules for FTP server
Configuring ProFTPd with virtual users in a file
Active and passive FTP mode
Installing and Configuring Pure-FTPd in Ubuntu