Bitbucketの指示に従ってSSHキーを追加し、毎回認証せずにgitを使用しました。ここの指示に従ったすると、次のメッセージが表示されます。ssh -T [email protected]
Bad owner or permissions on /home/centos/.ssh/config
SSH 権限を確認すると、次のようになります。
cat ~/.ssh/config
Host bitbucket.org
IdentityFile ~/.ssh/id_rsa
そして~/.ssh/id_rsa
存在し、私の秘密鍵が含まれています。公開鍵はすでに Bitbucket の SSH キーに追加されており、表示されるエラー メッセージはトラブルシューティング ガイドに記載されていません。
システムは CentOS Linux リリース 7.0.1406 (Core)、git バージョン 1.8.3.1 で、SSH キーは 5 時間前に Bitbucket に追加されました。関連があるかどうかはわかりませんが、centos
CentOS マシン上のユーザーは自動的に作成され、ID ファイルを使用してログインしています (パスワードはありません)。また、Bitbucket リポジトリは正常に動作しており、別のコンピューターから問題なく操作できます。両方の SSH キーが Bitbucket アカウントの下にリストされています。
アップデート:どちらの回答にも権限について言及されていますが、すでに確認済みです。 と は、それぞれ~/.ssh/id_rsa
とを~/.ssh/id_rsa
持つ私のユーザーによって所有されています。 両方のファイルに対して chmod を試みましたが、同じメッセージが表示されました。664
600
777
答え1
どちらの回答にも権限について言及されていますが、すでに確認済みです。 と は、それぞれ
~/.ssh/id_rsa
とを~/.ssh/id_rsa
持つ私のユーザーによって所有されています 。 両方のファイルに対して chmod を試みましたが、同じメッセージが表示されました。664
600
777
777
権限は機能しません。SSH 権限は非常に制限されており、そのように権限を開放するとエラーが発生するだけです。また、他の質問に対するコメントには、現在の権限が次のように記載されています。
-rw-rw-r--. 1 centos centos 47 May 17 20:33 /home/centos/.ssh/config
これらは664
の権限です-rw-rw-r--
。必要なのは600
の権限です-rw-------
。まず権限を~/.ssh/config
次のように変更してみてください。
chmod 600 /home/centos/.ssh/config
同じことを~/.ssh/id_rsa
chmod 600 /home/centos/.ssh/id_rsa
また、Bitbucket SSH ドメイン/ユーザーの組み合わせがどうなるかはよくわかりませんが、-v
何が起こっているかを詳しく確認するために、(verbose) フラグ付きの SSH コマンドを使用してプロセスをデバッグしてみる価値はあるかもしれません。次のようなコマンドが役立ちます。
ssh -v -T [email protected]
は-v
詳細な出力となり、-T
SSH を「疑似 tty 割り当てを無効にする」ように設定するため、実際の対話型セッションは作成されません。基本的には、リモート ホストへの接続を試行し、その後接続を切断するだけです。テストに役立ちます。
答え2
エラーが示すように、 などを使用して所有権と権限を確認してくださいls -l /home/centos/.ssh/config
。
centos
所有者はあなた ( )、モードは600
( rw-------
) または400
( r--------
)である必要があります。
答え3
私は
sudo chown <username>:<username> ~/.ssh/config
システムユーザー名はどこに<username>
ありますか?ファイルの所有者を変更する<username>
削除して、現在のユーザー (sudo ではなく) で再作成しても機能します。これは、ファイルを root として作成したことが原因であると思われます。