proftpdがpassiveモードで指定したポートを使ってくれなかったので

結論は/etc/hosts に127.0.0.1とローカルへの対応を記述したから。

現象として、MasqueradeAddress で127.0.0.1で返されてしまう。

そしてなぜかその際のポートがPassivePortsで指定した以外のもので返されてしまう。

ローカルならポートの制限とか無いと判断されるのかもしれない??

DDNSを使っているため、MasqueradeAddressをドメインで指定していたのですが、FTP用のドメインを固定で指定することになりそうです。

hostsファイルを使ってのローカルからアクセスと使いまわせない状態になりました。

xinetdでポートによる振り分けをした方が良いのかもしれないです。


外部から接続のテストをするためにFreeWifiにつなぎながらSoftetherVPNを使って設定していたのがさらにめんどくさくなった原因だったかと。

先ずSoftetheを切った状態

FFFTPで「PASVで返されるアドレスを無視」チェックを付けた状態。

「ダウンロードのためにホスト 160.13.214.144 (160.13.214.144:7035) に接続しています.」

つまりグローバルIPでかつ指定のポートで接続しようとしてくれているわけです。

FFFTPで「PASVで返されるアドレスを無視」チェックを外した状態。

「ダウンロードのためにホスト 127.0.0.1 (127.0.0.1:42300) に接続しています.」

つまりサーバーが返したアドレスが127.0.0.1になっている。

よってhostsが原因かと思われたわけです。

hostsの指定行をコメントアウト。

後softether切断

「ダウンロードのためにホスト 127.0.0.1 (127.0.0.1:7031) に接続しています.」

proftpd再起動しないとダメ見たいでした。

「ダウンロードのためにホスト 160.13.214.144 (160.13.214.144:7032) に接続しています.」

勿論Softether切断の状態で繋がっています。

外部のFTPテストサイトでも試しています。
https://ja.infobyip.com/ftptest.php

Use SSL、Passive両方ともONにした状態でせつぞくできました。

同時接続は6にしています。もちろんポートもその分使って、ルーターの設定も完了した状態です。