「.ssh」フォルダの「known_hosts」ファイルを間違えて削除してしまいました!現在、BitBucket リポジトリをプルまたはプッシュできません。
どうすれば解決できますか?
実行してみてください:
ssh -T git@bitbucket.org
それはあなたに次のようなメッセージを与えるでしょう:
The authenticity of host 'bitbucket.org (207.223.240.181)' can't be established.
RSA key fingerprint is 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40.
Are you sure you want to continue connecting (yes/no)? yes
yes
ホストのフィンガープリントを確認した後に言います(最後の詳細を参照してください)。
次に、この警告が表示されます。これは無視しても問題ありません。
Warning: Permanently added 'bitbucket.org,207.223.240.181' (RSA) to the list of known hosts.
conq: logged in as tuxdude.
You can use git or hg to connect to Bitbucket. Shell access is disabled.
git pull
またはをもう一度実行してみてくださいgit push
。今回は機能するはずです。
.ssh/id_rsa
注: SSH認証用の秘密鍵であるファイルがまだ安全にあると思います。
@Pascal_dherが指摘したように、ホストのフィンガープリントを検証しない場合(信頼できる帯域外アプローチを使用して)、中間者攻撃の犠牲になる可能性があります。bitbucketの場合、情報はここにあります。
「BitBucketでのsshの使用」ページから、次にsshを使用すると、そのknown_hosts
ファイルが再作成されます。
Bitbucketホストは、GitとMercurialのみがSSH接続を確立できるようにします。
SSH URLを使用して初めてBitbucketにアクセスするとき、SSHクライアントはBitbucketホストが既知のホストであるかどうかを確認します。ホストが~/.ssh/known_hosts
ファイルにない場合、SSHはBitbucketホストを既知のホストに追加していることを警告します。
$ hg clone ssh://hg@bitbucket.org/newuserme/mquotefork testkey
The authenticity of host 'bitbucket.org (207.223.240.182)' can't be established.
RSA key fingerprint is 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40.
Are you sure you want to continue connecting (yes/no)?
保存されている既知のホストのコンテンツを表示すると、実際のキーがbase64でエンコードされた形式で保存されていることがわかります。
bitbucket.org,207.223.240.182 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubiN81eDcafrgMeLzaFPsw2kNvEcqTKl/VqLat/MaB33pZy0y3rJZtnqwR2qOOvbwKZYKiEO1O6VqNEBxKvJJelCq0dTXWT5pbO2gDXC6h6QDXCaHo6pOHGPUy+YBaGQRGuSusMEASYiWunYN0vCAI8QaXnWMXNMdFP3jHAJH0eDsoiGnLPBlBp4TNm6rYI74nMzgz3B9IikW4WVK+dc8KZJZWYjAuORU3jc1c/NPskD2ASinf8v3xnfXeukU0sJ5N6m5E8VLjObPEO+mN2t/FZTMZLiFqPWc/ALSqnMnnhwrNi2rbfg/rd/IpL8Le3pSBne8+seeFVBoGqzHM9yXw==
したがって、sshアドレス(または単にsshコマンド)を使用するだけで、そのメッセージを再度トリガーできます。