今回は『Name』というキーに『sample-bastion』という値を設定しました。セキュリティグループの設定をします。『既存のセキュリティグループを選択する』を選択し、先ほど作成した踏み台サーバー用のセキュリティグループにチェックをつけます。以上でインスタンスの設定が完了です。インスタンスの詳細確認後、問題がなければ『起動』を選択します。『起動』を選択するとキーペアの設定画面が表示されます。『新しいキーペアの作成』を選択し、任意のキーペア名を設定後、『キーペアのダウンロード』を選択します。今回はsample-bastionという名前のキーペアを作成しました。キーペアのダウンロード完了後、『作成』を選択します。以下のようにインスタンスが作成され、ステータスチェックが全てパスされていればOKです。Webサーバーを作成する踏み台サーバーと同様の手順で今度はWebサーバーを作成していきます。『セキュリティグループ』および『サブネット』はプライベート用のものを指定します。プライベートサブネットなので『自動割り当てパブリックIP』は『無効』で問題ありません。キーペアは踏み台サーバーとは別のキーペアを作成します。今回はsample-webという名前のキーペアを作成しました。インスタンス名はsample-webとしています。動作確認ここまでで冒頭で紹介したAWSの環境を構築することができました。踏み台サーバーへSSH接続できることを確認EC2作成時にダウンロードしたキーを利用してEC2にSSH接続できるか確認してみましょう。SSH接続をする際に必要になるパブリックIPはEC2インスタンスの詳細で確認ができます。ダウンロードしたpemキーのパーミッションを変更し、以下のコマンドでEC2インスタンスにログインできればOKです。Linuxイメージの初期ユーザー名です。踏み台サーバーを経由してWebサーバーへSSHする方法は以下の2通りです。踏み台サーバーにWebサーバーの秘密鍵をアップロードし、踏み台サーバーからSSH接続するsshコマンドのProxyCommandオプションを利用してローカル環境からSSH接続する(多段SSH)今回はProxyCommandオプションを利用した多段SSHを利用して、踏み台サーバー経由でWebサーバーにSSH接続してみたいと思います。多段SSHを行う際、WebサーバーのプライベートIPが必要になります。プライベートIPはEC2の詳細で確認できます。実行するコマンドは下記の通りです。sample-bastion.pemは踏み台サーバーの、sample-web.pemはWebサーバーの秘密鍵です。AMI___|\___|___|https://aws.amazon.com/amazon-linux-2/~/.ssh/configファイルに下記を追加することで多段SSHをシンプルに表現することができます。%h:%p~/.ssh/configファイルが正しく設定されていれば下記のコマンドでWebサーバーに多段SSH接続できるようになります。AMI___|\___|___|https://aws.amazon.com/amazon-linux-2/Webサーバーからインターネットへアウトバウンド通信できることを確認Webサーバーにログインしたらyumコマンドが実行できるか確認してみます。Gatewayの設定は正しくされていればコマンドが実行できるはずです。EC2環境の構築手順の紹介を終わります。今回構築した環境をまとめると以下のようになります。sample-webなお、今回はプライベートサブネットに配置したEC2をWebサーバーと呼びましたが、プライベートサブネットへHTTP(S)接続する方法については言及していません。Webサービスを稼働させるための環境としてはまだ不十分です。Balancer(ALB)やCLB(CLB、旧ELB)をパブリックサブネットに配置する手法などが挙げられます。プライベートサブネットにWebサーバーを配置する際は、HTTP(S)接続の導線も忘れずに設定しておきましょう。EC2にALBを導入し、Webサーバーのロードバランシングを実現する手順』で紹介しているので参考にしていただければと思います。今回利用したNatGatewayですが、NatGatewayはAWSの無料利用枠対象外で、起動しているだけで課金(東京リージョンの場合0.062USD/h)されます。1ですので、勉強のために作成したNatGatewayは不要になった時点で削除することをオススメします。↩RECOMMENDインフラAWSツイートシェアはてブ1送るPocket4プロフィールnishina大企業、ベンチャーと色々なところでWebエンジニアやっています。退職手続きから案件参画まで。人気の記事iPhoneの連絡先の保存がうまくできない!?原因は同期設定かも。