web-dev-qa-db-ja.com

vsftpd-データ接続を確立できませんでした:EHOSTUNREACH-ホストへのルートがありません

CentOS 6.4でvsftpd v3.0.2を実行しているVPSがあります。 FTPサーバーに接続しようとすると、次のエラーが表示されます。

The data connection could not be established: EHOSTUNREACH - No route to Host

接続の試みのコンソール:

Status: Connecting to xxx.xxx.xxx.xxx:21...
Status: Connection established, waiting for welcome message...
Response:   220 snapd.server01 FTP Server
Command:    AUTH TLS
Response:   234 Proceed with negotiation.
Status: Initializing TLS...
Status: Verifying certificate...
Command:    USER web01
Status: TLS/SSL connection established.
Response:   331 Please specify the password.
Command:    PASS *********
Response:   230 Login successful.
Command:    OPTS UTF8 ON
Response:   200 Always in UTF8 mode.
Command:    PBSZ 0
Response:   200 PBSZ set to 0.
Command:    PROT P
Response:   200 PROT now Private.
Status: Connected
Status: Retrieving directory listing...
Command:    PWD
Response:   257 "/"
Command:    TYPE I
Response:   200 Switching to Binary mode.
Command:    PASV
Response:   227 Entering Passive Mode (xxx,xxx,xxx,xxx,85,175).
Command:    LIST
Error:  The data connection could not be established: EHOSTUNREACH - No route to Host

5000-5100を含むすべての必要なポートを転送しました。私もSElinuxを無効にしてみました-うまくいきませんでした。ユーザーweb01のホームディレクトリが/var/wwwに設定されました。

私はインターネットを調査しました。 vsftpd.confにスペースがあるとエラーが発生するが、そうではないという人もいます。

4
Karl Viiburg

active/passiveモードの問題のようです。 Passiveモードを使用しているようです。

Activeモードを試してみます。

本当にPassiveモードが必要な場合は、必要なポート(from TCP/1024 to TCP/65534)をすべて開いていないのではないかと思います。

pasv_min_portpasv_max_portおよびvsftpd.confディレクティブを使用して、パッシブモードのポート範囲を制限できることに注意してください。

3
krisFR