To speedup the process, I decided to use a graphical front end for ProFTPD, the GADMIN-PROFTPD.
Steps to configure the FTP Home Server :
1. Install Gadmin-proftpd.
2. Setup the NAT in Modem / Router
4. Start exchanging files.
1a. Download the package gadmin-proftpd for your distro here
1b. Install dpkg-i or rpm-i package (depending on your distro. Or if it’s already in the repos of your distro, even better)
The gadmin-proftpd installs Proftpd automatically.
2a. Access your modem / router and configure Advanced Port Forwarding Rules.
2b. You must set the rules for nat modem / router so the external FTP requests can reach the FTP server on the internal network.
2c. In the example below, I configured as external port of the FTP in 2121, because the ISPs block low ports (less than 1024).
2d. And, I made requests to the server data ports (65524-65534) to reach the FTP server. These data ports are set in the FTP server ProFTPD, in passive mode, and will be passed to the client.
2e. Note that the item described in red is the internal IP address where the FTP server will be.
- Inform the external IP of your modem / router (which is indicated in red external IP here)
- Mark configure NAT routing: ON
- Now comes the configuration of the range of ports for passive FTP. I put on 65524-65534
- Other options may be equal to the figure.
- Set to binary mode file transfer.
- Now, continue configuring proftpd.
- Default home directory might be / var / ftp / click_here
- Now, an important item: Download speed and upload speed. These two values are what will determine the speed of your downloads / uploads. I recommend leaving at 1 / 3 the value of the nominal bandwidth, to provide room for other traffic.
- Allow resume of broken downloads and uploads mark ON
- Now click the Users tab
- Add a user (or more than one if you want to exchange files with more than one friend at the same time)
- Please mark the shell as / bin / null, on the creation of the ftp user, so the user can not access the bin/bash shell, just FTP commands.
- Create a password for this FTP user .
- Check the permissions that the user will have: I Mark: list, upload, download, append, make dir. And do not let the user exit your FTP directory (no up dir)
- Pass the password to your friend
- Click Activate to start The service
- Click on the Transfers tab to monitor the FTP transfers.
The files that you are receiving and the files you are sending should be in / var / ftp / click_here
Remember that FTP transmissions are not encrypted. So logins passwords can be intercepted over the network. A good policy is to change users and passwords for each new FTP session, change the control port on the modem / router, and only enable the FTP service when you transfer your files (upload / download).