(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【AWS】CUIにてNetworkACLで特定通信をブロックする

スポンサーリンク

やりたいこと

awscliを利用し、特定のIPアドレスからの通信を拒否する。尚、通信はサブネットをまたぐ通信とする。

環境情報
$ python3 --version
Python 3.8.16

やり方

サブネットに紐づくNetwork ACLのIDを利用し、以下のように設定を行う。(インバウンドであれば--ingress

$ aws ec2 replace-network-acl-entry --egress --network-acl-id xx --rule-number  10 --protocol -1 --rule-action deny --cidr-block 10.xx.xx.xx/32

尚、設定を戻して許可を行なう場合は以下のように--rule-actionallowとする。

$ aws ec2 replace-network-acl-entry --egress --network-acl-id xx --rule-number  10 --protocol -1 --rule-action allow --cidr-block 10.xx.xx.xx/32

補足

Network ACLのIDを引数にして設定情報を確認すると

$ aws ec2 describe-network-acls --network-acl-ids acl-xx

JSON形式で表示されます。Protocolの-1は「全ての通信」を指します。

{
    "NetworkAcls": [
        {
            "Associations": 
...,
            "Entries": [
                {
                    "CidrBlock": "10.X.X.X/32",
                    "Egress": true,
                    "Protocol": "-1",
                    "RuleAction": "allow",
                    "RuleNumber": 10
                },...

以上、ご参考になれば幸いです。