Configurar el firewall a través de systemd lo antes posible

Configurar el firewall a través de systemd lo antes posible

Tengo un servicio systemd que ejecuta un script de shell que configura el firewall. El sistema es integrado y ejecuta Debian 8.

¿Cómo debo configurar el servicio para que ejecute el script lo antes posible en el inicio del sistema, pero lo suficientemente tarde para que iptables funcione?

El archivo de servicio tal como está ahora (funciona, pero no sé si es óptimo):

[Unit]
Description=Firewall configuration script
After=sysinit.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/firewall.sh

[Install]
WantedBy=basic.target

La secuencia de comandos:

#!/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

Respuesta1

Intenta copiarufffcomportamiento de inicio ya que hace casi lo mismo:

ufw.service:

[Unit]
Before=network.target

También puede considerar pasar de su propio script iptables a la lista de reglas ufw.

información relacionada