← Back to team overview

sslug-teknik team mailing list archive

rc.firewall problem

 

echo "1" >/proc/sys/net/ipv4/ip_forward virker ikke når
det står i /etc/rc.d/rc.firewall.

På Mandrake-7.1 har jeg et iptables filter, rc.firewall.
Det bliver på mandrake kaldt af rc.sysinit.

I starten af scriptet har jeg:

#!/bin/sh
echo "0" >/proc/sys/net/ipv4/ip_forward
set -v # vis hvad der sker
[ regler her ]
og til sidst:
echo "1" >/proc/sys/net/ipv4/ip_forward

Jeg kan se at rc.firewall bliver udført, inklusiv echo "1" blabla.
hele vejen igennem, og iptables -nL viser at alle reglerne er lavet.

Men ip_forward bliver ikke sat til 1:

# cat /proc/sys/net/ipv4/ip_forward
0

Hvis jeg kører rc.firewall manuelt, bliver ip_forward sat
til 1 som den skal.

Hvorfor virker det ikke under opstart?

ip_tables modulet bliver loadet af mandrake fordi det står i
/etc/sysconfig/modules filen. Det vil jeg helst ikke gøre i
rc.firewall da det skal kunne køres flere gange (når man har
lavet rettelser).

Jeg vil nødig lave et separat rc script som sætter ip_forward
senere, for ip_forward må kun slås til når jeg er sikker
på rc.firewall er udført.

Det er på linux-2.4.0-test5
-- 
torben fjerdingstad        | GNU/linux-2.4.0-test5
tfj@xxxxxxxxxxxxxxx        | linux får den op og stå


Follow ups