OPNSense ファイアウォールのスケジュールルールが機能しない

OPNSense ファイアウォールのスケジュールルールが機能しない

VM (10.0.64.43/27) のインターネット アクセスのスケジュールを作成しました。ルールは WAN インターフェイスに実装されていますが、機能していないようです。インターネット アクセスは毎週月曜、木曜、日曜の 21:30 から 21:45 まで許可されるはずですが、VM は常時インターネットにアクセスできます。

スケジュール -https://i.ibb.co/qm5FCMF/スケジュール.png

WANルール -https://i.ibb.co/TgxLTY7/WAN-Rules.png

ルール無効 -https://i.ibb.co/QcBzVpD/スケジュール失敗.png

パケットが WAN に到達する前に NAT が 10.0.64.0/27 ネットワークに適用されているため、ルールが無効になっている可能性があります。

この場合、何が問題になる可能性があるか考えてください。

アップデート

送信元と宛先に関連して、ファイアウォールの内と外を理解するのが困難でした。

私が理解したことはすべて実装しましたが、スケジュールされたルールの一部のみが有効であり、ネットワーク 192.168.28.0 にはスケジュールされたインターネット アクセスがあり、正常に動作します。ネットワーク10.0.64.0は有効ではないようです

クライアントVMのインターネットルートを含むネットワーク全体 -https://i.ibb.co/9gHG3y3/Dell-Network.png

クライアントからのTracert(192.168.1.21は1_dellインターフェースですそして192.168.47.2はVMware WorkstationのNATネットワークです) -https://i.ibb.co/PG8YKs5/W10-Tracert-Internet.png

スケジュール -https://i.ibb.co/JFqL03v/スケジュール.png

予定通りインターネットのないサーバー -https://i.ibb.co/HVbMPcv/Server-No-Internet.png

RFC1918 ネットワークのエイリアス -https://i.ibb.co/9HXZ7t0/RFC1918.png

10.0.64.32 /27 のインターネット ルール -https://i.ibb.co/9Wn5RQv/firewallwm-RFC1918.png

インターネットはまだアクセス可能 -https://i.ibb.co/TB7jRhd/W10-インターネット.png

WANルール -https://i.ibb.co/YN28rzs/firewallwm-WAN-Rule.png

私のルールが間違っているのか、それとも実装方法がわからない不具合なのかはわかりません。

答え1

デフォルトのルールがあります「ファイアウォール ホスト自体から何かを放出する」確認するにはフローティングファイアウォールのルール。

ルールは、特定の時間間隔でトラフィックを許可するように指示するだけです。また、これを「最初の一致」として構成しました。ファイアウォールは、ルールに従って次のように動作します。

  1. ルールを適用するための条件をチェックします(スケジュール、ソース、宛先、ゲートウェイなど)
  2. 条件が満たされた場合、トラフィックを許可し、ルールの処理を停止します
  3. 条件が満たされない場合は、ルールの処理を続行します
  4. 最終的には「ファイアウォールホスト自体から何も出さない」というトラフィックを許可する処理が行われます。

したがって、ファイアウォールはトラフィックをブロックすることはなく、「再度」許可するだけです。

これを解決するには、スケジュールを と の 2 つの間隔に変更します。 00:00 to 21:29また21:46 to 23:59、ファイアウォール ルールのアクションをblockまたはに変更しますreject

こうすることで、トラフィックをブロックするルールが設定されます。

答え2

したがって、私はこの質問にうまく答えた Eduardo と競争するためではなく、適切な形式でオプションを説明するために回答を追加します。

前述したように、スケジュール付きのルールは、現在の時刻がスケジュールで定義された時間内に該当する場合にのみアクティブになります。スケジュールでは、ブロックまたは許可は考慮されません。

また、すべてのトラフィックを許可するデフォルトの許可ルール ( ALLOW From Any To Any on Any Port using Any Protocol at Any Time) があることにも注意してください。トラフィックの処理方法を変更する場合は、ブロック ルールを使用してのみ変更でき、ブロック ルールはデフォルトのルールの前にリストされている必要があります。すべてが許可されているため、許可ルールでは処理方法を変更できません。どのルールがトラフィックを処理したかに関係なく、最終結果は同じになります。

やりたいことを実現するには2つの方法があります。

これは Eduardo が提案したものです。 1 つのスケジュールに 2 つのタイムスパンを設定できるなら、これは素晴らしいアプローチです。 すっきりしていいですね。

Block From <VMSubnet> To Any on Any Port using Any Protocol at 00:00:00 - 21:29:59 or 21:45:00 - 23:59:59
ALLOW From Any To Any on Any Port using Any Protocol at Any Time
  • トラフィックが VM 以外の IP から来ている場合は許可されます (デフォルトのルール)
  • 22:50 に VM IP からトラフィックが送信された場合はブロックされます (スケジュール ルール)
  • トラフィックが 21:35 に VM IP から来ている場合は許可されます (デフォルト ルール)

もう 1 つの方法は、VM からのすべてのトラフィックを常にブロックするブロック ルールと、スケジュールされたウィンドウ中にトラフィックを許可する許可ルールを追加することです。その場合、スケジュールは 21:30 ~ 21:45 になります。

Allow From <VMSubnet> To Any on Any Port using Any Protocol at 21:30:00 - 21:45:00    
Block From <VMSubnet> To Any on Any Port using Any Protocol at Any Time
ALLOW From Any To Any on Any Port using Any Protocol at Any Time
  • トラフィックが VM 以外の IP から来ている場合は許可されます (デフォルトのルール)
  • トラフィックが 21:31 に VM IP から来ている場合は許可されます (スケジュールされたルール)
  • 22:15 に VM IP からトラフィックが来ている場合はブロックされます (ブロック ルール)

それが解決に役立つことを願っています。

関連情報