Git リポジトリの SSH フィンガープリント
最終更新日 2024年05月09日(木)
確実にコードを Heroku にプッシュするために、Heroku の Git エンドポイントの SSH フィンガープリントを検証します。
手動で検証する
現在の Heroku の SSH Git フィンガープリントは、8b:48:5e:67:0e:c9:16:47:32:f2:87:0c:1f:c8:60:ad
または 8tF0wX2WquK45aGKs/Bh1dKmBXH08vxUe0VCJJWOA/o
で、ご使用の SSH クライアントに MD5 または SHA-256 のどちらのフィンガープリントが表示されるかに基づきます。
初めて git push heroku master
を実行したときに、接続先のホストのフィンガープリントが表示され、正当性を確認するように求められます。続ける前に出力を上記のフィンガープリントと照合して、接続先が正しいサーバーであることを確認します。
今後、Heroku の SSH 鍵を変更する必要があるため、このページは常に最新の情報にアップデートします。
DNS で検証する
~/.ssh/config に次の行を追加すると、Heroku の SSHFP DNS レコードを利用できます。
Host heroku.com
VerifyHostKeyDNS yes
DNSSEC はまだ完全に実装されていないため、Heroku の SSHFP レコードは信頼されていません。そのため、初めて接続するときにフィンガープリントを承認するように求められます。
$ git push heroku master
> The authenticity of host 'heroku.com (50.19.85.132)' can't be established.
> RSA key fingerprint is 8b:48:5e:67:0e:c9:16:47:32:f2:87:0c:1f:c8:60:ad.
> Matching host key fingerprint found in DNS.
> Are you sure you want to continue connecting (yes/no)?
続ける前に、matching host key fingerprint
があることを確認します。
それ以降のリクエストでは、フィンガープリントの確認は求められません。
VerifyHostKeyDNS yes
を追加すると、毎回 SSHFP レコードが参照されるため、Git の各操作のオーバーヘッドが若干増えることに留意してください。