Accepting connections from the Internet

Normally, when CompleteFTP is initially installed, it can only accept connections from users who are within the local network. This is because (1) the computer on which CompleteFTP is installed is behind a router, so connections requests that are made from the Internet never reach it, and (2) the Windows Firewall may be blocking incoming connections. These are normally desirable as they protect your computer, but sometimes you may need to allow users outside of the local network to connect. Let's say a CompleteFTP server has been set up at your workplace and you want to access to it from anywhere via the internet to share files.

In order to do that, you may need to configure the router and the Windows firewall of the server's machine to allow external connections to your server. Here are the steps:

  1. Open the CompleteFTP Manager and connect to the server.
  2. Make sure the required protocols are enabled in both 'Settings'/'Sites' panel and 'Users' panel -> 'User Properties' of each user.
  3. Configure the 'Passive (PASV) transfer settings'. Skip this step if neither FTP nor FTPS are enabled.
    1. In 'Settings'/'Sites' panel, go to 'FTP/FTPS' -> 'Advanced FTP/FTPS Settings' -> 'Passive (PASV) Transfer Settings'.
    2. Limit the number of ports for passive mode FTP.
      The number of ports in the range should be of the same order of magnitude as the maximum total number of files that clients will be transferring at any one time. If that maximum is, say, 10, then a port-range of 20 would suffice, but since there are over 60,000 ports available we may as well make it 100. The port range should be chosen so that it doesn't clash with those used by other services on the computer. This can be checked in the 'TCP Port Usage' tab of the 'Monitoring' section (look in the 'Local Port' column).
    3. Click the 'Apply changes' button.
  4. Configure port forwarding on the router.

    If your CompleteFTP server is behind a router, you need to access to your router's configuration page and configure your router to forward the following ports to your CompleteFTP server.

    In addition, if FTP or FTPS are enabled then connections to all ports in the range chosen in step 3b) must also be forwarded to the server.

    The way to configure port forwarding on the router depends on the type of router installed, so you should consult your router's documentation for appropriate steps.

  5. Configure the Windows firewall on the server's machine.

    You need to create an inbound firewall rule to allow connections to the ports on which CompleteFTP server is listening (these ports are same as ports in step 4). And also, don't forget to set the passive (or PASV) port range in the firewall to permit users to connect in this range, in case FTP or FTPS are enabled.

    The steps to configure the firewall depend on the specific firewall being used. Refer to the documentation of the firewall for specific instructions.