免責事項:本記事には、サードパーティ製品に関する情報が含まれている場合があります。このような情報は参考用です。Alibaba Cloud は、サードパーティ製品のパフォーマンスと信頼性、および製品に対する操作の潜在的な影響について、明示的または黙示的を問わず、いかなる保証も行いません。
問題
SSH コマンドを実行して Linux Elastic Compute Service (ECS) インスタンスにログインする際、正しいユーザー名とパスワードを入力しても接続に失敗し、「This account is currently not available.」というエラーメッセージが表示されます。
cat /var/log/secure コマンドを実行してログインログを確認すると、次のような情報が表示されます。
Connection to 127.0.0.1 closed.
Received disconnect from 127.0.0.1: 11: disconnected by user.
pam_unix(sshd:session): session closed for user test.
原因
この問題は通常、ECS インスタンスのユーザー設定ファイル (/etc/passwd) で、該当ユーザー (test など) のデフォルトシェルが変更され、ログインできなくなっていることが原因です。
ソリューション
該当ユーザー (test など) のシェルを変更することで、この問題を解決できます。
-
VNC を使用した接続の説明に従って、VNC で ECS インスタンスにログインします。
-
次のコマンドを実行して、該当ユーザー (test など) のデフォルトシェルを確認します。
cat /etc/passwd | grep test次のような結果が表示されます。これは、test ユーザーのシェルが
/sbin/nologinに変更されており、ログインが許可されていないことを示しています。test:x:1000:1000::/home/test:/sbin/nologin -
ユーザーのシェルを変更します。
説明ポリシー設定を変更する前に、ファイルをバックアップすることを推奨します。
-
ユーザー設定ファイル (/etc/passwd) を開きます。
vi /etc/passwd -
該当ユーザー (test など) のデフォルトシェルを bash に変更します。つまり、次の例のように
/sbin/nologinを/bin/bashに変更します。test:x:1000:1000::/home/test:/bin/bash -
Esc キーを押し、
:wqと入力して、変更を保存します。
-
-
該当ユーザーで Linux インスタンスに再接続し、正常に接続できることを確認します。
説明ヒント:ご不明な点がある場合は、「SSH を使用した Linux インスタンスへのリモートログイン失敗のトラブルシューティングガイドライン」をご参照ください。
適用範囲
-
ECS