別のユーザーではなく1人のユーザーのパスワードを要求するSSH


1

同じマシンに2人のユーザーがいて、ユーザー#2のSSHを設定しようとしています。SSHはまだ2番目のユーザーのパスワードを要求していたので、.rsaファイルをuser#1からuser#2にコピーしました。それらは同一のファイルとパーミッションを持ち、user#1のパスワードは要求されませんが、SSHはuser#2のパスワードを要求します。同じ.rsaファイルを持つ同じマシン上の2人のユーザーがSSHから異なる応答を返す原因は何ですか?


1
ssh -vuser2がログインしようとしたときの出力は、user2 の場合と同様に役立ちls -la ~/.sshます。user1とuser2の両方がリモートマシンで同じユーザーとしてログインしていますか?
mgorven

ログインは、同じリモートマシン上の異なるユーザーとしてでした。
オカスタエシュ

回答:


2

ルートからホームディレクトリの.sshディレクトリまでのすべてのディレクトリには、「グループ」または「その他」のいずれかに対する書き込み権限が必要です。これは、セキュリティを強化するためのsshの要件です。アクセス許可がそれほど設定されていない場合、攻撃者は.sshにアクセスして、書き込みアクセス許可のある最初のディレクトリから始めて.sshを変更またはコピーし、選択または更新した別のユーザーに秘密キーをコピーする手段があります。キーは彼らが選択したものであるため、sshを使用してパスワードの入力を求められずになりすまし、ログインすることができます。したがって、適切な権限で適切に保護されていない場合、.sshキーは機能しません。


1

私はuser1とuser2がリモートサーバー上にあり、プライベートキーをローカルに使用してそれに接続しているという仮定の下で答えています。

代わりにローカルuser1 / user2アカウントを使用してリモートサーバーに接続しようとしている場合、私の答えは当てはまりません。


リモートサーバーで、公開キーの内容を次の場所に追加する必要があります。

~/.ssh/authorized_keys

ファイルの内容は次のようになります。

ここに画像の説明を入力してください


これは以前は問題でしたが、authorized_keysを既に考慮していました。
オカスタエシュ

1

.rsaおよびインクルードされたファイルのパーミッションが間違っていることを示唆する前に、誰かが合理的な答えを出しました(削除したはずです)。これは問題ではありませんでしたが、ほぼ正しいものでした。.rsaにつながるすべてのフォルダーには適切なアクセス許可が必要であることがわかりました。

それらを同じにすると、プロンプトなしのsshが機能し、最初のホストキーを受け入れるように求められますが、次の接続では受け入れられません。

[root@computer ~]# ls -ld /home/user2 /home/user1

drwxrwx--- 24 user2 user2  4096 Jun  2 13:13 /home/user2
drwxr-xr-x 97 user1 user1 12288 Jun  2 13:06 /home/user1



[root@computer ~]# chmod -v 755 /home/user2

mode of `/home/user2' changed to 0755 (rwxr-xr-x)



[root@computer ~]# ls -ld /home/user2 /home/user1

drwxr-xr-x 24 user2 user2  4096 Jun  2 13:13 /home/user2
drwxr-xr-x 97 user1 user1 12288 Jun  2 13:06 /home/user1
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.