SSH: 「'my_key.pub' の権限 0644 が開きすぎています。」

SSH: 「'my_key.pub' の権限 0644 が開きすぎています。」

0644ie がSSH キーに対してオープンすぎるのはなぜですか? また、ディレクトリ ( ) またはホーム ディレクトリ ( )-rw-r--r--に誤った権限は見つかりませんでした。.ssh07000731

ちなみに、キーの言い換えをテストするときにこのエラーが発生しますssh-keygen -y -f my_key.pub

よろしくお願いします

答え1

間違ったファイルでssh-keygenを実行している可能性がありますssh-keygen -yプライベートキーファイル。「.pub」ファイルは通常、公共キー。そこにはおそらく、拡張子のない という名前のファイルがありmy_key、モードは 0600 であるはずです。それが秘密キーを含むファイルです。

質問に直接お答えすると、SSH キーは通常、パスワードなしでリモート サーバーに接続できるようにするために使用されます。秘密キーを所有すると、そのキーを受け入れるすべてのシステムで誰かがあなたのアカウントにログインできるようになります。ssh-keygen やその他の ssh ユーティリティでは、秘密キー ファイルは機密性が高く、安全に保つ必要があるため、権限を制限する必要があります。

答え2

実行する必要があるコマンドは だけですchmod 600 ~/.ssh/id_rsa。それだけです。

これにより、ファイルの権限が変更され、所有者 (あなた) がファイルを読み書きできるようになります。これにより、受信するエラー メッセージが削除されます。

答え3

0644公開鍵に対してはオープンすぎるはずはありませんが、秘密鍵に対してはオープンすぎるはずです。

秘密鍵には許可が必要で0600あり、公開鍵には許可が必要です0644

ちなみに、.sshフォルダの権限にも注意する必要があります。フォルダには権限が付与されている必要があります。そうする0700ことで、所有者であるあなただけがフォルダを制御できるようになります。

ホームディレクトリに関しては、グループやその他のユーザーに書き込み権限が付与されないはずです。

実行すればchmod go-w /home/username修正されるはずです。

答え4

上記の回答は有効ですが、権限を修正するために実行する前に、 (s) が秘密キーを参照していることchmodを確認してください。初心者はそれを誤解して、代わりに公開キー (拡張子付き) を参照し、同じエラーが発生する可能性があります (公開キー ファイルの権限が秘密キーに対してオープンすぎるため)。IdentityFile~/.ssh/config.pub

関連情報