

| |
Der Schritt zu einem ISDN Router unter LINUX mit Firewall besteht nun aus
der konsequenten Umsetzung der Firewallregeln auf das ISDN Interface. Da zum
Zeitpunkt der Einwahl die dynamische IP - Nummer erst noch vergeben wird,
ist es nicht möglich, die Firewallregeln vorher aufzusetzen. Man kann sich
aber damit behelfen, daß ein Teil der Firewallregeln nach dem
Verbindungsaufbau aktiviert wird. Hierzu muß man sichergehen, daß während
des Verbindungsaufbau die Firewallregeln alle gelöscht sind, und daß die
default policy des externen Interfaces auf deny steht, und spoofing
verhindert wird. Somit können für die kurze Zeit des Verbindungsaufbaues keine Angreifer in das Intranet
vordringen. Wie aktiviert man jedoch weitere Firewallregeln nach dem
Verbindungsaufbau ? Im Grunde liegt das ganze Geheimnis in der Datei
/etc/ppp/ip-up, die identisch mit der Datei
/etc/ppp/ip-down ist. Hier müssen die entsprechenden Firewallregeln
in der Sektion ip-up und ip-down eingefügt bzw. verändert
werden. Hier ein Beispiel:
BASENAME=`basename $0`
INTERFACE=$1
DEVICE=$2
SPEED=$3
LOCALIP=$4
REMOTEIP=$5
if [ -z "$REMOTEIP" ]; then
echo "Usage: $0 <INTERFACE> <DEVICE> <SPEED> <LOCALIP> <REMOTEIP>"
exit 1
fi
case "$INTERFACE" in
ippp*)
. /etc/rc.config
# find the device
found=0
for I in $NETCONFIG; do
eval NETDEV=\$NETDEV$I
if [ $NETDEV = $INTERFACE ]; then
found=1
break;
fi
done
if [ $found -eq 0 ]; then
echo "Device '$INTERFACE' not configured in '/etc/rc.config'"
exit 1
fi
eval IFCONFIG=\$IFCONFIG$I
DEST=`grep -v "^#" /etc/route.conf | grep "$INTERFACE\$" | awk '{ print $1}'`
DEFAULT=`grep -v "^#" /etc/route.conf | grep default | awk '{ print $2}'`
#echo "ok, NETDEV:$NETDEV; IFCONFIG:$IFCONFIG."
#echo " DEST: $DEST; DEFAULT: $DEFAULT"
case "$BASENAME" in
ip-up)
# default deny
#ipfwadm -I -p deny
#ipfwadm -O -p deny
# flush
#ipfwadm -I -f
#ipfwadm -O -f
# accept dns
#ipfwadm -O -a accept -P udp -S 0/0 53 1024:65535 -D 0/0 53 -W $INTERFACE
#ipfwadm -I -a accept -P udp -D 0/0 53 1024:65535 -S 0/0 53 -W $INTERFACE
#ipfwadm -O -a accept -P tcp -S 0/0 53 1024:65535 -D 0/0 53 -W $INTERFACE
#ipfwadm -I -a accept -P tcp -D 0/0 53 1024:65535 -S 00/0 53 -k -W $INTERFACE
# accept conect from client to internet
#ipfwadm -O -a accept -P tcp -S 0/0 1024:65535 -D 0/0 -W $INTERFACE
#ipfwadm -I -a accept -P tcp -D 0/0 1024:65535 -S 0/0 -k -W $INTERFACE
# deny, last match
#ipfwadm -I -a deny -P tcp -S 0/0 -D 0/0 -W $INTERFACE
#ipfwadm -I -a deny -P udp -S 0/0 -D 0/0 -W $INTERFACE
# default accept
#ipfwadm -I -p accept -W $INTERFACE
#ipfwadm -O -p accept -W $INTERFACE
/sbin/route add default gw $REMOTEIP dev $INTERFACE
# maybe you want to start mail services:
# set follow variables in /etc/rc.config
# SENDMAIL_TYPE="yes"
# SENDMAIL_SMARTHOST="<ISP-mailserver>"
# SENDMAIL_ARGS="-bd -om"
# SENDMAIL_EXPENSIVE="yes"
# SENDMAIL_NOCANONIFY="yes"
#/usr/sbin/sendmail -q &
#/usr/bin/fetchmail -a -v >>/var/log/fetchmail 2>&1 &
;;
ip-down)
# restart interface
/sbin/ifconfig $INTERFACE down
# workaround due to kernel problem with 'kernd':
sleep 1
/sbin/ifconfig $INTERFACE $IFCONFIG
# flush, del all rules
#ipfwadm -I -f
#ipfwadm -O -f
# set routes from /etc/route.conf
test -z "$DEST" || /sbin/route add -host $DEST dev $INTERFACE
test -z "$DEFAULT" || /sbin/route add default gw $DEFAULT
;;
*)
;;
esac
;;
ppp*)
# Analog-PPP, add commands if you need...
;;
*)
# dont know...
;;
esac
Wer noch möchte, daß seine E-Mail gleichzeitig aus einem Sammelaccount von
einem POP3 Server im Internet abgeholt und verteilt wird, der muß noch eine
weitere Zeile fetchmail -a -v in der Datei /etc/ppp/ip-up
und die Konfigurationsdatei des fetchmail - Programmes /root/.fetchmailrc
anpassen.
Nun muß nur noch der SQUID Dämon gestartet werden, und fertig ist der
Firewall-Router mit PROXY-Cache. Wer darüber hinaus auch noch den ganzen
Router über ein komfortables WWW-Interface administrieren können möchte, und
für die unterschiedlichen User Internet-Sites sperren oder freigeben möchte,
der sollte sich nach
WEBMIN umschauen.
Wer WEBMIN auf deutsch installieren möchte, der mag sich auf
http://little-idiot.de umschauen.
|