web-dev-qa-db-ja.com

vsftpdのインストール-500 OOPS:リスニングIPv4ソケットをバインドできませんでしたか?

マシンにFTPサーバーをセットアップする必要があります。次のコマンドを使用してvsftpdをインストールしました:

Sudo apt-get install vsftpd

次に、構成ファイルを編集しましたvsftpd.conf場所/etc。ファイルには以下が含まれます:

#Set the server to run in standalone mode
listen=YES

#Enable anonymous access
local_enable=NO
anonymous_enable=YES

#Disable write access
write_enable=NO

#Set root directory for anon connections
anon_root=/var/ftp

#Limit retrieval rate
anon_max_rate=2048000

#Enable logging user login and file transfers. /var/log/vsftpd.log
xferlog_enable=YES

#Set interface and port
listen_address=192.120.43.250
listen_port=21

IPアドレス192.120.43.250は私のサーバーのeth0です。コマンドを実行すると

Sudo vsftpd /etc/vsftpd.conf

エラーが発生します:

500 OOPS: could not bind listening IPv4 socket

ポート21で何が実行されているかを確認するために、次のコマンドを実行しました。

Sudo netstat -tulpn

そして、vsftpdプロセスIDが2938であることを確認したので、次のコマンドを発行しました。

Sudo killserver 29383

そしてもう一度確認しました。 vsftpdはまだ存在していましたが、PIDが異なりました。コマンドを実行する:

Sudo killall vsftpd

そして

Sudo killall -9 vsftpd

同じことをします。すでに再インストールしてみました。誰もが何が起こっているのか、それを修正する方法を知っていますか?

5
Alper Turan

コメントアウトすることを忘れないでください

listen=YES

あなたのvsftpd.confファイル。スタンドアロンモードでvsftpdを実行しないようにします。

それは私の場合の問題を修正しました。

5
ARTURO

おそらくxinetd ftpが実行されているために、このエラーが発生しています。

以下の手順で、次のエラーを解決できます。

A)500 OOPS:vsftpdの場合、リスニングIPv4ソケットをバインドできませんでした

B)ncftpgetの場合、接続直後のサーバーのハングアップ

以下の手順に従ってエラーを修正してください。

  • 実行中のFTPサービスを表示するには、次のコマンドを使用します。

    $ lsof -i | grep ftp (Become root and run this command)
    
  • Xinetdを停止するには:

    $ Sudo service xinetd stop
    
  • Xinetdを停止した後、次のように入力してvsftpdサービスを再起動します。

    $ /etc/init.d/vsftpd restart  (Become root and run this command)
    
  • また、vsftpd.confを次のように確認します。

    listen=YES
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    use_localtime=YES
    xferlog_enable=YES
    secure_chroot_dir=/var/run/vsftpd/empty
    pam_service_name=vsftpd
    rsa_cert_file=/etc/ssl/private/vsftpd.pem
    
1
Ankit Raj

上記の解決策がうまくいかなかった場合は、私と同じ状況にあります。解決しましょう。

最初に、必ずlisten=NOを実行するか、listen=YESを含む行をコメント化し、ポートを8081または標準ポートに設定する必要があります。次にps -efと入力すると、次のように表示されます。

enter image description here

次に、次のコマンドを入力して、目的のファイルを抽出します。

ps -ef | grep vsftpd

[〜#〜] pid [〜#〜]の番号が2列目にあることを思い出してください。次に、その番号をコピーします。 vsftpdには以前のログが含まれており、vsftpd.confファイルに変更を加えたため、これでkillする必要があります。キルコマンドは:

Sudo kill <PID>

例須藤は5392を殺す

これで完了です。サーバーを再起動して、完全に実行します。

0
surya_bhai

私の場合、エラーはプロセスの実行が原因でした。

次を試してください:

$ Sudo service vsftpd restart

サービスは、もしあれば、新しい構成パラメーターで再始動する必要があります。

0
Lorenzo Lerate