bsd システムの全員に対してポート 3306 をブロックし、freebsd のファイアウォールを使用して 1 つの IP アドレスに対してポートを開こうとします。
同様のことを試しましたが、ポートが閉じていてアドレスが開いていません。
## our interface ##
ext_if="em0"
## do not block mysqld on ##
mysqld_ip="{ !202.54.1.2, !202.54.1.10, !202.54.1.15 }" <<< don't open when i write address ip
## Block everything for tcp port number 3306 except $mysqld_ip ###
block in on $ext_if proto tcp from any to $mysqld_ip port 3306
このファイアウォールを操作する方法を知っている人はいますか?
答え1
そのルールが専用に使用されていない限り、パケットと一致する最後のルールが適用されますquick
。
だからこれが私がすることです
mysqld_ip="{ 202.54.1.2, 202.54.1.10, 202.54.1.15 }"
pass in quick on $ext_if inet proto tcp from any to $mysqld_ip port 3306 keep state
block in on $ext_if inet proto tcp from any to any port 3306