Vorweg
Die folgenden Einstellungen bieten KEINE FIREWALL und KEINERLEI SICHERHEIT bis auf das, was Linux sowieso schon bietet. Die meisten Leute dürften damit gut genug fahren, aber wer erhöhte Sicherheitsbedenken hat, sollte sich vorher noch ausführlich mit dem Thema LinuxSecurity beschäftigen!
Für den 2.4er Kernel (IP Tables, ''iptables''):
Man trage irgendwo in den Startskripten (z.B. die Datei /etc/ppp/ip-up.d/masquerading erstellen, ausführbar machen (chmod +x ...) und dort das eintragen) das folgende ein -
IP Forwarding aktivieren: echo 1 > /proc/sys/net/ipv4/ip_forward
Routing-Checks: for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 1 > $f ; done
Maskierung aktivieren: /sbin/iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
Achtung: *ppp0* muss man ggf. durch das Netzwerkdevice ersetzen, was den Weg nach draussen hergibt.
Für den 2.2.er Kernel (IP Chains, ''ipchains''):
- Kernel mit IP-Masquerading compilieren
IP Forwarding aktivieren: echo 1 > /proc/sys/net/ipv4/ip_forward
ipchains -P forward DENY
ipchains -A forward -s 192.168.1.0/255.255.255.0 -j MASQ
Damit erlaubst Du Masquerading fuer alle Rechner im Subnetz 192.168.1.*. Evtl. anpassen.
Für den 2.0.er Kernel (IP Firewall Administratior, ''ipfwadm'') (*VERALTET!*)
- Kernel mit IP-Masquerading kompilieren
- # The next lines are for masquerading over ippp link.
- # hostname -i should give ip address of local network interface.
- # See comments in /etc/isdn/device.* about firewalling!
- ipfwadm -I -a accept -W $PPP_IFACE -P tcp -D $PPP_LOCAL smtp ident 1024:65535
- ipfwadm -I -a accept -W $PPP_IFACE -P udp -D $PPP_LOCAL 1024:65535
- # masquerading rules, for transparently connecting local net to internet
# ETH_IP=hostname -i | tr -d '`
- ipfwadm -F -a accept -m -P tcp -S $ETH_IP/24
- ipfwadm -F -a accept -m -P udp -S $ETH_IP/24
Ersteres Beispiel kommen aus dem Internet, das letztere aus der Beispielkonfiguration vom isdn4linux aus der Debian 2.1 Distribution.
Debian-Spezialitäten
Bei Debian ist es (fast immer) einfacher, für Modems pppconfig zu installieren und zu benutzen und für ISDN-Karten isdnconfig, und für DSL-Verbindungen pppoeconf, als selbst an den Dateien rumzufummeln. Bei der Debian ist das IP Masquerading auch prima und sauber am laufen, wenn man einfach das "ipmasq" Paket installiert hat. (Nur mal so als Tipp. )