227 Entering Passive Mode (10,3,98,75,127,233)
Означает, что сервер ожидает входящего соединения с портом 32745 10.3.98.75. Конечно, это потому, что сервер NATed и (сервер ftp) не знает об этом.
Вам все еще нужно сделать две (из 3) вещи:
- установите FTP-сервер так, чтобы он «публиковал» известный общедоступный IP-адрес вместо своего частного IP-адреса. Вот как это делается из документации по чисто ftpd :
- '-P <ip address or host name>': Force the specified IP address in reply to a PASV/EPSV/SPSV command. If the server is behind a masquerading (NAT) box that doesn't properly handle stateful FTP masquerading, put the ip address of that box here. If you have a dynamic IP addBindress, you can put the public host name of your gateway, that will be resolved every time a new client will connect.
Конфигурация оболочки Debian (?) Для него выглядит так: ForcePassiveIP <ip address or host name>
- установите для него использование только определенного диапазона портов (уже сделано, вы выбрали 30000: 50000). Диапазон, который не перекрывает динамический диапазон портов, как видно на
/proc/sys/net/ipv4/ip_local_port_range
рисунке, должен быть выбран для повышения безопасности. - Измените настройки брандмауэра / nat Scaleway, чтобы разрешить переадресацию портов для диапазона портов TCP на предыдущем шаге (здесь может иметь значение безопасность, о которой я упоминал выше). Извините, я не знаю, где найти конкретную документацию по этому поводу. Я даже не понял, какие конфигурации сети доступны на Scaleway. Если у хозяина есть на самом деле два IP - адреса, один из них 10.3.98.75, другой общественности, то вместо того, чтобы использовать
ForcePassiveIP
, тоBind
вариант (=>-S
) будет достаточно.