2024/09/15時点で元記事となっている前回の記事の再検証を行いますので、それまでこちらの記事の内容は保留とします。
2024/09/15
再度検証しました。
検証のためにWindows Firewallの受信側でftp.exeを許可にしていたので通信できていました。
結局このWindows Firewallの受信側設定をデフォルトに戻す、つまりftp.exeの許可を削除したら通信ができなくなりました。
前回の記事の続きです。
前回の記事ではFTPクライアントがWindows Server 2022 Datacenter Editionでしたので、これより前のftp.exeでも試してみます。
Windows Server 2019
はい。
アクセスできていますね。
サーバ側がPassiveモードで接続のみにしているので、接続できている時点でPassiveモードです。
Windows Server 2016
Windows Server 2012R2
Windows Server 2008R2
Windows Server 2003R2
Windows 2000
はい。
まさかのWindows 2000でもアクセスできました。
結論、結局Windows OSネイティブのftp.exeがPassiveモードに対応していないという情報は何だったのか?
恐らくですがWindows Firewall(現在のWindows Defender Firewall)の許可設定ミスだったのではないかな?というのが個人の見解です。
ルーターやFirewallなどのネットワーク機器をFTPクライアントとFTPサーバ間で挟んでいる環境だと、それぞれのネットワーク機器の設定に依存するので複雑になりますが、今回FTPサーバとFTPクライアントを同じセグメントに配置しているので最も簡易なネットワークです。
単純にftp.exeがFTPクライアントとしてPassiveモードに対応していない、ということはどうも誤りのようです。
もちろん私の検証が不十分であったり、解釈が誤っていたりすることも考えられますので、何か疑問に思った方は是非コメントいただけると幸いです。
Windows Firewallの受信側規則で許可設定を入れていたためPassiveモードで接続できていました。
結論、Windows OSのftp.exeはPassiveモードに対応していません!
Windows Client OSもあるので、そちらも気が向いたら実施してみます。
本日はここまで。