web-dev-qa-db-ja.com

Windows 2008 R2でファイアウォールがFTPサーバーをブロックしている

ローカルマシンから問題なくFTPサイトにアクセスできますが、リモートマシンからタイムアウトします。

ファイアウォールを完全にオフにすると、機能します。明らかに、これは本当に満足のいく解決策ではありません。

私は これらのステップ をたどろうとしましたが、今は役に立ちます。

私のリモートマシンでは、FTPクライアントとしてFilezillaを使用しています。以下は、サイトにアクセスしようとしたときに表示される出力です。ご覧のように、接続と認証はなんとか成功していますが、ディレクトリを一覧表示する試みはタイムアウトします。

次にどこを見ればいいのか誰か教えてもらえますか?

Status: Connecting to 192.168.15.12:21...
Status: Connection established, waiting for welcome message...
Response:   220 Microsoft FTP Service
Command:    USER CMSDEVELOPMENT\CMSdev
Response:   331 Password required for CMSDEVELOPMENT\CMSdev.
Command:    PASS ******
Response:   230-Directory has 71,805,415,424 bytes of disk space available.
Response:   230 User logged in.
Command:    OPTS UTF8 ON
Response:   200 OPTS UTF8 command successful - UTF8 encoding now ON.
Status: Connected
Status: Retrieving directory listing...
Command:    PWD
Response:   257 "/" is current directory.
Command:    TYPE I
Response:   200 Type set to I.
Command:    PASV
Response:   227 Entering Passive Mode (192,168,15,12,192,160).
Command:    LIST
Response:   150 Opening BINARY mode data connection.
Error:  Connection timed out
Error:  Failed to retrieve directory listing

ファイアウォールログを見ると、次のエントリが見つかります。

2012-04-23 14:44:54 DROP TCP 192.168.15.90 192.168.15.12 55743 49342 52 S 650301735 0 65535 - - - RECEIVE
2012-04-23 14:44:57 DROP TCP 192.168.15.90 192.168.15.12 55743 49342 52 S 650301735 0 65535 - - - RECEIVE
2012-04-23 14:45:03 DROP TCP 192.168.15.90 192.168.15.12 55743 49342 48 S 650301735 0 65535 - - - RECEIVE
10
Andrew Shepherd

ようやく動作しましたが、次のことを学びました。

  • IISでは、FTPサーバーがパッシブモードで使用するポートを構成できます。しかし、私にとっては、「Microsoft FTP Service」という名前のサービスを再起動するまで、これは有効になりませんでした

  • インバウンドファイアウォールルールを見ると、3つの構成済みルールが見つかりました。

    • FTPサーバー(FTPトラフィックイン)
    • FTPサーバーパッシブ(FTPパッシブトラフィックイン)
    • FTPサーバーセキュア(FTP SSLトラフィックイン)

これらのルールは、私が必要としているもののように見えました。しかし、何らかの理由で、彼らは実際には何もしませんでした。まったく同じものを指定するOWNルールを作成したところ、うまくいきました。 (どうやら、私はこの問題に遭遇する最初ではありません。 この投稿 を参照してください。)


後で編集する:以下のコメントを読んで、これらのルールが機能していないことを誤解しているようです。あなたはそれらを有効にしてMicrosoft FTP Serviceを再起動するだけです
25
Andrew Shepherd

Server 2012の新規インストールでも同じ問題がありますが、機能させるにはWindows FireWallサービスを再起動する必要がありました。

3
profector

ステートフルFTPフィルタリングの無効化を無効にしてみてください。

netsh advfirewallがグローバルなStatefulFTPを無効に設定

後でFTPサービスを必ず再起動してください

(参照: http://blog.nenoloje.com/2013/01/ftp-service-for-iis-client-connection.html

1
Neno

新しいファイアウォールルールを作成します。プログラムオプションを選択します。このプログラムパスを選択します。 %systemroot%\ system32\svchost.exeをパスに貼り付けます。警告メッセージを受け入れます。すべての接続を許可し、名前を付けます。ファイアウォールをオフ/オンにします。できました。

1
John