0
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?

CloudFormation入門:AWS CloudFormationを使ったセキュリティグループの一括作成について

Last updated at Posted at 2025-03-08

はじめに

AWS CloudFormation を使用すると、インフラストラクチャをコードとして管理し、一貫した環境を構築することができます。

本記事では、CloudFormation テンプレートを用いて EC2 のセキュリティグループを作成する方法を解説します。

CloudFormation テンプレートの概要

以下の CloudFormation テンプレートでは、VPC に紐づくセキュリティグループを作成し、複数のプロトコルおよびポートに対するインバウンドルールを定義しています。

AWSTemplateFormatVersion: '2010-09-09'
Description: Create a Security Group

Parameters:
  VpcId:
    Type: AWS::EC2::VPC::Id
    Default: vpc-xxx
    Description: "VPC ID where the security group will be created"

Resources:
  MySecurityGroup:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupDescription: "Custom Security Group"
      VpcId: !Ref VpcId
      SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 445
          ToPort: 445
          CidrIp: 0.0.0.0/0
          Description: "SMB"
        - IpProtocol: tcp
          FromPort: 3268
          ToPort: 3268
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 88
          ToPort: 88
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 53
          ToPort: 53
          CidrIp: 0.0.0.0/0
          Description: "DNS"
        - IpProtocol: tcp
          FromPort: 3389
          ToPort: 3389
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 80
          ToPort: 80
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 3269
          ToPort: 3269
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 88
          ToPort: 88
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 135
          ToPort: 135
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 389
          ToPort: 389
          CidrIp: 0.0.0.0/0
          Description: "LDAP"
        - IpProtocol: udp
          FromPort: 137
          ToPort: 137
          CidrIp: 0.0.0.0/0
          Description: "NetBIOS"
        - IpProtocol: tcp
          FromPort: 464
          ToPort: 464
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 138
          ToPort: 138
          CidrIp: 0.0.0.0/0
          Description: "NetBIOS"
        - IpProtocol: tcp
          FromPort: 636
          ToPort: 636
          CidrIp: 0.0.0.0/0
          Description: "LDAPS"
        - IpProtocol: tcp
          FromPort: 389
          ToPort: 389
          CidrIp: 0.0.0.0/0
          Description: "LDAP"
        - IpProtocol: tcp
          FromPort: 53
          ToPort: 53
          CidrIp: 0.0.0.0/0
          Description: "DNS"
        - IpProtocol: udp
          FromPort: 464
          ToPort: 464
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 139
          ToPort: 139
          CidrIp: 0.0.0.0/0
          Description: "NetBIOS"
        - IpProtocol: tcp
          FromPort: 135
          ToPort: 135
          CidrIp: 0.0.0.0/0

テンプレートの説明

  1. Parameters セクション

    • VpcId はセキュリティグループを作成する対象の VPC ID を指定するパラメータ。
  2. Resources セクション

    • MySecurityGroup は EC2 のセキュリティグループを定義。
    • SecurityGroupIngress で許可するインバウンドルールを設定。
    • 各ルールで IpProtocol, FromPort, ToPort, CidrIp, Description を指定。

セキュリティの考慮点

  • CidrIp: 0.0.0.0/0 の利用に注意

    • すべての IP からのアクセスを許可するため、セキュリティリスクが高まる。
    • 制限する IP アドレス範囲を特定し、適切な CIDR を設定することが推奨される。
  • RDP(ポート 3389)の公開は避ける

    • リモートデスクトップ(RDP)のポート 3389 を全世界に公開すると、攻撃対象になりやすい。
    • 必要に応じて、特定の IP アドレスに限定することが望ましい。
  • 管理用のセキュリティグループを分離する

    • LDAP, DNS, NetBIOS などの管理用プロトコルを使用する場合、それらを専用のセキュリティグループで管理すると安全性が向上する。

まとめ

AWS CloudFormation を用いることで、一貫性のあるセキュリティグループを簡単に作成できます。

しかし、セキュリティグループの設定には慎重な設計が求められます。

本記事で紹介したポイントを参考に、安全な AWS 環境の構築を目指しましょう。

0
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
0
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?