AWS

【AWS EC2】インスタンス作成からSSH接続まで 初心者でも「繋がらない」で止まらない完全ガイド

この記事でできること

この記事では、AWS初心者の方でも

  • EC2インスタンスを立ち上げる
  • セキュリティグループを正しく設定する
  • SSH接続でサーバー内部に入る

ところまでを、実際につまずきやすいポイントを交えながら解説しています。

操作手順をなぞるだけでなく、
「なぜこの設定が必要なのか」「間違えるとどうなるのか」も理解できる構成にしています。

初めてEC2を触る方が、
「起動はできたけど接続できない」状態で止まらないことを目的とした記事です。

1.忙しい方向け:最速5ステップ接続ガイド

詳細な解説を読む時間がない方は、以下の手順で進めてください。

  1. インスタンス作成: AMI(Amazon Linux)を選択
  2. キーペア作成: .pem形式で保存(再発行不可のため注意!)
  3. ネットワーク設定: SSH(22)を「自分のIP」で許可
  4. 起動:ステータスが「実行中」になるまで待機
  5. 接続:ブラウザ上の「EC2 Instance Connect」でログイン

※接続できない場合は「11.接続できない時の解決策」を先に確認してください。

2.全体の流れ

EC2の設定は手順が多く、途中で何をしているのか分からなくなりがちです。
そのため、先に全体の流れを整理しておきます。

EC2の構築は大きく3ステップです。

前提として、AWSマネジメントコンソールにログインし、「EC2」サービスからインスタンス作成を開始しています。

①インスタンスの作成(起動) 【見出し3~8】

②セキュリティグループ設定の確認 【見出し9】

③SSH接続(サーバー内へ接続) 【見出し10】

3.名前とタグの指定、AMI(OS)の選び方

名前とタグ

サーバー名を記入。試しに作成するのなら「test-my-server」や「日付-server」など、自分が見てわかる名前であればOKです。

アプリケーションおよびOSイメージ

基本的には Amazon Linuxで問題ありません。AWSとの親和性が最も高く、無料でアップデートなどのサポートが受けられます。

クイックスタートの[Amazon Linux]をクリックしてください。

Amazon マシンイメージ(AMI)

最新版・安定版がデフォルトで選ばれています。操作は特に必要ありません。

4.インスタンスタイプの選び方

[▼]をクリックすると選択肢が出てきます。

インスタンスタイプは様々あり少しわかりにくいですが、特に注目してほしいのは

  • CPUの大きさ
  • メモリの大きさ

です。これらの選択によってインスタンスの使用料金に差が出てきます。
どんなものをサーバーの中に入れて運用するのか?で選択しましょう。

今回はテストでの作成のため「t2.nano」を選びましたが、サーバーとして使用した場合、動作はかなり重い(動かない)です。

実際にWordpress等のアプリケーションやソフトウェアを入れて試したい場合

t3.small(2GB)」または「t3.micro(1GB)」を入れてください。
t3.micro(1GB)は自動選択で指定されているように、実用の最低ラインです。

※インスタンスタイプは後から変更可能です。ただし変更する際は一度インスタンスを停止する必要があるためご注意下さい。

5.キーペアの設定

[新しいキーペアの作成]をクリックします。

キーペアを作成していきましょう。1つずつ解説していきます。

①キーペア名

なんでもいいです。日付やサーバーの用途など、このサーバーの鍵だとわかるような名前がいいでしょう。

②キーペアのタイプ

どちらでも問題ないことが多いのですが、RSAよりも安全度が高く処理が高速なため、「ED25519」を選択します。

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

.pemで大丈夫です。昔は AWS 側で形式を選ぶことはできませんでしたが、最近できるようになったようです。
仮にPuTTYを使いたくなったとしても、後から.ppk に変換できるため、とりあえず.pemにしておきます。

注意: キーペアは作成時に一度しかダウンロードできません。紛失するとサーバーに入れなくなるため、大切に保管してください。

6.ネットワーク設定

次にネットワーク設定をしていきます。ここが一番ややこしいですが、解説していきます。

①ファイアウォール(セキュリティグループ)

始めてインスタンスを立ち上げるため、[セキュリティグループを作成]を選択します。

②SSH接続の許可

サーバー内に入って操作ができる人を指定します。
0.0.0.0/0にしてしまうと世界中の人がサーバー内に入れてしまうため、「自分のIP」を指定します。

③インターネットからの閲覧の許可

「インターネットからのHTTPSトラフィックを許可」
「インターネットからのHTTPトラフィックを許可」
これにチェックを入れると、ネット検索で「https://パブリックIP」、「http://パブリックIP」を入力した場合に閲覧できます。

今回は試しでインスタンスを作成するため、触らなくてOKです。

7.ストレージ(EBS)の設定

特に変更する必要はありません。

8.インスタンスの起動

一通り設定できたら、インスタンスを起動します。

画面が自動で遷移します。

「インスタンスの起動を正常に開始しました」と出ればOKです。
右下[すべてのインスタンスを表示]をクリックし、インスタンス一覧画面に行きます。

9.インスタンスの起動の確認、セキュリティグループの設定の確認

インスタンスの画面に戻ってきました。

インスタンスが表示されており、無事生成されたようです。

ただし、ステータスチェックが完了しない限り、サーバーの中に入ることはできません
(私のPCでは2~3分かかりました)

そのため、ステータスチェックが終わるまでの間、セキュリティグループの設定がちゃんとできているか確認をしておきましょう。

生成されたインスタンスをクリックしてください。インスタンスの下側に詳細画面が出てきます。

[セキュリティ]をクリックして、「セキュリティグループ」を確認してください。

特定するため、名前かIDのどちらかを覚えた状態で、セキュリティグループに移動します。

「ネットワーク&セキュリティ」の「セキュリティグループ」まで移動します。

先ほど確認したセキュリティグループ名を参照し、今のインスタンスに使われているセキュリティグループをクリックします。

インバウンドルールの

  • タイプが「SSH」になっているか
  • プロトコルが「TCP」になっているか
  • ポート範囲が「22」になっているか
  • ソースが「自分のIP」になっているか

を確認してください。どれか1つでも抜けていると、うまく接続できません。

できていなかった場合は[インバウンドのルールを編集]より変更してください。

10.SSH接続方法

インスタンス画面に戻るとステータスチェックが「完了」になっています。

いよいよSSH接続をしてみましょう。インスタンスを選択した状態で[接続]をクリックします。

インスタンスID(名前)が間違っていなければ、右下の[接続]をクリックします。

黒い画面になり、鳥が出てくれば接続成功です。

「exit」と入力するとログアウトできます。

11.接続できない時の解決策

ちなみにですが、私は上記で失敗しました。。。

以下のようなエラーとなり、うまく接続できませんでした。

こうなった場合、まずは「自分のIP /32」が実際の送信元IPと違うことを疑いましょう。

「AWSが認識しているあなたのIP」と「PCが実際に使っているIP」にズレが生じている可能性が高いためです。

解決手順

セキュリティグループの設定まで戻ります。

設定しているセキュリティグループを選択し、[インバウンドルール]をクリック、[インバウンドのルールを編集]をクリックします。

ソースを[カスタム]、IPアドレスを「0.0.0.0/0」に変更します。

できたら[ルールを保存]で保存します。

インバウンドルールのソースが「0.0.0.0/0」になっていることを確認します。

OKだったら再度インスタンスに戻り、[接続]をクリックして接続してみます。

今回は無事、接続に成功しました。

しかしこのままでは、全てのIPアドレスから接続が可能であり、セキュリティ的に良い状態とは言えません。

そこで、自分の正しいIPアドレスを知り、それをセキュリティグループに反映させる必要があります。

IPアドレスを知るために、コマンドを入力します。

echo $SSH_CLIENT」(「今この SSH 接続をしてきた相手の情報を入れている環境変数」です)

すると、「203.xxx.xxx.45 52344 22」みたいな、IPアドレスっぽい数字が返ってきます。

これを書き留めて、セキュリティグループに反映しましょう。

上記の画面は「exit」と入力することでログアウトできます。

セキュリティグループに戻り、先ほどと同じように[インバウンドのルールを編集]から設定を変更します。

設定後、再度インスタンスを接続し、問題なく繋がるか確かめます。

今回も無事、SSH接続することができました。

12.まとめ

EC2インスタンスの立ち上げからSSH接続までは、
一つひとつの設定自体は難しくありませんが、少しの設定ミスで接続できなくなるのが特徴です。

特に重要なポイントは以下です。

  • キーペアは再ダウンロードできない
  • セキュリティグループのSSH設定が最重要
  • 「自分のIP」が正しく設定されていないと接続できない
  • 接続できたら、必ず不要な許可は閉じる

今回のように一度は 0.0.0.0/0 で接続確認を行い、
その後に正しいIPアドレスへ戻す、という手順も現実的な対処方法です。

EC2は自由度が高い分、
「何が原因で繋がらないのか」を切り分けられるようになることが重要です。

この手順を一度経験しておけば、
次回以降のインスタンス作成やトラブル対応が格段に楽になります。

とにかく最短で構築したい方は、こちらの簡易手順も参考にしてください。

TOP