Einfaches Masquerade-Script mit Firewall

Aus Siduction Wiki DE
Version vom 27. September 2010, 19:32 Uhr von 109.90.144.213 (Diskussion) (Einfaches Masquerade-Script mit Firewall)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Einfaches Masquerade-Script mit Firewall

Dieses Script ist einem∞ Posting∞ von Dutchy im Sidux-Forum entwendet und wurde nur um die Abfrageelemente obiger Scripts erweitert.

ausführen mit:

/usr/local/sbin/masquerade.sh

Script:

#!/bin/sh 

# Port forwarding Firewall 
# 
# Original Source Unknown 

# posted by Dutchy in Sidux Forum
# modified by darktiger (INTERNET and LOCALNET Tables)

# This script assumes that INTERNET is connected to the internet and 
# LOCALNET is connetcted to the local network. 

#  WICHTIG! Damit das Skript richtig funktioniert, muss zuerst eine der 
#  folgenden Zeilen entkommentiert werden. Und zwar genau jene, die
#  die Schnittstelle definiert, mit der der Router mit dem 
#  Internet verbunden ist. 
# 
#  INTERNET=ppp0     # Modem oder DSL-Karte 
#  INTERNET=ippp0    # ISDN 
#  INTERNET=eth0     # DSL über PPPoE (Netzwerkkarte -> DSL-Modem) 
#  INTERNET=eth1     # DSL über PPPoE (wenn "eth0" nicht funktioniert) 
#  INTERNET=wlan0    # WLan-Karte 
#  INTERNET=ath0     # Manche PCMCIA und USB WLan-Karten
#  INTERNET=xxxX     # weitere individuelle Karten / Schnittstellen; xxxX ersetzen

#  WICHTIG! Damit das Skript richtig funktioniert, muss zuerst eine der 
#  folgenden Zeilen entkommentiert werden. Und zwar genau jene, die
#  die Schnittstelle definiert, mit der der Router mit den anderen Computern 
#  verbunden ist. 
# 
#  LOCALNET=ppp0     # Modem oder DSL-Karte 
#  LOCALNET=ippp0    # ISDN 
#  LOCALNET=eth0     # DSL über PPPoE (Netzwerkkarte -> DSL-Modem) 
#  LOCALNET=eth1     # DSL über PPPoE (wenn "eth0" nicht funktioniert) 
#  LOCALNET=wlan0    # WLan-Karte 
#  LOCALNET=ath0     # Manche PCMCIA und USB WLan-Karten
#  LOCALNET=xxxX     # weitere individuelle Karten / Schnittstellen; xxxX ersetzen

# 
# If placed in /etc/network/if-up.d/ it will initiate the firewall 
# as soon as the network cards come up. 
# 

PATH=/usr/sbin:/sbin:/bin:/usr/bin:/usr/local/sbin

# 
# delete all existing rules. 
# 
iptables -F 
iptables -t nat -F 
iptables -t mangle -F 
iptables -X 

# Always accept loopback traffic 
iptables -A INPUT -i lo -j ACCEPT 

# Allow established connections, and those not coming from the outside 
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 
iptables -A INPUT -m state --state NEW -i ! $LOCALNET -j ACCEPT 
iptables -A FORWARD -i $INTERNET -o $LOCALNET -m state --state ESTABLISHED,RELATED -j ACCEPT 

# Allow outgoing connections from the LAN side. 
iptables -A FORWARD -i $LOCALNET -o $INTERNET -j ACCEPT 

# Masquerade. 
iptables -t nat -A POSTROUTING -o $INTERNET -j MASQUERADE 

# Don't forward from the outside to the inside. 
#iptables -A FORWARD -i $INTERNET -o $INTERNET -j REJECT 

# Enable routing. 
echo "1" > /proc/sys/net/ipv4/ip_forward