ハマっている「お菓子」を教えて!

FreeNASでファイルサーバーを立ち上げFTPサービスをONにしてDDNSに登録しルーターのFTPのポートも開けFreeNASに行くようにNAT変換の設定もしましたが外出先から接続できません。
同一ネットワーク内ならば接続できます。
外出先からは接続、パスワード認証のあとListの参照で参照できませんとなってしまいます。
設定方法をおしえてください。

A 回答 (2件)

FTPは制御用のコネクションと転送用のコネクションを別々に張る為、制御用のポートであるFTPサーバの21番ポートを開ける(=クライアントからFTPサーバの21番ポートへの通信を許可する)だけでは通信できません。


(まさに遭遇されているような、ログインは出来るが、転送できない状態になります。)

FTPでのファイル転送不可の不具合のほとんどはFirewallが原因で、クライアントのみがFirewall内にある場合は、転送モードをACTIVEからPASSIVEに変えれば通信可能となるのですが、FTPサーバがFirewall内(NAT内)にある場合はほとんどの場合、通信は上手くいきません。

詳しくは下記のページに纏めてあるので、ご確認頂ければと思いますが、FTPサーバとのファイル転送を成功させるには、

(1) ACTIVEモードにおいて、FTPサーバからクライアント側への、ソースポートが20番の通信を許可する。

(2) PASSIVEモードにおいて、FTPサーバが指定する宛先ポートへ、クライアント側からFTPサーバへの接続を許可する。

のどちらかが必要になります。

上記(1)は、クライアント側のFirewallに穴を開ける必要がありあまりお勧めできませんし、上記(2)は、ほとんどのFTPサーバがランダムな宛先ポートを指定してくるため、そのポート帯域全体に穴を開けると、こちらもサーバー側のセキュリティホールになってしまいます。

どうしてもFTPでファイル転送がしたい場合には、上記のどちらかをご検討ください。


しかしながら、昨今はGumblerのような、FTPのパスワード(ほとんどの場合、平文でやり取りされます)をsniffして悪さする輩もいますので、個人的にはSSH/SFTPを利用することをお勧めします。

当方、FreeNASを使ったことはありませんが、ベースとなっているFreeBSDではかなり昔からSSH/SFTPサーバ機能がベースシステムに組み込まれていますし、クライアント側がWindowsならば、WinSCPを利用すればFTPと同じようなファイル転送を出来る環境が作れます。

ご検討ください。

参考URL:http://www.kishiro.com/FreeBSD/anonymous_ftp.html
    • good
    • 0
この回答へのお礼

ありがとうございます。
確かにFirewallに穴を開けるのはセキュリティー的にまずいのでお勧めいただいたSFTP,WinSCPあたりを検討してみます。
大変参考になりました。
またなにかあればお願いします。

お礼日時:2010/03/30 08:42

まずはログをみてエラーになっているか確認するのが先決では?

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報