オンプレミスに見立てたオハイオリージョンにVyOSインスタンスを起動して東京リージョンからVPN接続
2021/07/17
AWSクイックスタートのActive Directory Domain Services on AWSで構築した環境にVyOSを起動して、オンプレミスのルーターと見立てて、東京リージョンからVPN接続してみました。
目次
EIPの作成
VyOSで使用するEIPを作成しました。
VPN接続作成
東京リージョンにVPCを作成しました。
PublicSubnetとPrivateSubnetを1つづつ作ったシンプルな確認用VPCです。
VGWを作成して、VPCにアタッチしました。
カスタマーゲートウェイには、事前に作成したEIPを設定して動的ルーティングを設定しました。
VPN接続を作成しました。
[設定のダウンロード]からVyattaをダウンロードしました。
VyOSインスタンスの起動
AMIはコミュニティAMIで、VyOS free (HVM) 1.2.1-2019-06-04-05-21 – ami-0e2594967770e73cdを選択しました。
インスタンスタイプはt3a.microにしました。
コスト削減のため、スポットインスタンスで起動しています。
セキュリティグループは、VPCローカルからのインバウンドをすべて許可しています。
(これは要件によってもっと最小範囲にできるかもですが、とりあえずです)
ESP (50)とUDP 500をVPN接続のトンネル外部IPをソースに設定してますが、pingで検証するぐらいなら不要です。
起動後、EIPをアタッチしました。
送信先/送信元チェックの停止も忘れずに、ですね。
VyOSの設定
VyOSにはSSHで接続して設定します。
今回使用しているAMIでは、キーペアの初期ユーザはvyosでした。
VyOSの設定は、以下の2サイトを参照しました。
* VyOSを利用したVPN環境構築
* VPC間でVPN接続してみた件
ダウンロードした設定ファイルの書き換えは以下3点でした。
それぞれ2箇所づつありました。
1 2 3 4 5 6 7 8 9 |
- set protocols bgp 65000 neighbor 169.254.111.201 soft-reconfiguration 'inbound' + set protocols bgp 65000 neighbor 169.254.111.201 address-family ipv4-unicast soft-reconfiguration inbound - set vpn ipsec site-to-site peer 13.112.22.151 local-address '3.132.97.184' + set vpn ipsec site-to-site peer 13.112.22.151 local-address '10.0.151.130' - set protocols bgp 65000 network 0.0.0.0/0 + set protocols bgp 65000 address-family ipv4-unicast network 10.0.0.0/16 |
set 行をコピーペーストしました。
ちなみに、削除したいときは setの代わりにdeleteでした。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
vyos@ip-10-0-159-64$ configure [edit] vyos@ip-10-0-159-64# ~ここでコピーペースト~ # commit [edit] vyos@ip-10-0-159-64# save Saving configuration to '/config/config.boot'... Done [edit] vyos@ip-10-0-159-64# exit exit |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
$ show vpn ike sa Peer ID / IP Local ID / IP ------------ ------------- 13.112.22.151 10.0.155.215 Description: VPC tunnel 1 State IKEVer Encrypt Hash D-H Group NAT-T A-Time L-Time ----- ------ ------- ---- --------- ----- ------ ------ up IKEv1 aes128 sha1_96 2(MODP_1024) no 3600 28800 Peer ID / IP Local ID / IP ------------ ------------- 18.179.126.228 10.0.155.215 Description: VPC tunnel 2 State IKEVer Encrypt Hash D-H Group NAT-T A-Time L-Time ----- ------ ------- ---- --------- ----- ------ ------ up IKEv1 aes128 sha1_96 2(MODP_1024) no 3600 28800 $ show vpn ipsec sa Connection State Uptime Bytes In/Out Packets In/Out Remote address Remote ID Proposal ------------------------------ ------- -------- -------------- ---------------- ---------------- ----------- ---------------------------------- peer-18.179.126.228-tunnel-vti up 4m9s 15K/11K 205/149 18.179.126.228 N/A AES_CBC_128/HMAC_SHA1_96/MODP_1024 peer-13.112.22.151-tunnel-vti up 4m9s 3K/3K 52/54 13.112.22.151 N/A AES_CBC_128/HMAC_SHA1_96/MODP_1024 |
状態を確認したら、Stateがupになっていました。
東京リージョンのVPN接続もアップになっていました。
ルートテーブルの設定
東京リージョン(VGW側)
ルートテーブルで、[ルート伝播]を有効にしました。
オハイオリージョンのVPC CIDRがルートに追加されました。
オハイオリージョン(VyOS側)
手動で東京リージョンVPC CIDRのターゲットに、VyOSインスタンスのENIを設定しました。
確認
両方のパブリックサブネット(パブリックにしている理由はNATやVPCエンドポイントを使わずにSession Managerを簡単に使いたかっただけです)に相手が送信元でICMPを許可してセキュリティグループのEC2 Amazon Linux2インスタンスを起動して、pingで確認しました。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
AWS Network Firewallの入門
公式のGetting started with AWS Network Fire …
-
AWS Summit Tokyo 2017 聴講したセッションのメモ
2017年6月に参加しましたAWS Summitで聴講したセッションのメモを記し …
-
Amazon SESでメール受信
Amazon SES(Simple Email Service)にメールドメイン …
-
AWS Firewall Managerを設定して結果を確認
CloudFront対応のポリシーとして作成したかったので、Globalを選択し …
-
IAMユーザーにパスワード変更とMFA設定を許可する
組織管理のIAMで、ユーザーにMFAを使ってサインインしない限り操作は許可しない …
-
Microsoft TeamsのIncoming Webhooksを使ってAWS Lambda(Python)からFeedlyの記事を自動投稿する
Microsoft Teamsの検証を始めましたので、Slackで自動化している …
-
サービスディスカバリを使用してECSサービスの作成
ECSデベロッパーガイドのチュートリアル:サービスディスカバリを使用して、サービ …
-
AWS OrganizationsでAWSアカウントを25作りたいのでPythonで作った
AWSアカウントを25作る必要があったので、Lambda Python 3.7で …
-
SCPが影響しないサービスにリンクされたロールにEC2が引き受けるIAMロールは含まれないことを確認
ドキュメントで確認 サービスコントロールポリシーのユーザーガイドには、「SCPは …
-
AWS Organizations SCPで許可ポリシーの設定をし継承の関係を確認する
ユーザーガイドのサービスコントロールポリシーの例にはDeny(拒否)ばっかりでA …