1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【AWS】Lambdaから固定IPで他システムをアクセスする

Last updated at Posted at 2024-11-12

AWS Lambdaから他システムにアクセスしたいが、相手側がホワイトリストやACLをかける場合、AWS LambdaのIPを固定しないといけません。ここではその設定方法をまとめてみます。

概要

完成図は以下になります。

vpc.drawio (1).png

用語

  1. VPC(Virtual Private Cloud)
    AWS専用の仮想ネットワーク。
  2. インターネットゲートウェイ
    VPCをインターネット接続できるようにする機能です。
  3. ルートテーブル
    サブネット内の通信がどの宛先のネットワークに対して、どのコンポーネント(IGWとかEC2とか)に転送されて欲しいかを設定します。
  4. Elastic IP(固定IP)
  5. NATゲートウェイ
    アドレス変換を行うためのコンポーネントです。
    パブリックサブネットに設置し、プライベートサブネットから外部への通信ができるようにNATする時に使用します。

前提

Lambdaが作成されていること

手順

  1. VPC作成
  2. インターネットゲートウェイ作成
  3. public/privateサブネット作成
  4. ルートテーブル作成(publicとprivate)
  5. publicルートテーブル編集
  6. NATゲートウェイ作成(固定IPを割り当て)
  7. privateルートテーブル編集
  8. セキュリティーグループ作成
  9. Lambda CloudFormationの編集

VPCの作成

VPC Console画面のメニューからVPCを作成する
スクリーンショット 2024-11-12 15.55.11.png

インターネットゲートウェイ作成

Console画面からインターネットゲートウェイを作成する
スクリーンショット 2024-11-12 16.28.23.png
先ほど作ったVPCにアタッチ
スクリーンショット 2024-11-12 16.30.23.png

public/privateサブネット作成

スクリーンショット 2024-11-12 16.34.31.png

ルートテーブル作成(publicとprivate)

publicとprivateのルートテーブルを作成する
スクリーンショット 2024-11-12 16.45.48.png

publicルートテーブル編集

対象ルートテーブルを選択し、「ルートを編集」ボタンを押して編集し、インターネットゲートウェイのルートを追加する
スクリーンショット 2024-11-12 17.03.26.png
スクリーンショット 2024-11-12 17.02.22.png

NATゲートウェイ作成(固定IPを割り当て)

スクリーンショット 2024-11-12 16.55.52.png

privateルートテーブル編集

先ほど作ったNATゲートウェイをprivateルートテーブルに追加
スクリーンショット 2024-11-12 17.00.28.png

セキュリティーグループ作成

Console画面から対象VPCのセキュリティーグループを作成する。
インバウンドルールは作成した後に追加(セキュリティグループID必要ため)

Lambda CloudFormationの編集

対象LambdaのCloudFormationにVpcConfigの属性を追加

VpcConfig: {	
  "SubnetIds": [	
    "subnet-000000000"	
  ],	
  "SecurityGroupIds": [	
    "sg-00000000000"	
  ]	
},	
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?