我有一個 systemd 服務執行配置防火牆的 shell 腳本。該系統是運行 Debian 8 的嵌入式系統。
我應該如何設定服務,以便讓它在系統啟動時儘早執行腳本,但又要晚到足以讓 iptables 正常運作?
現在的服務文件(它可以工作,但我不知道它是否是最佳的):
[Unit]
Description=Firewall configuration script
After=sysinit.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/firewall.sh
[Install]
WantedBy=basic.target
劇本:
#!/bin/bash
iptables -F
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT