サンプル集  >  other  >  AWSの2つのアカウント間の通信
AWSの2つのアカウント間の通信
2025/12/21

AWSの2つのアカウント間の通信をしてみます。


送信側のアカウントをAccount A、受け側のアカウントをAccount Bとします。

Account B(受け側のアカウント)の設定
  1. EC2の作成
  2. NLBの作成
  3. VPC Endpoint Serviceの作成
Account A(送信側のアカウント)の設定
  1. EC2の作成
  2. VPC Endpointの作成
それぞれの設定
  1. Account BのEC2の80ポート許可設定
  2. Account AのEC2の80ポート許可設定
  3. 接続テスト

EC2の作成

EC2を開きインスタンスの起動をクリックします。


以下の情報を入力しインスタンスを起動をクリックします。

名前myapp-web-dev-account
Amazonマシンイメージ(AMI)Amazon Linux 2023 kernel-6.1 AMI
インスタンスタイプt3.micro
キーペア名《新しいキーペアの作成》
myapp-web-dev-account-key
ネットワークvpc-*************8f08
セキュリティグループ《作成》
launch-wizard-1
ストレージ1x 8 GiB gp3


インスタンスが起動しました。


apacheのインストールをします。

sudo yum update -y
sudo yum install -y httpd
sudo systemctl start httpd
sudo systemctl enable httpd
cd /var/www/html/
echo "Hello from EC2!" | sudo tee /var/www/html/index.html

参考: AWS EC2+apache

NLBの作成

左のメニューでロードバランサーをクリックします。


ロードバランサーの作成をクリックします。


Network Load Balancerの作成をクリックします。


以下の情報を入力し下にスクロールさせます。

ロードバランサー名nlb-myapp-web-dev-account
スキームインターネット向け
ロードバランサーのIPアドレスタイプIPv4
VPCvpc-*************8f08
アベイラビリティゾーンとサブネット
ap-northeast-1a (apne1-az4)subnet-0d25310d8a5572bd0
ap-northeast-1c (apne1-az1)subnet-0ce473a651e26e8d6
セキュリティグループ《新しいセキュリティグループを作成》


インバウンドルールのルールを追加をクリックします。


セキュリティグループを作成をクリックします。

セキュリティグループ名SG-nlb-myapp-web-dev-account
説明Connect from Account A


下にスクロールさせていきターゲットグループを作成をクリックします。


以下の情報を入力し次へをクリックします。

ターゲットの種類インスタンス
ターゲットグループ名tg-ec2-account-b
VPCvpc-*************8f08


次へをクリックします。


ターゲットグループの作成をクリックします。


ターゲットグループが作成されました。


ロードバランサーの作成をクリックするとロードバランサーが作成されました。


VPC Endpoint Serviceの作成

VPCを開きます。


左のメニューでエンドポイントサービスをクリックします。


エンドポイントサービスを作成をクリックします。


以下の情報を入力し作成をクリックします。

名前account-b-endpoint-service
ロードバランサータイプネットワーク
使用可能なロードバランサーnlb-myapp-web-dev-account
エンドポイントの承諾が必要チェックを外す

エンドポイントサービスが作成されました。


プリンシパルを許可タブをクリックしプリンシパルを許可をクリックします。


ARNにAccount Aの情報を入力しプリンシパルを許可をクリックします。

arn:aws:iam::8**********8:root


正常に許可されました。


エンドポイントサービスのサービス名をメモしておきます。

com.amazonaws.vpce.ap-northeast-1.vpce-svc-*************bc93

EC2の作成

EC2を開きインスタンスの起動をクリックします。


以下の情報を入力しインスタンスを起動をクリックします。

名前myapp-web-dev-shop
Amazonマシンイメージ(AMI)Amazon Linux 2023 kernel-6.1 AMI
インスタンスタイプt3.micro
キーペア名《新しいキーペアの作成》
myapp-web-dev-shop-key
ネットワークvpc-*************83c5
セキュリティグループ《作成》
launch-wizard-1
ストレージ1x 8 GiB gp3


インスタンスが起動しました。


VPC Endpointの作成

VPCを開きます。


左のメニューでエンドポイントをクリックします。


エンドポイントを作成をクリックします。


以下の情報を入力し作成をクリックします。

名前account-a-vpce
タイプNLBとGWLBを使用するエンドポイントサービス
VPCvpc-*************83c5


Account Bで作成したエンドポイントサービスのサービス名を入力しサービスの検証をクリックします。


接続するサブネットをチェックします。


セキュリティグループをチェックしエンドポイントを作成をクリックします。


ステータスが保留中になっています。


Account Bのエンドポイントサービスを開きます。


エンドポイントサービスを開きます。 Account Bでエンドポイントサービスを作成する際にエンドポイントの承諾が必要のチェックを外したので特に承認待ちはなさそうです。


Account Aをリロードしたらステータスが使用可能になっていました。


Account BのEC2の80ポート許可設定

Account BのEC2インスタンスを開きセキュリティグループをクリックします。


HTTPの設定を追加しルールを保存をクリックします。


ルールが変更されました。


Account AのEC2の80ポート許可設定

Account Aのインスタンスにも80ポートの許可を設定します。

Account AのEC2インスタンスを開きセキュリティグループをクリックします。


ルールが変更されました。


アウトバウンドルールにも80ポートを追加します。


ルールが変更されました。


接続テスト

Account AのVPCエンドポイントのDNS名をメモします。


Account AのEC2へssh接続し、Account Bへ接続するためにAccount BにつながっているAccount Aのエンドポイントへ80ポートにcurlコマンドを実行してみます。

$ curl vpce-*************108b-********.vpce-svc-*************bc93.ap-
northeast-1.vpce.amazonaws.com:80

curl: (28) Failed to connect to vpce-*************108b-********.vpce-
svc-*************bc93.ap-northeast-1.vpce.amazonaws.com port 80 aft
er 264098 ms: Could not connect to server

タイムアウトしました。

Account BのNLBのセキュリティをAccount AのVPCのCIDR範囲に変更してみます。


再度接続を試みましたが同じ結果でした。

Account BのEC2のNLBのターゲットグループを開きターゲットを登録をクリックします。


インスタンスをチェックし保留中として以下を含めるをクリックします。


保留中のターゲットの登録をクリックします。


正常に登録されました。


再度実行してみます。

$ curl vpce-*************108b-********.vpce-svc-*************bc93.ap-
northeast-1.vpce.amazonaws.com:80
Hello from EC2!

正常に動作しました!

▲ PageTop  ■ Home


Copyright (C) 2025 ymlib.com