NetBSDをレビュー中、備忘録として残しておこう! その3
2022/08/11
2022/08/13
今回はNetBSDのFirewallを導入してみたいと思います。NetBSDでは幾つかのFirewallソフトがあるらしく,今回はNPFというFirewall softが比較的新しいようなので それを使ってみました。感覚的にはiptablesの考え方の延長線上にある感じですね。個人的には好きな設定のしかたなのでそれほど苦にはならなかった。見ればわかる人はわかると思う。
Firewallのインストール
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
$ sudo vi /etc/npf.conf ------ここから設置ファィル---- # It refered http://blog.onodera.asia/2018/07/netbsdamd64-8.html # Thank you! $pub_if = { inet4(vioif0) } $pub_if6 = { inet6(vioif0) } $services_tcp = { 22, 80, 443 ,8080, domain } $services_udp = { domain , ntp } procedure "log" { # npfd(8)でロギングする。 log: npflog0 } # IPv4 group "public" on $pub_if { # 出ていく通信は通す。 pass stateful out final all #pass stateful out final flags S/FSRA # #services_tcpで定義されたサービスやポートへのアクセスを通し、ログに残す。 pass stateful in final proto tcp to $pub_if port $services_tcp apply "log" pass stateful in final proto udp to $pub_if port $services_udp apply "log" # パッシブFTPとtraceroute pass stateful in final proto tcp to $pub_if port 49151-65535 pass stateful in final proto udp to $pub_if port 33434-33600 } # IPv6 group "public" on $pub_if6 { # 出ていく通信は通す。 pass stateful out final all #pass stateful out final flags S/FSRA # #services_tcpで定義されたサービスやポートへのアクセスを通し、ログに残す。 pass stateful in final proto tcp to $pub_if port $services_tcp apply "log" pass stateful in final proto udp to $pub_if port $services_udp apply "log" # パッシブFTPとtraceroute pass stateful in final proto tcp to $pub_if port 49151-65535 pass stateful in final proto udp to $pub_if port 33434-33600 } group default { # lo0へのアクセスはすべて通す。 pass final on lo0 all # blacklistd を使う。 ruleset "blacklistd" # すべて遮断する。 block all } -------ここで終了------- $ su - # echo "npf=YES" >> /etc/rc.conf # echo "npfd=YES" >> /etc/rc.conf # service npf start # service npfd start |