Setup FTP with Webmin on Debian

Installing FTP support with webmin is a little more involved but here's how to do it based on a new VPS configuration.

  1. Login to your VPS via SSH
  2. Run: apt-get install proftpd
  3. Run: echo "/bin/false" >> /etc/shells
  4. Logout

Now that we have the software installed and the shell configured, it's time to go to add support to webmin to control it:

  1. Login to webmin (https://YOURVPSIP:10000)
  2. Access the Webmin Modules option via Webmin > Webmin Configuration
  3. Select Standard module from www.webmin.com
  4. Click the button on the right of that option
  5. Choose: proftpd
  6. Click Install Module
  7. On the left sidebar, after installation, click Refresh Modules
  8. Click Create a new user accessed via System > Users and Groups
  9. Provide a username for what is to be your FTP account (ex. siteftp)
  10. Select the Shell: /bin/false
  11. Select Normal Password and provide a unique, complex password for the account
  12. Select New Group with same name as user
  13. Click Create

You have now created your user that will be used to access their own files and directories and nothing more.

Notes:

  • Do not use the FTP account for much else, do not grant it ROOT privileges and consider avoiding using SSH for it altogether
  • This is designed for a single site setup, you can expand on this but that is beyond the scope of this tutorial, the concepts are the same however.