Installing and running ProFTPD

A fork of the following thread describing problems setting up vsftpd, since the author said he wants to give up running vsftpd and now wants to run proftpd…

https://forums.opensuse.org/showthread.php/521839-vsftpd-refusing-to-run-with-writable-root-inside-chroot()-fix-not-working

This new install.
Installed on the same 42.2 machine used for testing as in the above thread.
Used YAST FTP Server module to stop vsftpd (it’s still installed on the same machine).
Fully updated

zypper up

Installed ProFTPd with the following command

zypper in proftpd proftpd-doc

Result:
There is a bug that has to be overcome.
Because ProFTPd doesn’t automatically understand “all addresses” the default proftpd.conf is insufficient.
So,

  • Do not attempt to start proftpd using systemd
  • Do not configure proftpd to start on boot (enable)
  • Any attempt to start ProFTPd using systemd may result in a suggestion to run chkconfig, but although it will run and do something the problem is not fixed.

To start ProFTPd successfully,
You will need to invoke it manually, specifying the IPv4 address to be used (-S) and recommend the option to send all events to stdout (-n) as follows

proftpd -S xxx.yyy.zzz.uuu -n

Sometime now or earlier, you should inspect the proftpd config file, eg

less /etc/proftpd/proftpd.conf

Some important highlights in the config file…

  • Support only for IPv4, no support for IPv6 (as described in the command I gave above)
  • chroots turned off. If turned on, then System User accounts are used for authentication and home directories become the chroot FTP directory for each User.
  • Anonymous is enabled and configured with the specified parameters. Note that by default “ftp” and “anonymous” are mapped to anonymous.

Based on the above,
I can now connect anonymously from another machine using the command

ftp://ftp@xxx.yyy.zzz.uuu

and if I execute a “ls” command the result is as follows

ftp> ls
229 Entering Extended Passive Mode (111409181)
150 Opening ASCII mode data connection for file list
226 Transfter complete
ftp>

So, successfully setup, running and connections working.