環境
- macOS 14
セキュリティグループの作成
- 「EC2」→「ネットワーク&セキュリティ」→「セキュリティグループ」→「セキュリティグループを作成」クリック
- セキュリティグループ名
- 適当
- 説明
- 適当
- VPC
- 作ってなかったら作成
- インバウンドルール
- その1
- タイプ:HTTP
- ポート範囲:80
- ソース:IPv4 0.0.0.0/0
- その2
- タイプ:HTTPS
- ポート範囲:443
- ソース:IPv4 0.0.0.0/0
- その3
- タイプ:SSH
- ポート範囲:22
- ソース:IPv4 0.0.0.0/0
- その1
- アウトバウンドルール
- タイプ:すべてのトラフィック
- ポート範囲:すべて
- ソース:IPv4 0.0.0.0/0
- セキュリティグループ名
サブネットの作成
- パブリック用1つ。なければ作成
EC2 インスタンスを立ち上げる
- EC2 → インスタンス → 「インスタンスを起動」クリック
- Launch an instance
- 名前とタグ
- 名前:適当
- アプリケーションおよび OS イメージ (Amazon マシンイメージ)
- クイックスタート
- Amazon マシンイメージ (AMI):Amazon Linux 2023 AMI
- アーキテクチャ:64ビット(x86)
- クイックスタート
- インスタンスタイプ
- インスタンスタイプ:t2.nano (テストなので安いサーバー)
- キーペア (ログイン)
- キーペア:事前に作成してなければ作成して選択(RSA, .pem)
- pem ファイルを DL して保管しておく
- キーペア:事前に作成してなければ作成して選択(RSA, .pem)
- ネットワーク設定
- 「編集」クリック
- VPC:該当の VPC を選択。作ってなかったら作成
- サブネット:事前に作成したサブネットを選択
- パブリック IP の自動割り当て:無効化
- ファイアウォール(セキュリティグループ):既存のセキュリティグループを選択する
- 共通のセキュリティグループ:事前に作成したセキュリティグループを選択
- からの SSH トラフィックを許可する:チェック
- インターネットからの HTTPs トラフィックを許可する:チェック
- インターネットからの HTTP トラフィックを許可する:チェック
- ストレージを設定
- EBS ボリューム
- サイズ(GiB):8
- ボリュームタイプ:gp3
- IOPS:3000
- 終了時に削除:No
- 暗号化済み:No
- スループット:125
- EBS ボリューム
- 高度な詳細
- 難しいことはしない予定なのでスルー
- 概要
- インスタンス数:1
- 「インスタンスの起動」クリック
- 名前とタグ
SSH ログイン
EC2 → インスタンス → SSH ログインしたいインスタンスを選択 → 「インスタンスに接続」クリック -> SSH クライアント
にログイン方法書いてある。
今回は「 ssh pn.test 」と叩けばログインできるようにする。
DL した pem ファイルを /Users/アカウント に移動して権限を変更する
- ダウンロードに DL した pem ファイルがある想定
- ファイル名を ec2-test.pem にしている想定
- SSH クライアントには pem ファイルを 400 にすると書いてあるけど 600 でも動く
# or cd /Users/自分のアカウント名
$ cd
$ mv Downloads/ec2-test.pem .ssh/
$ sudo chmod 600 .ssh/ec2-test.pem
config 編集
- AMI のデフォルトユーザー名は ec2-user
$ vi .ssh/config
Host pn.test
# もしくは Hostname xx.xx.xxx.xxx
Hostname ec2-xx-xx-xxx-xxx.ap-xxxxxxxx-1.compute.amazonaws.com
Port 22
User ec2-user
IdentityFile ~/.ssh/ec2-test.pem
確認
$ ssh pn.test
普通に ssh 接続する場合
# その1
$ ssh -i "~/.ssh/ec2-test.pem" ec2-user@ec2-xx-xx-xxx-xxx.ap-xxxxxxxx-1.compute.amazonaws.com
# その2
$ ssh -i "~/.ssh/ec2-test.pem" ec2-user@xx.xx.xxx.xxx