【Windows】GitHubのSSH接続で挫折しない!Git Bashを使った設定手順を完全図解

「GitHubにSSH接続する」
この言葉を聞いただけで、「なんだか難しそう…」「黒い画面が怖い」とアレルギー反応が出ていませんか?
私もエンジニアになりたての頃、見よう見まねでコマンドを打ち込み、エラーの赤文字が出るたびに冷や汗をかいた経験があります。特にWindows環境だと、ネットの解説記事通りにやってもうまくいかないことが多いんですよね。
でも、安心してください。
手順さえ間違えなければ、SSH接続は決して怖いものではありません。むしろ、一度設定してしまえば、パスワード入力の手間から解放され、安全に開発に集中できる最強の味方になります。
今回は、Windowsユーザー向けに「Git Bash」を使って、現在主流の「ed25519」という方式で安全かつ簡単にSSH接続設定を行う方法を解説します。
初心者の方が最初につまずきやすい「.sshフォルダが見つからない問題」もしっかりカバーしていますので、一緒に環境を整えていきましょう!
なぜWindowsユーザーには「Git Bash」がおすすめなのか?
本題に入る前に、一つだけ大切な話をさせてください。
Windowsには標準で「コマンドプロンプト」や「PowerShell」が入っていますが、なぜわざわざ「Git Bash」をインストールして使う必要があるのでしょうか?
理由は大きく2つあります。
- ネット上の技術情報のほとんどが「Linuxコマンド」で書かれているからプログラミングの世界では、MacやLinux(サーバー)が標準的な環境として扱われることが多いです。そのため、技術ブログや教材に出てくるコマンド(ls, cat, mkdir など)は、コマンドプロンプトでは動かないことがあります。Git Bashを使えば、Windowsでもこれらのコマンドがそのまま使えるため、学習コストが大幅に下がります。
- Git操作とSSH操作を同じウィンドウで完結できるからGit Bashはその名の通り、Gitを扱うために特化しています。SSH鍵の作成から、その後の git push まで、ツールを持ち替えることなく一つの画面でスムーズに行えるのが最大のメリットです。
これからエンジニアを目指すのであれば、今のうちにGit Bash(UNIX系コマンド)の操作に慣れておくことを強くおすすめします。
なぜHTTPSではなくSSH接続なのか?
Gitの通信には「HTTPS」と「SSH」の2種類がありますが、現場のエンジニアはほぼ SSH接続を利用しています。
- HTTPS: 手軽ですが、毎回(または一定期間ごとに)認証情報を求められることがあり面倒です。
- SSH: 「秘密鍵」と「公開鍵」というペアを作って認証します。最初の設定は少し手間ですが、その後は認証なしで安全にやり取りができます。
今回は、セキュリティ強度が高く、鍵の長さも短くて扱いやすい「ed25519」という最新の暗号化方式を使って設定していきます。
ステップ1:Git Bashを開いて「.sshフォルダ」を確認する
まずは、Git Bashを起動してください。
ここがいきなり最初の「落とし穴」です。実は、Windowsの初期状態ではSSHの設定ファイルを置くための .ssh というフォルダが存在しないことがよくあります。
以下のコマンドをGit Bashに入力して、フォルダがあるか確認してみましょう。
($ マークは入力不要です。その後の文字を入力してEnterキーを押してください)
ls -la ~/.ssh【結果のパターンA:フォルダがある場合】

ファイルの一覧が表示されたら、フォルダは存在します。
ステップ2へ進んでください。
【結果のパターンB:No such file or directory と出る場合】

これが「フォルダがない」状態です。
焦らなくて大丈夫です!以下のコマンドで作成しましょう。
mkdir ~/.ssh
chmod 700 ~/.sshコマンドにある ~(チルダ)は、あなたの「ホームディレクトリ(C:\Users\あなたのユーザー名)」を表しています。chmod 700 は「自分だけが読み書きできるようにする」というセキュリティ設定です。これをしておかないと、エラーになることがあります。
もう一度フォルダの確認をして下記のようになっていれば成功です

ステップ2:最強の暗号方式「ed25519」で鍵を作成する
フォルダの準備ができたら、いよいよ鍵を作ります。
まずは、下記のコマンドで「.ssh」ディレクトリへ移動してください。
cd ~/.ssh以下のコマンドをコピーし、”あなたのメールアドレス” の部分だけ、GitHubに登録している自分のメールアドレスに書き換えて実行してください。
ssh-keygen -t ed25519 -C "your_email@example.com"コマンドを実行すると、いくつか質問されますが、すべて「Enterキー」を押すだけでOKです。
Generating public/private ed25519 key pair.
Enter file in which to save the key (/c/Users/User/.ssh/id_ed25519): <-- Enterを押す
Enter passphrase (empty for no passphrase): <-- Enterを押す(パスワードなしで便利に使います)
Enter same passphrase again: <-- Enterを押すこれで、あなたのPCの中に「秘密鍵」と「公開鍵」のペアが誕生しました!
ステップ3:公開鍵をGitHubに登録する
次に、対となる「公開鍵」の方をGitHubに渡してあげます。
まずは、作成された公開鍵の中身を表示してコピーしましょう。以下のコマンドを入力してください。
cat ~/.ssh/id_ed25519.pub | clip| clip をつけることで、表示された内容が自動的にクリップボードにコピーされます。
便利ですよね!もしうまくいかない場合は、cat ~/.ssh/id_ed25519.pub だけ入力して、出てきた ssh-ed25519 … から始まる文字列をマウスで選択してコピーしてください。
コピーできたら、GitHubの画面に移ります。
ステップ4:GitHubに作成した秘密鍵を登録する
GitHubにログインして、下記の手順で登録していきます。
https://github.com/settings/ssh



- Title: どのパソコンの鍵か分かる名前をつけます(例:
MyWindowsPCなど) - Key Type:
Authentication KeyのままでOKです - Key: ここに、先ほどコピーした公開鍵を貼り付けます(Ctrl + v)

ステップ4:接続テスト(最後の一歩!)
設定お疲れ様でした!最後に、正しく接続できるかテストを行いましょう。
Git Bashに戻り、以下のコマンドを入力してください。
ssh -T git@github.com初めて接続する場合、以下のような警告メッセージが表示されます。ここが最後の難関です。
The authenticity of host 'github.com ...' can't be established.
ED25519 key fingerprint is ...
Are you sure you want to continue connecting (yes/no/[fingerprint])?ここで怖がらずに、キーボードで yes と入力してEnterを押してください(y だけではダメな場合があります)。
以下のようなメッセージが表示されれば、接続成功です!
Hi (あなたのユーザー名)! You've successfully authenticated, but GitHub does not provide shell access.もし Permission denied と出た場合は、公開鍵のコピーミスがないか、もう一度ステップ3から確認してみてくださいね。
まとめ:SSH接続は開発の第一歩
これで、あなたのWindows PCとGitHubは安全なパイプラインで繋がれました。
「.sshフォルダがない」「コマンドが怖い」といった壁を乗り越えたあなたは、すでにエンジニアとしての大きな一歩を踏み出しています。
今後は、git push や git pull をする際にパスワードを聞かれることなく、スムーズに開発を進めることができます。
快適なGitHubライフを!

