ヤマムギ

growing hard days.

*

オンプレミスに見立てたオハイオリージョンに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箇所づつありました。

set 行をコピーペーストしました。
ちなみに、削除したいときは setの代わりにdeleteでした。

状態を確認したら、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認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

  関連記事

CloudFront用のAWS管理プレフィックスリストを使用しました

このブログでは、CloudFrontのカスタムヘッダーとALBのルーティングを組 …

EC2 Instance Connect エンドポイントの作成

このブログのSystems Managerは機能としてセッションマネージャーしか …

Organizations組織でAWS SSOを有効にする

先日AWS Control Towerで環境を作ったら、自動でAWS SSOがで …

AWS Toolkit for Eclipseをセットアップ(2021年版)

AWS Toolkit for Eclipseをセットアップするで6年前に書いて …

AWS CodPipelineの実行モードの動作確認しました

AWS CodePipelineの3つの実行モード(SUPERSEDED(優先済 …

Backlogの課題チケット更新内容をMicrosoft Teamsに通知する(AWS Lambda Python)

BacklogにSlack連携が追加されました。 ですが、私の所属している会社で …

AWS EC2でAMI(Amazon Machine Image)を作成しておく

前回まででひとまずRedmineを構築するところまで出来たので、念のためスナップ …

AWS Snowファミリーのジョブ作成画面を確認

使わないのですが、画面を見ておきたかったので確認しました。 Snowファミリージ …

AWS CloudHSMを起動してみました

なかなか触る機会のないサービス、CloudHSM。 起動してみました。 手順はユ …

名前解決してセッションマネージャが使えるようにVyOSのhost_name.pyを編集しました

発生したエラー セッションマネージャからこんなエラーが出力されました。 [cra …