文書の過去の版を表示しています。
v4.4.0β6 から、FirewallD の代わりに Alpine Wall1)を利用可能にしました。
起動時間を10秒以上高速化することが可能です。
基本的な設定は標準で入れてありますので、FirewallD での設定とほぼ同じままで良ければ、FirewallD を無効化して awall を有効化します。
root@plum:~# systemctl disable firewalld Synchronizing state of firewalld.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install disable firewalld insserv: warning: current start runlevel(s) (empty) of script `firewalld' overrides LSB defaults (2 3 4 5). insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `firewalld' overrides LSB defaults (0 1 6). Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
root@plum:~# systemctl enable awall Created symlink /etc/systemd/system/multi-user.target.wants/awall.service → /etc/systemd/system/awall.service.
再起動すると、awall により iptables が設定されて起動します。
root@plum:~# reboot
設定ファイルは、/etc/awall/[optional, private]
にあります。
root@plum:/etc/awall# ls -lR .: total 0 lrwxrwxrwx 1 root root 29 Nov 15 12:11 main.json -> /etc/awall/optional/main.json drwxr-xr-x 2 root root 32 Nov 15 14:01 optional drwxr-xr-x 2 root root 51 Nov 15 14:01 private ./optional: total 1 -rw-r--r-- 1 root root 72 Nov 15 14:01 main.json ./private: total 2 -rw-r--r-- 1 root root 549 Nov 15 13:18 base.json -rw-r--r-- 1 root root 202 Nov 15 14:01 filter.json
base.json
でインターフェース毎のゾーン設定、ゾーン毎の基本的なポリシー(ACCEPT, DROP など)を設定しています。
{ "description": "Base zones and policies", "zone": { "WAN": { "iface": [ "ppp0", "ppp1" ] }, "LAN": { "iface": [ "eth0", "eth1", "br0", "wg+" ] }, "Closed": { "iface": [ "ppp500", "ppp501", "ppp502", "ppp503" ] } }, "policy": [ { "in": "_fw", "out": "WAN", "action": "accept" }, { "in": "LAN", "action": "accept" }, { "out": "LAN", "action": "accept" }, { "in": "WAN", "action": "drop" }, { "in": "Closed", "action": "accept" } ], "snat": [ { "out": [ "WAN", "Closed" ] } ], "clamp-mss": [ { "out": [ "WAN", "Closed" ] } ] }
filter.json
で、ポリシーから外れる条件を記述しています。
{ "description": "Filter", "filter": [ { "in": "WAN", "out": "_fw", "service": "ssh", "action": "accept", "conn-limit": { "count": 3, "interval": 20 } } ] }