キー フォルダーとキー自体の両方を、ユーザーだけが読み取れるようにする必要があります。私はいつも chmod 700 ~/.ssh; chmod 600 ~/.ssh/*
をしています 自分のユース ケースに合わせてこれらのディレクトリを変更したいことは明らかです。
または、 chown -R $USERNAME ~/.ssh; chmod -R go-rwx ~/.ssh
もできます
chown
たとえば、キー ファイルがルートとしてダウンロードまたはインストールされたときに必要になる場合があります。
chmod 777
は絶対にしないでください あなたの秘密鍵に!それは(おそらく)一般に公開されますが、それは望ましくありません。さらに、SSH は場合によっては、許可が緩すぎるファイルの使用を拒否することさえあります。
ファイルのアクセス許可が問題でない場合は、他にいくつかの原因が考えられます。ディレクトリ ~/.ssh
のいずれかに誤った権限が設定されている可能性があります または ~/.ssh/keyfolder
(技術的には ~
でも しかし、これが唯一の症状ではありません)。 ls -adl
を使用 それらのディレクトリを検査します。 rwx
である必要があります あなたのために、しかし ---
グループと世界の両方に。
もう 1 つの問題として、(これは非常にまれですが) ssh-add
バイナリには setuid
があります ビットが設定されているため、別のユーザーとして実行されるため、秘密鍵を読み取る権利がありません。 ls -lh $(which ssh-add)
を使用 これを調べます。