I have a strange problema with a fresh install of ProFTPD on Ubuntu 20 LTS.
I noticed that after changing some option on the configuration files, when I run services proftpd restart
the modifications does not apply, only if I restart the system the changes will make effects.
So I try to sop the service with services proftpd stop
but I can keep connecting with the ftp client. So there is something weird here. Can you help me on what to verify?
some output
root@b205d:~# which proftpd
/usr/sbin/proftpd
root@b205d:~# whereis proftpd
proftpd: /usr/sbin/proftpd /usr/lib/proftpd /etc/proftpd /usr/share/proftpd /usr/share/man/man8/proftpd.8.gz
Check the output of
systemctl status proftpd.service
. You should see the tree of running processes with PID specification.Then check tht output of
ss -tlnp sport == :21
. You will see the listening sockets for ftp control connections and the processes with pids, those own these sockets.Compare the PIDs from two commands above.
Check the output of
systemctl cat proftpd.service
. Maybe some environment variables have been read. (Environment
statements of[Service]
section). Also check theType
statement inside[Service]
. The wrong value maybe cause strange effects.Try to reload/restart the proftpd (
systemctl reload proftpd.service
andsystemctl restart proftpd.service
). Check the output ofjournalctl -u proftpd.service
.Try to stop the proftpd service and run it manually with same command line, that was been displayed in the status output. Try to change the config and send the reload signal to the service.
If nothing above didn't help, run the proftpd under strace and dive into the internals.
As of Ubuntu 16 most services are controlled via systemd. You can manipulate systemd services via systemctl commands.
To restart proftpd on Ubuntu 20 you'll need to use these commands:
systemctl restart proftpd.service
Then see if it is running:
systemctl status proftpd.service