Slide 1

Slide 1 text

プライベートサブネットにあるEC2への
 アクセス方法を整理してみた
 2021/10/14
 AWS事業本部コンサルティング部 猪股翔


Slide 2

Slide 2 text

自己紹介
 猪股 翔(inomaso) ● 2021年1月入社 (元金融系SIer)
 ● AWS事業本部コンサルティング部
 ● 好きなAWSサービス
 ○ AWS Certificate Manager
 ○ AWS Chatbot
 ● 好きなIaCツール
 ○ Terraform
 @inomasosan
 2

Slide 3

Slide 3 text

本セッションは…
 想定聴講者
 ● Web三層(ELB+EC2+RDS)の構築経験あり
 ● 踏み台サーバを使用している
 ゴール
 ● 踏み台サーバ以外のアクセス方法があることを知る
 ● アクセス方法のメリット・デメリットがわかる
 3

Slide 4

Slide 4 text

まとめ
 プライベートサブネットにあるEC2へのアクセス方法は
 主に以下の3つ
 ● AWS Systems Manager Session Manager
 (以下セッションマネージャーという)
 ● AWS ClientVPN
 ● 踏み台サーバ
 4

Slide 5

Slide 5 text

まとめ
 プライベートサブネットにあるEC2へのアクセス方法は
 主に以下の3つ
 ● AWS Systems Manager Session Manager
 (以下セッションマネージャーという)
 ● AWS ClientVPN
 ● 踏み台サーバ
 5 まずはセッションマネージャー の採用から検討しましょう!

Slide 6

Slide 6 text

6 おさらい
 プライベートサブネットって何だっけ?


Slide 7

Slide 7 text

プライベートサブネットとは
 このセッションではプライベートサブ ネットをインターネットから直接アク セスできないサブネットとします。
 ※詳細に分類するとプロテクトサブ ネットという考えもありますが、この セッションでは割愛します。
 7

Slide 8

Slide 8 text

8 1. セッションマネージャー

Slide 9

Slide 9 text

セッションマネージャーとは
 ● AWS Systems Managerの機能のひとつ
 ● AWSマネージメントコンソールやAWS CLIから、SSHやRDPなし でEC2へCLI操作が可能
 ● ProxyCommandやポート転送セッションを利用して、Linuxサーバ にSSH接続や、Windows ServerへRDP接続可能
 9

Slide 10

Slide 10 text

10 構成例
 実際に構成例を見ていきましょう


Slide 11

Slide 11 text

構成図(NatGateway)
 11 NatGatewayを利用した構成例
 
 EC2のフロントにELBを配置 し、SSL証明書運用の簡略化 やセキュリティ等を考慮した ネットワーク構成


Slide 12

Slide 12 text

構成図(NatGateway)
 12 ・セキュリティグループのアウトバウ ンドルールで、HTTPSの許可があ れば通信可能 ・ユーザがアクセスしているのは、 インスタンスではなくセッションマ ネージャのエンドポイント

Slide 13

Slide 13 text

構成図(VPCエンドポイント)
 13 VPCエンドポイントを利用した 構成例
 
 インターネットにアクセスでき ない環境で、急遽アクセスが 必要となった場合にも最小限 の設定変更で導入可能


Slide 14

Slide 14 text

構成図(VPCエンドポイント)
 14 ・セッションマネージャーと通信するために 3つのInterface型VPCエンドポイント作成  com.amazonaws.region.ssm  com.amazonaws.region.ec2messages  com.amazonaws.region.ssmmessages ・セキュリティグループのインバウンドルールに、 VPC内からのHTTPSの許可が必要 ・セキュリティグループのアウトバウ ンドルールで、HTTPSの許可があ れば通信可能 ・SSM Agent更新用に、以下のGateway型 VPCエンドポイント作成  com.amazonaws.ap-northeast-1.s3

Slide 15

Slide 15 text

メリット・デメリット
 メリット
 ● 踏み台用のEC2作成不要
 ● セッションマネージャー自体の料金無料
 ● EC2のセキュリティグループに、追加のインバウンドルール不用
 ● AWSマネージメントコンソールやAWS CLIから公開鍵認証やパスワード 認証なしで、EC2へCLI操作可能
 ● ProxyCommandやポート転送セッションで、SSHやRDP接続可能
 15

Slide 16

Slide 16 text

メリット・デメリット
 デメリット
 ● Windows ServerをGUIで操作したい場合は、ポート転送セッションによる RDP接続が必要
 ● LinuxサーバにクライアントPCからscp等でファイルコピーしたい場合 は、ProxyCommandかポート転送セッションが必須
 ● SSHやRDP接続にローカル端末でTera Termやリモートデスクトップクラ イアントを使用する場合は、AWS CLIが必要となるためIAMアクセス キーやシークレットキーを管理・運用しなければならない
 16

Slide 17

Slide 17 text

参考資料
 ProxyCommand例
 https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/session-manager-getting-sta rted-enable-ssh-connections.html
 ポート転送セッション開始方法
 https://dev.classmethod.jp/articles/ssh-through-session-manager/
 セッションマネージャーを使用してプライベートサブネットのLinux用EC2にアクセス(NAT Gateway編)
 https://dev.classmethod.jp/articles/terraform-session-manager-linux-ec2-natgateway/
 セッションマネージャーを使用してプライベートサブネットのLinux用EC2にアクセス(VPCエンドポイント編)
 https://dev.classmethod.jp/articles/terraform-session-manager-linux-ec2-vpcendpoint/
 17

Slide 18

Slide 18 text

18 2. AWS Client VPN

Slide 19

Slide 19 text

AWS Client VPNとは
 ● VPC上のAWSリソース、および VPC を経由した対向の環境への安全なアク セスを提供するマネージドなクライアントベースのVPNサービス
 ● 認証方法は以下のいずれかを選択
 ○ 相互認証(クライアント証明書認証)
 ○ AD認証
 ○ SAML経由のフェデレーション認証
 19

Slide 20

Slide 20 text

20 構成例
 実際に構成例を見ていきましょう


Slide 21

Slide 21 text

相互認証
 証明書を利用した構成例
 
 クライアント証明書やサーバ証 明書は自前で用意し、ACMへ インポートする必要有り
 21

Slide 22

Slide 22 text

相互認証
 22 ・VPNクライアントに証明書設定し VPN接続

Slide 23

Slide 23 text

メリット・デメリット
 メリット
 ● 踏み台用のEC2作成不要
 ● EC2以外にもS3やDX経由でオンプレに接続可能
 ● ローカル端末のTera Termやリモートデスクトップクライアントそのまま 利用可能
 23

Slide 24

Slide 24 text

メリット・デメリット
 デメリット
 ● 料金が最低でも$108/月は必要
 ● 相互認証の場合、クライアント証明書・サーバ証明書の発行・管理が必 要
 ● AD認証、SAML経由のフェデレーション認証も別途構築が必要
 ● 端末毎にVPNクライアントの導入準備が必要
 24

Slide 25

Slide 25 text

参考資料
 [AWS]踏み台をワンチャンなくせる!?VPC接続にClient VPNを使ってみよう
 https://dev.classmethod.jp/articles/vpc-client-vpn/
 【登壇資料】AWS Client VPN 入門 #devio2020
 https://dev.classmethod.jp/articles/developers-io-2020-connect-aws-client-vpn/
 25

Slide 26

Slide 26 text

26 3. 踏み台サーバ

Slide 27

Slide 27 text

踏み台サーバとは
 ● プライベートサブネットのEC2にログインするための中継サーバ
 ● インターネットからアクセス可能なパブリックサブネットに構築
 ● 踏み台サーバのOSにLinuxを選んでも、SSHポート転送でWindows Serverに リモートデスクトップで接続可能
 27

Slide 28

Slide 28 text

28 構成例
 実際に構成例を見ていきましょう


Slide 29

Slide 29 text

踏み台サーバ
 踏み台サーバを利用した構成 例
 
 踏み台サーバ用のEC2構築の みなので、簡単に準備できる
 29

Slide 30

Slide 30 text

補足)踏み台サーバに秘密鍵のコピーは危険
 30 https://dev.classmethod.jp/articles/bastion-multi-stage-ssh-only-local-pem/ 


Slide 31

Slide 31 text

メリット・デメリット
 メリット
 ● 簡単に構築可能
 ● オンプレの踏み台と同様に使用できる
 ● 未使用時はEC2を停止することで、コスト最小化が可能
 ● ECS + RDSのような構成の場合、RDSメンテナンス用に踏み台サーバ を構築した方が良いケース有り
 31

Slide 32

Slide 32 text

メリット・デメリット
 デメリット
 ● 継続的なサーバ管理が必要
 ● 踏み台サーバ含めた鍵の管理が必要
 32

Slide 33

Slide 33 text

33 アクセス方法の比較

Slide 34

Slide 34 text

比較表(個人的主観)
 34 セッションマネージャ Client VPN 踏み台サーバ 料金 ◎ △ ◯ 運用・管理の手間 ◎ ◯ △ (AWS側)導入容易性 ◎ △ ◎ (クライアント側)導入容易性 △ ◯ ◎ 接続可能リソース数 △ ◎ ◎

Slide 35

Slide 35 text

比較表(個人的主観)
 35 セッションマネージャ Client VPN 踏み台サーバ 料金 ◎ △ ◯ 運用・管理の手間 ◎ ◯ △ (AWS側)導入容易性 ◎ △ ◎ (クライアント側)導入容易性 △ ◯ ◎ 接続可能リソース数 △ ◎ ◎ 料金や運用面で優れており、 AWS側の導入も容易

Slide 36

Slide 36 text

比較表(個人的主観)
 36 セッションマネージャ Client VPN 踏み台サーバ 料金 ◎ △ ◯ 運用・管理の手間 ◎ ◯ △ (AWS側)導入容易性 ◎ △ ◎ (クライアント側)導入容易性 △ ◯ ◎ 接続可能リソース数 △ ◎ ◎ IAM管理やEC2以外の接続要 件あり

Slide 37

Slide 37 text

まとめ
 プライベートサブネットにあるEC2へのアクセス方法は
 主に以下の3つ
 ● AWS Systems Manager Session Manager
 (以下セッションマネージャーという)
 ● AWS ClientVPN
 ● 踏み台サーバ
 37 まずはセッションマネージャー の採用から検討しましょう!

Slide 38

Slide 38 text

本セッションは…
 想定聴講者
 ● Web三層(ELB+EC2+RDS)を構築経験あり
 ● 踏み台サーバをメインで運用している
 ゴール
 ● 踏み台サーバ以外のアクセス方法があることを知る
 ● アクセス方法のメリット・デメリットがわかる
 38

Slide 39

Slide 39 text

No content