ubuntu vsftpd 530 Login incorrect根本原因と解決策
1698 ワード
1背景分析
ubuntuインストールvsftpd一般使用:
ネットワークには、/etc/vsftpdの変更など、多くのソリューションがあります.confファイルはpam_service_name=vsftpdをpam_に変更service_name=ftpは,この問題を解決できるが,この方法は実は誤りである.これにより/etc/pam.d/ftpファイルは存在しません.PAMを迂回したのと同じです.
2 vsftpd pamファイル分析
/etc/pam.d/vsftpdのデフォルトは次のとおりです.
530エラーを引き起こす可能性があるのは
2.1/etc/ftpusers
2.2 pam_shells.so
ftpユーザーを作成する場合、sshログインを禁止するために、一般的には/bin/false、/usr/sbin/nologinなどが多く、明らかに有効なbashではなく、ログインできません.
3ソリューション
1、/etc/ftpusersを見て、アカウントがこのファイル内にないことを確認します.2、修正/etc/pam.d/vsftpd
ubuntuインストールvsftpd一般使用:
sudo apt-get install vsftpd
他のネットチュートリアルの構成を参照すると、アカウント、パスワード、ホームディレクトリが正しい場合、アカウントログインプロンプト530 Login incorrectの問題が発生する可能性があります.ネットワークには、/etc/vsftpdの変更など、多くのソリューションがあります.confファイルはpam_service_name=vsftpdをpam_に変更service_name=ftpは,この問題を解決できるが,この方法は実は誤りである.これにより/etc/pam.d/ftpファイルは存在しません.PAMを迂回したのと同じです.
2 vsftpd pamファイル分析
/etc/pam.d/vsftpdのデフォルトは次のとおりです.
# Standard behaviour for ftpd(8).
auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers
onerr=succeed
# Note: vsftpd handles anonymous logins on its own. Do not enable pam_ftp.so.
# Standard pam includes
@include common-account
@include common-session
@include common-auth
auth required pam_shells.so
530エラーを引き起こす可能性があるのは
auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
とauth required pam_shells.so
です.2.1/etc/ftpusers
auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
この構成項目は、/etc/ftpusersのユーザがログインを禁止することを意味し、ファイルが存在しない場合はデフォルトのすべてのユーザがログインを許可する.だから、ユーザーがこのファイル内にいないことを確認します.2.2 pam_shells.so
auth required pam_shells.so
構成項目は、ユーザのshellが/etc/shelsファイル内のshellコマンドであることを許可する場合にのみ成功することを意味するcat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash
ftpユーザーを作成する場合、sshログインを禁止するために、一般的には/bin/false、/usr/sbin/nologinなどが多く、明らかに有効なbashではなく、ログインできません.
3ソリューション
1、/etc/ftpusersを見て、アカウントがこのファイル内にないことを確認します.2、修正/etc/pam.d/vsftpd
auth required pam_shells.so
を->auth required pam_nologin.so
に変更すれば3、vsftpdを再起動