AWS PrivateLinkとは
-
AWS PrivateLink は、トラフィックをパブリックインターネットに公開することなく、VPC、AWS のサービス、およびオンプレミスネットワーク間のプライベート接続を提供します。
- AWS PrivateLink を使用すると、さまざまなアカウントや VPC 間でサービスを簡単に接続して、ネットワークアーキテクチャを大幅に簡素化できます。
- AWS PrivateLinkは、概念的な言葉で、AWS Consoleに直接的に見たり操作したりできないです。
- ドキュメント
- AWS PrivateLink の料金
- AWS PrivateLink と統合できる AWS のサービス
Private LinkとVPC Endpoint
インターフェイス VPC エンドポイント
設定
- Subnet
- Private Subnetを進める
- Security Group
- 通信をBoundできる
- 普段はHTTPSのInBoundを許可する
- エンドポイントポリシー
- 通知
構成図
Gateway Load Balancer エンドポイント
Gateway エンドポイント
- ゲートウェイエンドポイントは AWS PrivateLink を有効化しません。
CloudformationでSSM用VPC Endpointを構築してみる
ssm_vpce.yml
AWSTemplateFormatVersion: "2010-09-09"
Description:
SSM VPC Endpoint
Resources:
SsmVpcEndpointSG:
Type: "AWS::EC2::SecurityGroup"
Properties:
VpcId: vpc-xxxxxx
GroupName: "ssm-vpce-sg"
GroupDescription: "ssm-vpc-endpoint-sg"
SsmVpcEndpointSGIngress1:
Type: "AWS::EC2::SecurityGroupIngress"
Properties:
GroupId: !Ref SsmVpcEndpointSG
IpProtocol: tcp
FromPort: 443
ToPort: 443
CidrIp: 172.16.0.0/16
SsmVpcEndpoint:
Type: AWS::EC2::VPCEndpoint
Properties:
ServiceName: !Sub "com.amazonaws.${AWS::Region}.ssm"
VpcEndpointType: Interface
PrivateDnsEnabled: true
VpcId: vpc-xxxxxx
SubnetIds:
- subnet-xxxx
SecurityGroupIds:
- !Ref SsmVpcEndpointSG
PolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Principal: '*'
Action:
- "ssm:GetParameters"
- "ssm:GetParameter"
Resource:
- !Sub "arn:aws:ssm:${AWS::Region}:${AWS::AccountId}:parameter/*"