🔥
AWS Network Firewall のルール順序を厳格(Strict Order) にするとドメインリストルールグループが使えない理由
ただ、厳格(Strict Order)にすると、当該ファイアウォール(ポリシー)に対し新規作成しようとしてもドメインリストルールグループがグレーアウトして選択できなくなっちゃうんですよね。
じゃあ既存のものを追加すればいいのでは……となりますが、既存のドメインリストルールグループを厳格(Strict Order)に追加すると、下記みたいなエラーが発生します。
ResourceArn has invalid rule order, parameter: [arn:aws:network-firewall:ap-northeast-1:*******:stateful-rulegroup/*******], context: StatefulRuleGroupReferences[1].ResourceArn
理由は簡単。
2022/08/18 時点で、ドメインリストルールグループにはルール順序を選択できる機能がありません。
ということは、ドメインリストルールグループのルール順序はデフォルトのまま、ということ。
上のエラーの通り、ルール順序が異なるステートフルルールグループはファイアウォール(ポリシー)に追加できないから、ファイアウォールポリシー側でルール順序で厳格(Strict Order)を選択した場合はデフォルトのルール順序を利用したドメインリストルールグループをアタッチできないのは……しょうがない話ですね。
「代替策は無いの!?」
となりますよね。あるんです。
Suricata互換IPSルールグループを使って……自分でルールを書けばOK。
嬉しいことにルールのサンプルを提供してくれてるので、有り難く使わせてもらいましょう。
ただ、サンプルでしかないので検証必須です。
ここの下部で既に試してますので、ご参考までに。
ただ、
pass tcp $HOME_NET any <> $EXTERNAL_NET 80 (flow:not_established; sid:4; rev:1;)
pass tcp $HOME_NET any <> $EXTERNAL_NET 443 (flow:not_established; sid:5; rev:1;)
これは
pass tcp $HOME_NET any <> $EXTERNAL_NET [80,443] (flow:not_established; sid:4; rev:1;)
にすればルール一つ節約できることに気づきました。今さら。
Discussion