<style> .gs-hero{padding:clamp(23px,5vw,46px);border-radius:24px;background:linear-gradient(130deg,#0f172a,#164e63 56%,#0f766e);color:#fff}.gs-hero h2{color:#fff}.gs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}.gs-card{padding:18px;border:1px solid #99f6e4;border-radius:16px;background:#f0fdfa}.gs-card strong{display:block;font-size:1.65rem;color:#0f766e}.gs-table{overflow-x:auto}.gs-table table{min-width:660px;width:100%;border-collapse:collapse}.gs-table th,.gs-table td{padding:11px;border:1px solid #cbd5e1;text-align:left;vertical-align:top}.gs-table th{background:#ccfbf1}.gs-note{padding:17px;border-left:5px solid #f59e0b;border-radius:12px;background:#fffbeb;margin:20px 0}.gs-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0}.gs-step{padding:15px;border-radius:14px;background:#ecfeff;border:1px solid #a5f3fc}.gs-step b{display:block;color:#0e7490}.gs-code{overflow-x:auto;padding:16px;border-radius:12px;background:#0f172a;color:#e2e8f0}@media(max-width:720px){.gs-grid,.gs-flow{grid-template-columns:1fr}} </style>

GITHUB SSH / 2026年9月22日発表

「RSA鍵を全部作り直す」は誤解。先に見るべきは署名方式とクライアント

GitHubのSSH接続仕様が段階的に変わります。開発端末だけでなく、CI、デプロイ、組み込みGitクライアントまで確認が必要です。

10月14日新規RSA鍵は3072ビット以上
11月4日旧方式の停止テスト1回目
12月9日旧方式の停止テスト2回目

3行要約

  • GitHubは2026年9月22日、SSHのssh-rsa(SHA-1署名)とdiffie-hellman-group-exchange-sha256の廃止、耐量子鍵交換の追加を発表しました。
  • 2026年10月14日以降に登録する新しいRSA鍵は3072ビット以上が必要です。既存RSA鍵は、クライアントがRSA-SHA2を使えれば原則再作成不要です。
  • SSH接続する端末・CI・ライブラリを棚卸しし、更新後に接続試験を。HTTPSリモートの利用者は今回のSSH変更の対象外です。

背景:鍵の種類と署名方式は別

ssh-rsaという表記には、RSA公開鍵の種類と、RSA鍵でSHA-1を使う署名方式という紛らわしい二つの意味があります。今回GitHubが廃止するのは後者です。RSA鍵そのものを一律に禁止する発表ではありません。RSA-SHA2(rsa-sha2-256/rsa-sha2-512)で署名する既存鍵は継続利用できます。SHA-2はSHA-1より新しいハッシュ方式です。

発表日は2026年9月22日。以下の日付は実施予定日であり、すでに全接続が停止したという意味ではありません。

何が新しい? 変更点と日程

項目変更内容管理者の対応
RSA鍵の新規登録10月14日以降、認証用・署名用とも3072ビット以上鍵発行テンプレートと自動登録処理を点検
SHA-1によるRSA署名`ssh-rsa`署名を廃止。11月4日と12月9日に停止テストRSA-SHA2対応クライアントへ更新
古い鍵交換`diffie-hellman-group-exchange-sha256`を廃止。同じ日に停止テスト古いSSHライブラリ・サーバー接続実装を点検
耐量子鍵交換`mlkem768x25519-sha256`を追加。10月14日から対応予定原則、利用者側の設定変更は不要。旧クライアントは別方式へフォールバック

GitHubの発表によると、GitHub Enterprise Serverでは耐量子鍵交換が3.24、その他の変更が3.25に反映されます。対象はSSHを使うGitクライアントと、GHESで認証なしのGitプロトコルを使う利用者です。HTTPSのGitリモートには影響しません。

日付の注意:GitHubの発表本文には、旧方式の最終廃止日が「January 13, 2026」と記載されています。発表日や同ページの11月・12月の停止テストより前になるため、編集時点では誤記の可能性があります。最終廃止日を断定せず、公式ページの訂正を確認してください。

実務への影響:どの環境を先に調べるか

1. 棚卸しSSHリモートと接続元を列挙
2. 判定鍵長・クライアントの世代を確認
3. 更新古いSSH実装を更新
4. 試験認証・Git操作を再確認

特に見落としやすいのは、開発者のPCではなくCIランナー、ビルドサーバー、デプロイジョブ、IDE内蔵Git、SSHライブラリです。GitHubがRSA-SHA2を標準設定で十分に扱える目安として挙げた最小バージョンは、OpenSSH 7.2p1、TeamCity 2021.2.3、libssh2 1.11.0、PuTTY 0.82などです。製品の実際の設定や派生版は別途検証してください。

導入・確認手順

  1. 各リポジトリでgit remote -vを確認し、[email protected]:などのSSH URLを使う接続元を一覧化します。HTTPS URLなら今回のSSH変更を理由に鍵を交換する必要はありません。
  2. 接続元でssh -Vを確認します。CIやアプリにSSH実装が内蔵される場合は、その製品・ライブラリのバージョンも調べます。
  3. 新しい鍵が必要ならGitHub推奨のEd25519を検討します。RSAが必要なら3072ビット以上で発行し、公開鍵だけをGitHubへ登録します。秘密鍵をログやリポジトリに載せないでください。
  4. 変更後にssh -T [email protected]で認証を試し、CIでは実際のgit fetchなどもテストします。GitHub Docsによると、認証成功メッセージでもssh -Tの終了コードは1です。終了コードだけで失敗判定しないでください。
git remote -v
ssh -V
ssh -T [email protected]

RSA鍵を使っているだけで緊急交換する必要はありません。まずクライアントを更新し、SHA-2署名で接続できるか確かめるのが現実的です。

リスクと限界

  • 停止テストの日付は変更される可能性があります。運用前にGitHubの原文を再確認してください。
  • 鍵長だけでは接続可否を判定できません。署名方式・鍵交換方式とクライアント実装の組み合わせで検証します。
  • SSHデバッグログにはホスト名やユーザー情報が含まれる場合があります。共有前に確認してください。
  • 耐量子鍵交換への対応は、利用者の通信経路で必ず同方式が選択されることを保証しません。交渉結果はクライアント側で確認が必要です。

今後注目すべき点

GitHubが最終廃止日の記載を訂正するか、11月・12月の停止テストでどの古い環境が失敗するかを追跡します。組織では、停止テストより前にCIの接続試験を定期実行し、使用するSSH実装を資産台帳に含めると影響を早く発見できます。これは公式仕様からの運用上の提案です。

最終確認日:2026年9月23日

参照元(一次情報)

Previous Post Next Post