LSSilva
(usa Outra)
Enviado em 15/09/2017 - 19:50h
Tiagocwb escreveu:
Segue.
----------------------------------------
#! /bin/sh
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -I POSTROUTING -s 0/0 -j MASQUERADE
iptables -A FORWARD -s 0/0 -d 0/0 -j ACCEPT
----------------------------------------
Dei permissao chmod +x
update-rc.d -n firewall.sh defaults
O interessante e que nao existe este diretorio ou arquivo rc.d no init.d somente rc0 rc1 rc2.d etc.
Se for Debian >= 8 seu script tem que ter um cabeçalho específico.
Segue exemplo genérico de como ficaria:
#!/bin/sh
# Start/stop the firewall script.
#
### BEGIN INIT INFO
# Provides: firewall
# Required-Start: $remote_fs $syslog $time
# Required-Stop: $remote_fs $syslog $time
# Should-Start: $network $named slapd autofs ypbind nscd nslcd winbind
# Should-Stop: $network $named slapd autofs ypbind nscd nslcd winbind
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: Firewall script with iptables rules
# Description: This firewall script allow traffic on HA network.
#
#
#
### END INIT INFO
start() {
modprobe iptable_nat
# Zerando table nat
iptables -t nat -X
iptables -t nat -F
# Isso abaixo pode ser feito via /etc/sysctl.conf, aproveitaria pra ativar rp_filter, tcp_syncookies e log_martians.
echo 1 > /proc/sys/net/ipv4/ip_forward
# Regra abaixo é insegura
iptables -t nat -I POSTROUTING -s 0/0 -j MASQUERADE
# Regra abaixo é insegura (ip spoofing accept) e não é necessária se política padrão do firewall for accept.
iptables -A FORWARD -s 0/0 -d 0/0 -j ACCEPT
}
stop() {
iptables -t nat -F
iptables -t nat -X
}
case $1 in
start) start;;
stop) stop;;
*) echo "Use Start/Stop";;
esac