
2人の他のユーザーとSSHを介して接続できるサーバーがあります。最初のユーザーに対して公開鍵認証を設定しましたが、正常に機能しますが、2番目のユーザーとしてログインできませんでした。このファイルの違いは、authorized_keys
2番目のユーザーが2つのキーを持っていることです(どちらも検証に失敗します)。 .sshディレクトリと認証キーファイルの両方に755の権限があります。 SSH クライアントは認証したいキーを送信します。何が問題なのでしょうか?
答え1
まず、.sshディレクトリには700の権限が必要で、Authorized_keysファイルには600の権限が必要です。
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
rootを使用してuserB用のファイルを生成した場合は、次のこともできます。
chown -R userb:userb .ssh
問題が解決しない場合は、SSHログファイルの出力を質問に投稿してください。回答を更新します。
Debian の場合:
less /var/log/auth
Red Hatの場合:
less /var/log/secure
答え2
次のメッセージが見つかりました/var/log/auth.log
。
Oct 22 13:27:58 hagyma sshd[27420]: User userb not allowed because account is locked
userbのパスワードを設定し、アカウントのロックを解除sudo passwd userb
しました。
答え3
私はパーティションが珍しい方法でマウントされたので無視sshd
されました。すべてを試して正しい権限を設定し、変更した後にのみ機能しました。~/.ssh/authorized_keys
/home
sshd_config
StrictModes no
答え4
私もSELinuxのために同じ問題に直面しました。
SELinuxを正しく設定するrestorecon -Rv ~/.ssh
か()無効にします(RedHatでは、/etc/selinux/config
システムを編集して再起動するか、setenforce 0
次回の再起動までSELinuxを一時的に無効にするように入力する必要があります)。