christian urra wrote:

> > und das deutet auf einen fehler in der masquerading-config hin. wenn
> > gew�nscht kann ich hier ja mal ein beispiel script f�r
> > firewalling/masquerading in verbindung mit kernel 2.2.x und IPchains auf
> > die liste hierher posten.
> 
> Ich bin zwar nicht die Liste, w�rde mich aber �ber Dein Script sehr freuen.
> Ich habe hier zwar schon sowas in der Art laufen (mit Masq Dialer) aber
> mit Kernel 2.2.x l�uft es noch nicht so ganz.

da jetzt doch mehrere nachfragen, hiermal das script. eines vorweg: es
teil ist alt, und nicht weiter "maintained". das hier im befindliche
script im produktiven einsatz, geb ich aus verst�ndlichen gr�nden nicht
raus.

das im attach angeh�ngte script, ist f�r

- kernel 2.2.x (getestet mit 2.2.1 bis *.5, ftp://ftp.de.kernel.org)
- IPChains (v1.3.8)
- suse 5.x (entwickelt, und unter 6.1 getestet)
- kenntnisse in tcp/ip bzw. ONC (Open-Network-Computing) bzw. Firewalls
sind erw�nscht ;)

was das script soll:

- es soll anregungen geben, wie man es "richtig" macht ;)
- das script selber hat *fehler* - die aber absichtlich sind, weil sie
zum nachdenken
  auffordern. wer dazu nicht bereit ist, der sollte lieber die sache von
_diesem_ script
  lassen.
- das script kann bestimmt noch erweitert werden


ich �ber nehme keine gew�hrleistung f�r das script, solange ich das
"un-maintained" rausgebe.

Mfg. Joerg

-- 
Henner & Bullinger, Datentechnik GbR     | Tel.:  +49 (7 11) 2 85 19 05
Linux, Netzwerke, Webhosting & Authoring | D2:    +49 (1 72) 7 35 31 09
                                         | Fax:   +49 (7 11) 5 78 06 92
Gesch�ftsleitung, Perl/CGI, Support      | http://star.bawue.com
# Nur ein einfaches kleines Script um mittels IP-Masquerading einen 
# Firewall zu bauen
# OS: SuSE-Linux 5.3
# Autor: Joerg Henner
#
       # This is the best method: turn on Source Address Verification
       # and get spoof protection on all current and future interfaces.
       if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ]; then
         echo -n "Setting up IP spoofing protection..."
         for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
             echo 1 > $f
         done
         echo "done."
       else
         echo PROBLEMS SETTING UP IP SPOOFING PROTECTION. BE WORRIED.
         echo "CONTROL-D will exit from this shell and continue system startup."
         echo
         # Start a single user shell on the console
         /sbin/sulogin $CONSOLE
       fi
       echo "Setting up forwarding/firewalling/masquerading protection..."
       echo 1 > /proc/sys/net/ipv4/ip_forward

case "$1" in 
        start) 
                # load all masquerading modules
                ( cd /lib/modules/$(uname -r)/ipv4 && for i in ip_masq_*.o ; do 
modprobe $i ; done )
                #
                echo -n "Setting up Firewall..."
                #
                # Wir verbieten jedes Forwarding
                # (Policy)
                #
                ipchains -P input DENY
                ipchains -P forward DENY
                ipchains -P output DENY
                #
                # Ein Flush auf alle Kommandos (chains)
                #
                ipchains -F input
                ipchains -F forward
                ipchains -F output
                #
                # Das ist jetzt der ultimative Firewall. Nichts kann rein
                # und nichts kann raus. Einige Dienste wollen wir allerdings 
                # doch erlauben.
                #
                # Wir akzeptieren alles vom internen netz
                #
                ipchains -P input ACCEPT
                ipchains -P forward MASQ
                ipchains -P output ACCEPT
                #
                # Wir sperren local-loopback-device
                #
                ipchains -A input -s 127.0.0.1 -p icmp -j DENY
                ipchains -A input -d 127.0.0.1 -p icmp -j DENY
                #
                # Alles f�r den port 12345 von ausserhalb soll
                # abgewiesen werden
                #
                ipchains -A input -p tcp -s 0/0 12345:12345 -j DENY -b
                ipchains -A input -p udp -s 0/0 12345:12345 -j DENY -b
                ipchains -A input -p icmp -s 0/0 12345:12345 -j DENY
                #
                # icmp packets within fragments SPERREN
                #
                ipchains -A input -p icmp -s 0/0 -f -j DENY
                #
                # icmp packets from source NOT within LAN SPERREN
                #
                ipchains -A input -p icmp -s ! 195.180.228.224/29 -d 
195.180.228.224/29 -j DENY
                #
                # Alles vom internen netz soll maskeriert werden
                # (und reverse)
                #
                ipchains -A forward -s 195.180.228.224/29 -b
                #
                echo "done."
                #
                ;;
        stop)
                echo -n "Shutting down Firewall..."
                #
                # Ein Flush auf alle Kommandos (chains)
                #
                ipchains -F input
                ipchains -F forward
                ipchains -F output
                #
                # Wir verbieten jedes Forwarding
                # (Policy)
                #
                ipchains -P input DENY
                ipchains -P forward DENY
                ipchains -P output DENY
                #
                # Das ist jetzt der ultimative Firewall. Nichts kann rein
                # und nichts kann raus. Einige Dienste wollen wir allerdings 
                # doch erlauben.
                #
                # unload all masquerading modules
                ( cd /lib/modules/$(uname -r)/ipv4 && for i in ip_masq_*.o ; do rmmod 
$i ; done )
                #
                echo "done."
                #
                ;;
esac
                #
                # Das wars f�rs Erste. 

Antwort per Email an