AWS×VPN

253ab1300a7e9526141c2f15d3cb4ae7?s=47 Shinya Omori
September 13, 2020

 AWS×VPN

JAWS SONIC 2020

253ab1300a7e9526141c2f15d3cb4ae7?s=128

Shinya Omori

September 13, 2020
Tweet

Transcript

  1. “ AWS× VPN" JAWS-UG会津

  2. 2 ⼤森 信哉 @shinpy 株式会社アトミテック クラウド事業 を担当 福島県会津若松市 在住(フル・リモート) ※超運動不⾜中

    インフラエンジニア兼エバンジェリスト 好きなサービス:S3
  3. 3 @Cloudii_jp https://cloudii.jp/ ※近⽇リニューアル予定!! ハッシュタグ #Cloudii Cloudii Blog AWS案件も取り扱ってます!!

  4. 4 会津⽀部 JAWS-UG 会津 第1回 勉強会 • 2013年8⽉10⽇開催 https://peatix.com/event/15727?lang=ja 発⾜からなんだかんだで7年!!

  5. 5 会津⽀部 (吉田 真吾さんより)

  6. 6 “ AWS × VPN " • コロナ情勢もあり、リモートワークが増えた • ⾃宅からクラウド環境へセキュアに接続したい

    • 安価で⼿軽にクライアント・リモートVPN環境を構築したい ※UTMまではいらない、、、 • OpenVPNを採⽤ ※ (https://openvpn.net/ ) GPLライセンスで公開されているオープンソースのVPNソフトウェア
  7. 7 • スタートアップ企業からVPN環境構築依頼(初OpenVPN) • ⽇本とヨーローッパ諸国のエンジニアが利⽤する環境にVPNしたい • ⼈数は少ないので、EC2(Amazon Linux)にOpenVPNを設定しコストを抑える • フランクフルト・リージョンに1⽇で環境構築

    最初の案件 public subnet AWS Cloud VPC EC2 OpenVPNサーバー Internet Internet gateway private subnet SV等 【お客様】 K2 Vision 合同会社 様 モバイルサービス開発とビッグデータ 分析の基盤構築やコンサルの仕事をメ インに活動 https://k2-vision.jp/about.html
  8. 8 「公式サイトから抜粋」 AWS Client VPN は、オンプレミスネットワーク内の AWS リソースに安全にアクセス できるようにする、クライアントベースのマネージド VPN

    サービスです。クライア ント VPN を使⽤すると、OpenVPN ベースの VPN クライアントを使⽤して、どこか らでもリソースにアクセスできます。 https://docs.aws.amazon.com/ja_jp/vpn/latest/clientvpn-admin/what-is.html • ある程度の接続数がある。 • VPNサーバーをマネージドにしたい。 • 証明書もAWS内で管理したい。 • 少しでもGUIが欲しい。 AWS Client VPN AWS Client VPN
  9. 9 AWS Client VPNを⾒てみよう(´・Д・)」

  10. 10 subnet AWS Cloud VPC WEB01 WEB02 Internet Internet gateway

    Client VPN Endpoint AWS Certificate Manager サーバー証明書 クライアント証明書 10.11.0.0/16 10.11.0.0/24 172.18.0.0/16 10.11.0.100/24 10.11.0.110/24 subnet 10.11.1.0/24 WEB03 10.11.1.10/24 NAT Gateway Internet 今回準備した仮構成 • 2つのサブネットに接続許可 • WEB01への接続NG • WEB03のようにプライベート サブネット環境にも接続許可 • スプリットトンネル:有効 VPNユーザー
  11. 11 ⽐較ポイント OpenVPN サーバー AWS Client VPN vs 1.構築難易度 ※個⼈的主観

    • どちらかといえばAWS Client VPNのほうが敷居が低い • 初めての⽅はGUIあると優しいかも? ※画⾯が更新されると(ry その時はCLI対応しておく • 公式マニュアルが分かりやすい • AWS強者の⽅々がブログ等でUPされているので参考になる 2.構築速度 • ベースとなるサーバー構築が不要で、⼿軽に構築できる ※慣れですが、、、 OpenVPN サーバー AWS Client VPN vs
  12. 12 ⽐較ポイント OpenVPN サーバー AWS Client VPN vs 3.コスト ※個⼈的主観

    • AWS Client VPNはマネージドなだけあって、OpenVPNサーバー 単体よりは割⾼になる。 • マネージド・サービスにすることにより運⽤コストは下がる • パターンによりコストが変わってくる ※VPNクライアント接続数、接続先サブネット数、運⽤⼿間等 OpenVPN サーバー AWS Client VPN vs 4.詳細な要件対応 • AWS Client VPNでは提供していない利⽤⽅法が出てきた時の適 応性はOpenVPNサーバー単体のほうが勝っている。 • どんなパターン例があるかは⼀例を次のスライドで紹介
  13. 13 「接続ユーザ毎に接続サーバへのより詳細な接続制限をする」 ※接続ユーザー毎にログイン画⾯を変更したいという要望 • ユーザーAはWEBサーバーの「TCP/81」へのみ接続OK • ユーザーBはWEBサーバーの「TCP/82」へのみ接続OK 「設定⽅法」 • ユーザー毎にVPN接続時に配布するIPを予め予約

    • OpenVPNサーバーのiptablesで接続制限設定 ユーザーA ユーザーB WEBサーバー ( 10.11.1.10 ) OpenVPN サーバー OpenVPNでの詳細要件パターン例 ・ユーザーA専⽤画⾯を閲覧 ・VPN IP=172.18.0.10を配布 172.18.0.10のVPNクライアントは 「http://10.11.1.10:81」のみ接続可 ・ユーザーA専⽤画⾯を閲覧 ・VPN IP=172.18.0.10を配布 172.18.0.10のVPNクライアントは 「http://10.11.1.10:82」のみ接続可
  14. 14 まとめ • 要件やコストを考慮しながら「AWS Client VPN」or「OpenVPNサーバー」を決定 • 運⽤コスト削減したい!マネージド!=「AWS Client VPN」

    • より詳細な設定をしたい!他クラウドでも設定継承して利⽤したい!=「OpenVPNサーバー」 • ネット上に⽂献も沢⼭あるので検討の⼀つとして、「OpenVPN」を (´・Д・)」
  15. ご清聴ありがとうございました(´・Д・)」 JAWS-UG会津