2
1

More than 3 years have passed since last update.

[AWS_課題1]SSHアクセスできない

Last updated at Posted at 2021-05-27

環境

AWS CloudTechの実践課題1にて得られるスタック

トラブルシュートのセオリー

インフラSES在職3年程度の人間としては、以下がセオリーという肌感覚でいる。
①物理的で基本的なとこから確認していく。
②ローカルPC → 接続先に向かって実施する。

あとはAWS素人なりに可能性の高そうなとこを優先して実施した。

トラブルシュート

まずはSSHアクセスしてみるが、タイムアウトになり接続できないのでトラブルシュートしていく

1. EC2インスタンスが起動しているか

CloudTechTest 実行中
→問題無し。

2. インターネットゲートウェイはアタッチしているか

そもそもどのVPCなのかを確認。

vpc-…xxx…1acb
インタネットゲートウェイのうち、上記のVPCにアタッチしているものを確認。
igw-….xxx…e626 Attached
→問題無し。

3. Security GroupでSSHが許可されているか

実務でも、FWを通るなら最も可能性が高そうな原因であり、出題者としても出しやすい被疑箇所だ。
stack-test1-InstanceSecurityGroup-…xxx…NSFI

タイプ プロトコル ポート範囲 ソース 説明 オプション
SSH TCP 22 0.0.0.0/16

→インバウンドルールのソースがデフォルトルートでなくなっているので、0.0.0.0/0に修正
 →SSH接続してみるが繋がらない...「え!?違うの?」と思いながら答え合わせ動画を見ると、もう一つ原因があるとのこと。(どこまでも実務に近くて良い課題!!)

4. 変なACLが設定されていないか

あまり可能性は無さそうだが、FWの次に見ておくべきな気がしたので確認。

インバウンドルール

ルール番号 タイプ プロトコル ポート範囲 送信元 許可/拒否
100 HTTP (80) TCP (6) 80 0.0.0.0/0 Allow
101 SSH (22) TCP (6) 22 0.0.0.0/0 Allow
102 カスタム TCP TCP (6) 1024 - 65535 0.0.0.0/0 Allow
* すべてのトラフィック すべて すべて 0.0.0.0/0 Deny

アウトバウンドルール

ルール番号 タイプ プロトコル ポート範囲 送信先 許可/拒否
102 カスタム TCP TCP (6) 1024 - 65535 0.0.0.0/0 Allow
* すべてのトラフィック すべて すべて 0.0.0.0/0 Deny

→アウトバウンドルールで、SSHが許可されていないから戻りのパケットが拒否されてしまいそう。
 →自信が無かったのでとりあえず、答え合わせ動画を見ると原因ではなかった。
  →(追記)戻りのパケットはルール番号102によって許可されている。ポート範囲1024-65535一時ポートというもの。AWS 一時ポートについて

5. 戻りのルーティング(EC2→ローカルPC)があるか

FWの次に可能性が高そうなことだ。
答え合わせ動画で原因がこれであることを知った。
EC2インスタンスがいるサブネットのルートテーブルを確認。

送信先 ターゲット
0.0.0.0/16 igw-...xxx...e626
10.0.0.0/16 local

→送信先がFW同様に0.0.0.0/16になっているので、0.0.0.0/0に修正。

確認

最後にSSH接続して、成功した。

感想

課題を通して手を動かすことで、「あの設定はどうやって見るんだっけ?」という基本的な操作を覚えられたように感じる。
引き続きコンテンツを消化していく。

参考

この記事はAWS初学者を導く体系的な動画学習サービス
「AWS CloudTech」の課題カリキュラムで作成しました。
https://aws-cloud-tech.com

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1