Внешний доступ к домашнему FTP серверу?
0. Вам необходм "белый IP", то есть "не серый IP wiki". Проще говоря IP на WAN-порту модема не должен начинаться на 192.168; 10; 172.16..172.31
Большинство провайдеров предоставляет подобную услугу (автоматически или платно)
1. Вам нужно узнать - меняется ли этот адрес с течением времени (обычно - 1 раз в сутки или при переподключении). При платном "белом IP" обычно он постоянный
2. Необходимо закрепить за FTP-сервером внутренний IP в вашей сети за роутером. Либо через DHCP-привязку, либо через выдачу статики (в этом случае следите, чтобы статика не пересекалась с диапазоном DHCP)
3. Использовать одну из слежующих технологий
3.1 Вынести ваш FTP-сервер в DMZ (когда компьютер с FTP светится "всеми" портами наружу). Это опасно.
3.2 Использовать "умный FireWall", если таковой присутствует в вашем роутере
3.3 (рекоммендуемый вариант) Настрить в FTP-сервере диапазон портов входящих соединений для DATA-соединений и пробросить его на маршрутизаторе (обычно это называется PortForwarding \ VirtualServer)
* FTP использует 21 порт для "Control Channel" - канал управления. Для передачи данных FTP использует другие порты передачи данных (Data Channel), диапазон которых задается в настройках службы сервера FTP. Необходимо добиться, чтобы извне 21 и весь диапазон Data channel был "пробршен". Также возможно использования "пассивного режима FTP-сервера", то тогда это требование надо выполнять на клиенте.
проброс порта на модеме, при условии что провайдер выдает белый адрес, и dyndns если он динамический