【AWS初心者向け】EC2キーペア作成の完全ガイド|AWSコンソールとCLIの2つの方法

AWS Basic
スポンサーリンク
スポンサーリンク

1️⃣ はじめに:EC2キーペアとは?

AWS EC2インスタンスにSSH接続するためには、キーペア(.pemファイル)が必要です。

キーペアの役割

  • 認証方式:パスワードではなく公開鍵暗号方式でセキュアに接続
  • 用途:EC2インスタンスへのSSHログイン
  • 再利用性:一度作成すれば複数のEC2インスタンスで使い回し可能

この記事で学べること

  • ✅ AWSコンソールでのキーペア作成方法
  • ✅ コマンドライン(AWS CLI)でのキーペア作成方法
  • ✅ キーペアの管理とセキュリティのベストプラクティス

対象読者

  • AWS初心者でEC2を初めて使う方
  • キーペアの作成方法を知りたい方
  • コマンドラインでの作成方法を学びたい方

 

2️⃣ キーペア作成の2つの方法

EC2キーペアの作成方法は2通りあります:

方法メリットデメリット
AWSコンソール直感的で簡単手動操作が必要
AWS CLI自動化可能、スクリプト化できる初期設定が必要

どちらか一方で作成すればOKです。個人利用ならAWSコンソールが簡単、開発環境の構築や自動化を考えるならAWS CLIがおすすめです。

 

3️⃣ 方法1:AWSコンソールでキーペア作成

手順1:AWSコンソールにログイン

  1. AWSマネジメントコンソールにアクセス
  2. IAMユーザーまたはルートユーザーでログイン

手順2:EC2ダッシュボードを開く

  1. サービス検索で「EC2」を検索
  2. 「EC2」をクリックしてダッシュボードを開く
  3. 左サイドバーの「ネットワーク&セキュリティ」セクション
  4. 「キーペア」をクリック

手順3:キーペアを作成

  1. 「キーペアを作成」ボタンをクリック

  2. 設定項目を入力:

    名前:

    my-ec2-test-key

    ※識別しやすい名前を付けましょう(自分の名前や社員番号を含めると管理しやすい)

    キーペアのタイプ:

    • RSA を選択(推奨)

    プライベートキーファイル形式:

    • .pem を選択
  3. 「キーペアを作成」ボタンをクリック

  4. 自動的に .pem ファイルがダウンロードされます

    • 例:my-ec2-test-key.pem

手順4:キーペアファイルを安全な場所に保存

Windowsの場合:

C:\Users\あなたのユーザー名\.ssh\my-ec2-test-key.pem

Mac/Linuxの場合:

mkdir -p ~/.ssh
mv ~/Downloads/my-ec2-test-key.pem ~/.ssh/
chmod 400 ~/.ssh/my-ec2-test-key.pem

重要:

  • .pem ファイルは再ダウンロードできません
  • 紛失した場合は新しいキーペアを作成する必要があります
  • 適切な権限設定(chmod 400)が必要です

 

4️⃣ 方法2:AWS CLIでキーペア作成

前提条件

  • ✅ AWS CLIがインストール済み
  • ✅ AWS CLIの初期設定(aws configure)完了
  • ✅ VSCodeなどのエディタ(推奨)

AWS CLIの設定がまだの方は、こちらの記事を参照してください。

手順1:VSCodeのターミナルを開く

VSCode起動:

# Windowsの場合
code .

ターミナルを開く:

  • ショートカット:Ctrl + J または Ctrl + @
  • メニュー:表示 → ターミナル

手順2:キーペアを作成

aws ec2 create-key-pair \
  --key-name my-ec2-key \
  --query 'KeyMaterial' \
  --output text > ~/.ssh/my-ec2-key.pem

コマンドの説明:

  • --key-name my-ec2-key:キーペア名を指定
  • --query 'KeyMaterial':秘密鍵の内容のみ抽出
  • --output text:テキスト形式で出力
  • > ~/.ssh/my-ec2-key.pem:ファイルに保存

Windowsの場合:

aws ec2 create-key-pair ^
  --key-name my-ec2-key ^
  --query "KeyMaterial" ^
  --output text > %USERPROFILE%\.ssh\my-ec2-key.pem

手順3:権限を設定

Mac/Linux:

chmod 400 ~/.ssh/my-ec2-key.pem

Windows:
VSCodeのターミナルで以下を実行:

icacls %USERPROFILE%\.ssh\my-ec2-key.pem /inheritance:r
icacls %USERPROFILE%\.ssh\my-ec2-key.pem /grant:r "%USERNAME%:R"

手順4:作成確認

aws ec2 describe-key-pairs --key-names my-ec2-key

出力例:

{
    "KeyPairs": [
        {
            "KeyPairId": "key-0123456789abcdef0",
            "KeyFingerprint": "xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx",
            "KeyName": "my-ec2-key",
            "KeyType": "rsa",
            "Tags": []
        }
    ]
}

 

5️⃣ キーペアの使用方法

EC2インスタンスへのSSH接続

キーペアを使ってEC2インスタンスに接続する基本的なコマンド:

ssh -i ~/.ssh/my-ec2-key.pem ec2-user@<EC2のパブリックIP>

例:

ssh -i ~/.ssh/my-ec2-key.pem ec2-user@54.123.45.67

SSH接続時のトラブルシューティング

エラー:「Permission denied (publickey)」

原因:

  • キーペアファイルの権限が適切でない
  • キーペア名が間違っている

解決方法:

# 権限を再設定
chmod 400 ~/.ssh/my-ec2-key.pem

# キーペア名を確認
aws ec2 describe-key-pairs

エラー:「WARNING: UNPROTECTED PRIVATE KEY FILE!」

原因:
キーペアファイルの権限が緩すぎる(Windowsでよく発生)

解決方法(Windows):

icacls %USERPROFILE%\.ssh\my-ec2-key.pem /inheritance:r
icacls %USERPROFILE%\.ssh\my-ec2-key.pem /grant:r "%USERNAME%:R"

 

6️⃣ キーペア管理のベストプラクティス

セキュリティ対策

1. 適切な保管場所

推奨:~/.ssh/ ディレクトリ
非推奨:デスクトップやダウンロードフォルダ

2. 権限設定

# 所有者のみ読み取り可能(必須)
chmod 400 ~/.ssh/my-ec2-key.pem

3. バックアップ

  • クラウドストレージ(暗号化推奨)
  • パスワード管理ツール(1Password、Bitwardenなど)
  • 外部ストレージ(暗号化USB)

4. 命名規則

良い例:
- my-ec2-production-key
- john-dev-key-2026
- company-staging-key

悪い例:
- key.pem
- test.pem
- keypair.pem

複数のキーペア管理

SSH config を活用:

~/.ssh/config ファイルを作成:

# 開発環境用
Host dev-ec2
    HostName 54.123.45.67
    User ec2-user
    IdentityFile ~/.ssh/my-dev-key.pem

# 本番環境用
Host prod-ec2
    HostName 54.234.56.78
    User ec2-user
    IdentityFile ~/.ssh/my-prod-key.pem

接続が簡単に:

# 通常
ssh -i ~/.ssh/my-dev-key.pem ec2-user@54.123.45.67

# SSH config利用
ssh dev-ec2

 

7️⃣ キーペアの削除

不要なキーペアを削除する方法

AWSコンソール:

  1. EC2ダッシュボード → キーペア
  2. 削除したいキーペアを選択
  3. 「アクション」→「削除」

AWS CLI:

aws ec2 delete-key-pair --key-name my-ec2-key

注意:

  • 削除しても既存のEC2インスタンスには影響なし
  • ただし、新しいインスタンスでは使用不可
  • ローカルの .pem ファイルは自動削除されません(手動削除が必要)

 

8️⃣ まとめ

この記事では、AWS EC2キーペアの作成方法を2つ紹介しました。

学んだこと

  • AWSコンソールでのキーペア作成:直感的で初心者向け
  • AWS CLIでのキーペア作成:自動化・スクリプト化が可能
  • キーペア管理のベストプラクティス:セキュリティと利便性のバランス

次のステップ

キーペアを作成したら、次は実際にEC2インスタンスを構築してみましょう:

  • CloudFormationでEC2構築:インフラをコードで管理
  • VSCode Remote-SSH:VSCodeからEC2に直接接続
  • Session Manager:キーペア不要の安全な接続方法

参考リンク:

関連記事:

最終更新: 2026年1月11日

コメント