SSH:「 'my_key.pub'のアクセス許可0644が開きすぎています。」


21

なぜ0644すなわち-rw-r--r--SSHキーの開きすぎ?また、.sshディレクトリ(0700)またはホームディレクトリ(0731)に対する偽のアクセス許可も見つかりませんでした。

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

宜しくお願いします

回答:


7

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

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


11

0644 公開鍵に対してはあまりにも開いているはずではありませんが、秘密鍵に対してはあまりにも開いています。

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

ちなみに、.sshフォルダのアクセス許可にも注意する必要があります。0700所有者であるあなただけがフォルダを制御できるように、権限が必要です。

ホームディレクトリに関しては、グループや他の人に書き込み許可を与えることは想定されていません。

実行chmod go-w /home/usernameすると修正されます。


絶対にこれらの指示に従わないでください。これはあなたがすべきことではありません。これにより、すべてのホームディレクトリのアクセス許可もリセットされます。ホームディレクトリ全体ではなく、.sshフォルダとid_rsaファイル自体のみを変更する必要があります。
-niftylettuce

9

実行する必要がある唯一のコマンドはchmod 600 ~/.ssh/id_rsaです。それでおしまい。

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


@TwistyImpersonator
niftylettuce

0

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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.