カテゴリ: AWS EC2 更新日: 2025/12/12

AWS EC2でSSH接続する方法【Mac・Windows対応】初心者向けにわかりやすく解説

176
AWS EC2でSSH接続する方法【Mac・Windows対応】

先生と生徒の会話形式で理解しよう

生徒

「AWSでEC2インスタンスを作ったんですが、SSH接続の方法がよくわかりません…」

先生

「EC2インスタンスへのSSH接続は、セキュアにリモート操作を行うための重要な手順ですね。MacとWindowsそれぞれで解説していきましょう。」

生徒

「使ってるパソコンによってやり方が違うんですね!」

先生

「はい、Macはターミナル、Windowsは主にPowerShellやTera Termなどを使います。それでは順番に手順を確認していきましょう。」

1. SSH接続とは?EC2インスタンスにログインするための仕組み

1. SSH接続とは?EC2インスタンスにログインするための仕組み
1. SSH接続とは?EC2インスタンスにログインするための仕組み

AWS EC2でインスタンスを起動したら、次にやることは「SSH接続」です。SSHとは「Secure Shell」の略で、暗号化された安全な通信でリモートのコンピュータにログインできる仕組みです。
AWS EC2インスタンスはLinuxサーバが多いため、ローカル環境からコマンドラインでSSH接続して操作することが基本になります。

2. 接続準備:キーペア(.pemファイル)のダウンロードと保存

2. 接続準備:キーペア(.pemファイル)のダウンロードと保存
2. 接続準備:キーペア(.pemファイル)のダウンロードと保存

EC2インスタンスを起動する際に「キーペア」を作成したはずです。このキーペアには秘密鍵(.pemファイル)が含まれており、これを使ってSSH接続を行います。
まずはこの.pemファイルを安全な場所に保存しておきましょう。絶対に誰にも共有してはいけません。また、Windowsユーザーの場合はこの.pemファイルを.ppk形式に変換する必要がある場合もあります。

3. MacでEC2にSSH接続する手順

3. MacでEC2にSSH接続する手順
3. MacでEC2にSSH接続する手順

Macには標準で「ターミナル」が搭載されているため、追加のソフトウェアは不要です。以下の手順で接続します。

  • ターミナルを起動する
  • .pemファイルに適切なパーミッションを設定する
  • SSHコマンドで接続する

chmod 400 your-key-name.pem
ssh -i your-key-name.pem ec2-user@インスタンスのパブリックIPアドレス

「Permission denied」エラーが出た場合は、.pemファイルのパーミッション(権限)が適切でない可能性があるため、chmod 400の実行を忘れずに。

AWSの基本用語や仕組みを、図解でサクッと理解したい人には、 入門の定番書がこちらです。

AWSの基本が全部わかる教科書をAmazonで見る

※ Amazon広告リンク

4. WindowsでEC2にSSH接続する方法(PowerShell編)

4. WindowsでEC2にSSH接続する方法(PowerShell編)
4. WindowsでEC2にSSH接続する方法(PowerShell編)

Windows 10以降のPowerShellは、SSHコマンドが標準で利用できます。手順はMacとほぼ同じですが、ファイルパスの表記が異なります。


ssh -i "C:\Users\ユーザー名\Downloads\your-key-name.pem" ec2-user@パブリックIP

「このファイルのパーミッションが開きすぎています」と警告が出る場合は、次のように権限を変更します(またはTera Termの使用を検討しましょう)。

5. WindowsでTera Termを使ってSSH接続する方法

5. WindowsでTera Termを使ってSSH接続する方法
5. WindowsでTera Termを使ってSSH接続する方法

Tera TermはWindowsで人気のSSHクライアントソフトです。以下の手順でEC2と接続できます。

  1. Tera Termをインストールする
  2. EC2のパブリックIPアドレスを指定して「SSH接続」を選択
  3. ユーザー名は「ec2-user」、認証鍵には.ppkファイルを使用

.pemファイルを.ppkに変換するには、PuTTYgenというツールを使用します。変換後、Tera Termで使用できます。

6. 接続できない時のトラブルシューティング

6. 接続できない時のトラブルシューティング
6. 接続できない時のトラブルシューティング

EC2インスタンスにSSH接続できない場合、以下のような原因が考えられます。

  • セキュリティグループの設定でポート22が許可されていない
  • IPアドレスが変わっている(再起動後など)
  • ユーザー名が間違っている(例:Amazon Linuxはec2-user、Ubuntuはubuntu
  • 秘密鍵のパーミッションが適切でない

上記を順に確認することで、多くのSSH接続エラーは解決できます。

7. よくある質問(FAQ)

7. よくある質問(FAQ)
7. よくある質問(FAQ)

キーペア(.pem)は再ダウンロードできません。インスタンスを新規作成するか、Systems Manager経由で接続する方法などを検討します。

OSパッケージのアップデート(sudo yum updatesudo apt update)など、セキュリティ対策が推奨されます。

8. まとめ

8. まとめ
8. まとめ

今回は、AWS EC2インスタンスにSSH接続するための方法を、MacユーザーとWindowsユーザーの両方に向けてわかりやすく解説しました。EC2でサーバーを立ち上げたら、まず最初に行うべき作業が「SSH接続」であり、これをクリアすることでサーバー操作の第一歩が始まります。
特に初心者の方は、AWS EC2のSSH接続手順を理解しておくことがとても重要です。パーミッション設定やユーザー名の違い、Windowsでの.ppk変換など、少しつまずきやすいポイントもありますが、この記事を読んで手順を丁寧に確認すればきっと接続できるようになります。

また、セキュリティグループの設定や、インスタンスの公開IPアドレスなど、ネットワークやAWS特有の設定を確認することも大切です。AWS EC2とSSH接続はクラウド運用の基本スキルであり、将来的にWebサーバー、APIサーバー、開発環境構築など、さまざまな用途に応用できます。

以下に、SSH接続をスクリプト化するJavaの簡易サンプルも紹介します。あくまで疑似コードですが、SSH接続の概念をJavaで表現しています。


public class SSHConnection {
    public static void main(String[] args) {
        String pemFile = "your-key-name.pem";
        String ip = "your-public-ip";
        String user = "ec2-user";
        System.out.println("接続コマンド:");
        System.out.println("ssh -i " + pemFile + " " + user + "@" + ip);
    }
}

このように、AWS EC2とSSHの関係性をコードでも理解することで、今後のクラウド開発・インフラ構築がスムーズになります。AWSではこのような基礎を押さえておくことで、LambdaやRDS、CloudFrontなど他のサービス活用にもつながっていきます。

特にSSHEC2接続.pemファイルの管理Tera TermMacのターミナル操作など、検索されやすいキーワードを意識しながら今後も学習していきましょう。

先生と生徒の振り返り会話

生徒

「最初は難しそうだと思ったけど、MacでもWindowsでもSSH接続の手順がしっかりわかりました!」

先生

「接続できるようになると、サーバーの操作が一気に広がりますね。AWSではEC2の使い方が基本中の基本です。」

生徒

「.pemファイルの取り扱いとか、ユーザー名の違いとか、ちゃんと理解していないと接続できない理由もわかりました。」

先生

「そうです。今回はSSH接続の基礎を学んだので、今後はセキュリティグループやSSH鍵の自動管理など、応用にも挑戦していきましょう。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

AWS EC2インスタンスにSSH接続するにはどのツールを使えばいいですか?MacとWindowsで違いますか?

はい、Macでは標準の「ターミナル」を使ってSSH接続できますが、WindowsではPowerShellやTera Term、PuTTYなどのツールを使うのが一般的です。

EC2インスタンスのSSH接続に必要な.pemファイルが見つかりません。どうすればいいですか?

.pemファイルはセキュリティ上、再ダウンロードできません。なくした場合は新しいキーペアを作成して、インスタンスを再作成するか、AWS Systems Managerなどの別の接続方法を検討しましょう。
AWS EC2の一覧へ
新着記事
FlutterのMVP・MVVMアーキテクチャの違いと使い分け
FlutterのMVP・MVVMアーキテクチャの違いと使い分けを初心者向けに解説!
オニオンアーキテクチャの基本とFlutterでの適用例
オニオンアーキテクチャの基本とFlutterでの適用例を初心者向けに解説
クリーンアーキテクチャとは?Flutterでの導入メリット
クリーンアーキテクチャとは?Flutterでの導入メリットをやさしく解説
【AWS】RDS for Oracleの特徴・できないこと・バージョン・料金まとめ
【AWS】RDS for Oracleの特徴・できないこと・バージョン・料金を初心者向けに徹底解説
人気記事
インスタンスタイプの料金比較と最適な選び方(最新2025年版)
AWSのインスタンスタイプの料金比較と最適な選び方【2025年最新版】
【AWS】VPCの料金体系まとめ!無料枠・通信費・各種サービスごとの料金を徹底解説
【AWS】VPCの料金体系まとめ!無料枠・通信費・各種サービスごとの料金を徹底解説
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク