Hallo an alle,

ich habe ein kleines Problem, wo ich mittlerweile nicht mehr weiß wonach ich im Google suchen soll.

Ich habe hier eine Netzwerk das 2 Wohnungen miteinander verbindet.

Wohnung 1
darin ist ein Switch,
an dem hängt ein Rechner mit der IP 192.168.68.1
und ein DSL-Modem

Wohnung 2
darin ist ein Switch,
an dem hängt mein Server (Router, Firewall, Datenspeicher) mit _einer_ Netzwerkkarte und _zwei_ IP's (die erste ist die 192.168.92.11 für ein Wohnungsinternes Netzwerk und die zweite ist die 192.168.68.11 um den Rechner aus Wohnung 1 anzubinden) Dieser Rechner wählt sich auch mittels dem DSL-Modem in Wohnung 1 in die bunte weite Netzwelt ein.


Ich habe iptables (siehe Abschnitt unten "firewall") soweit konfiguriert, dass ich von Wohnung 2 aus auf alle Dienste des Servers (IMAP, SQUID, dnsmasq usw.) und auf das Internet zugreifen kann.

Jetzt möchte ich Wohnung 1 auch über den Server routen und (nur) das Internet und die dafür notwendigen Dienste zur Verfügung stellen. Ich scheitere aber schon mal daran, dass ich nicht mal einen Ping hinbekomme. Es kommt immer Netzwerk nicht erreichbar.

Kann mir jemand ein Tip geben, wo ich suchen muss?

Habe ich hier ein Problem mit der Serverkonfiguration oder evtl. den beiden Switchen? Die Switche sind der übliche Endkundenkram. Kabel einstecken ist alles was man bei den Dingern machen kann.


Danke für die Hilfe
Andreas

Anhang:
Abschnitt
  "firewall" (gekürzt)
  "interfaces"

Datei
  "firewall" (ungekürzt)


-------Datei "firewall"----------


case "$1" in
  start)
    echo "Starte IP-Paketfilter"

    # iptables-Modul
    modprobe ip_tables
    # Connection-Tracking-Module
    modprobe ip_conntrack
    # Das Modul ip_conntrack_irc ist erst bei Kerneln >= 2.4.19
    # verfuegbar
    modprobe ip_conntrack_irc
    modprobe ip_conntrack_ftp

    # Tabelle flushen
    iptables -F
    iptables -t nat -F
    iptables -t mangle -F
    iptables -X
    iptables -t nat -X
    iptables -t mangle -X

    # Default-Policies setzen
    iptables -P INPUT DROP
    iptables -P OUTPUT DROP
    iptables -P FORWARD DROP

    # MY_REJECT-Chain
    iptables -N MY_REJECT

    # MY_REJECT fuellen
iptables -A MY_REJECT -p tcp -m limit --limit 7200/h -j LOG --log-prefix "REJECT TCP "

    iptables -A MY_REJECT -p tcp -j REJECT --reject-with tcp-reset
iptables -A MY_REJECT -p udp -m limit --limit 7200/h -j LOG --log-prefix "REJECT UDP "

iptables -A MY_REJECT -p udp -j REJECT --reject-with icmp-port-unreachable

iptables -A MY_REJECT -p icmp -m limit --limit 7200/h -j LOG --log-prefix "DROP ICMP "

    iptables -A MY_REJECT -p icmp -j DROP
iptables -A MY_REJECT -m limit --limit 7200/h -j LOG --log-prefix "REJECT OTHER "

    iptables -A MY_REJECT -j REJECT --reject-with icmp-proto-unreachable

    # MY_DROP-Chain
    iptables -N MY_DROP
iptables -A MY_DROP -m limit --limit 7200/h -j LOG --log-prefix "PORTSCAN DROP "

    iptables -A MY_DROP -j DROP

    # Alle verworfenen Pakete protokollieren
iptables -A INPUT -m state --state INVALID -m limit --limit 7200/h -j LOG --log-prefix "INPUT INVALID "

iptables -A OUTPUT -m state --state INVALID -m limit --limit 7200/h -j LOG --log-prefix "OUTPUT INVALID "

iptables -A FORWARD -m state --state INVALID -m limit --limit 7200/h -j LOG --log-prefix "FORWARD INVALID "

    # Korrupte Pakete zurueckweisen
    iptables -A INPUT -m state --state INVALID -j DROP
    iptables -A OUTPUT -m state --state INVALID -j DROP
    iptables -A FORWARD -m state --state INVALID -j DROP

    # Stealth Scans etc. DROPpen
    # Keine Flags gesetzt
    iptables -A INPUT -p tcp --tcp-flags ALL NONE -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags ALL NONE -j MY_DROP

    # SYN und FIN gesetzt
    iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags SYN,FIN SYN,FIN -j MY_DROP

    # SYN und RST gleichzeitig gesetzt
    iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j MY_DROP

    # FIN und RST gleichzeitig gesetzt
    iptables -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags FIN,RST FIN,RST -j MY_DROP

    # FIN ohne ACK
    iptables -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags ACK,FIN FIN -j MY_DROP

    # PSH ohne ACK
    iptables -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags ACK,PSH PSH -j MY_DROP

    # URG ohne ACK
    iptables -A INPUT -p tcp --tcp-flags ACK,URG URG -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags ACK,URG URG -j MY_DROP

    # Loopback-Netzwerk-Kommunikation zulassen
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A OUTPUT -o lo -j ACCEPT

    # Maximum Segment Size (MSS) für das Forwarding an PMTU anpassen
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

    # Connection-Tracking aktivieren
    iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

# iptables -A FORWARD -i ! ra0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

iptables -A FORWARD -i ! ppp0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

    iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

    # HTTP
iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 3128 -j ACCEPT

iptables -A PREROUTING -t nat -s 192.168.92.0/16 -p tcp --dport 80 -j REDIRECT --to-ports 3128

    # HTTPS
iptables -A POSTROUTING -t nat -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 443 -j MASQUERADE

    # SMTP
iptables -A POSTROUTING -t nat -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 25 -j MASQUERADE

    # SMTPS
iptables -A POSTROUTING -t nat -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 465 -j MASQUERADE

    # IMAPS
iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 993 -j ACCEPT iptables -A POSTROUTING -t nat -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 993 -j MASQUERADE

    # DNS
iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 53 -j ACCEPT iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 53 -j ACCEPT

    # SMB/CIFS
iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 137 -j ACCEPT iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 138 -j ACCEPT iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 139 -j ACCEPT iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 445 -j ACCEPT iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 137 -j ACCEPT iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 138 -j ACCEPT iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 139 -j ACCEPT iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 445 -j ACCEPT

    # SSH
iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW,ESTABLISHED,RELATED -p tcp --dport 22 -j ACCEPT iptables -A OUTPUT -d 192.168.92.0/16 -m state --state NEW,ESTABLISHED,RELATED -p tcp --dport 22 -j ACCEPT

    # DHCP
iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 67 -j ACCEPT iptables -A OUTPUT -d 192.168.92.0/16 -m state --state NEW -p udp --dport 67 -j ACCEPT

    # NTP
iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 123 -j ACCEPT

    # ICMP Echo-Request (ping) zulassen und beantworten
iptables -A INPUT -m state --state NEW -p icmp --icmp-type echo-request -j ACCEPT


    # Default-Policies mit REJECT
    iptables -A INPUT -j MY_REJECT
    iptables -A OUTPUT -j MY_REJECT
    iptables -A FORWARD -j MY_REJECT

    # Forwarding/Routing
    echo "Aktiviere IP-Routing"
    echo 1 > /proc/sys/net/ipv4/ip_forward 2> /dev/null

    # SYN-Cookies
    echo 1 > /proc/sys/net/ipv4/tcp_syncookies 2> /dev/null

    # Stop Source-Routing
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/accept_source_route 2> /dev/null; done

    # Stop Redirecting
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/accept_redirects 2> /dev/null; done

    # Log Martians
for i in /proc/sys/net/ipv4/conf/*; do echo 1 > $i/log_martians 2> /dev/null; done

    # BOOTP-Relaying ausschalten
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/bootp_relay 2> /dev/null; done

    # Proxy-ARP ausschalten
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/proxy_arp 2> /dev/null; done

    # Ungültige ICMP-Antworten ignorieren
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses 2> /dev/null

    # ICMP Echo-Broadcasts ignorieren
    echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts 2> /dev/null

    # Max. 500/Sekunde (5/Jiffie) senden
    echo 5 > /proc/sys/net/ipv4/icmp_ratelimit

    # Speicherallozierung und -timing für IP-De/-Fragmentierung
    echo 262144 > /proc/sys/net/ipv4/ipfrag_high_thresh
    echo 196608 > /proc/sys/net/ipv4/ipfrag_low_thresh
    echo 30 > /proc/sys/net/ipv4/ipfrag_time

    # TCP-FIN-Timeout zum Schutz vor DoS-Attacken setzen
    echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout

    # Maximal 3 Antworten auf ein TCP-SYN
    echo 3 > /proc/sys/net/ipv4/tcp_retries1

    # TCP-Pakete maximal 15x wiederholen
    echo 15 > /proc/sys/net/ipv4/tcp_retries2

    ;;

  stop)
    echo "Stoppe IP-Paketfilter"
    # Tabelle flushen
    iptables -F
    iptables -t nat -F
    iptables -t mangle -F
    iptables -X
    iptables -t nat -X
    iptables -t mangle -X
    echo "Deaktiviere IP-Routing"
    echo 0 > /proc/sys/net/ipv4/ip_forward

    # Default-Policies setzen
    iptables -P INPUT ACCEPT
    iptables -P OUTPUT ACCEPT
    iptables -P FORWARD ACCEPT
    ;;

  status)
    echo "Tabelle filter"
    iptables -L -vn
    echo "Tabelle nat"
    iptables -t nat -L -vn
    echo "Tabelle mangle"
    iptables -t mangle -L -vn
    ;;

  *)
    echo "Fehlerhafter Aufruf"
    echo "Syntax: $0 {start|stop|status}"
    exit 1
    ;;

esac



-------Datei "interfaces"--------

# The primary network interface
allow-hotplug eth2
iface eth2 inet static
        address 192.168.92.11
        netmask 255.255.255.0
        network 192.168.92.0
        broadcast 192.168.92.255
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 127.0.0.1
        dns-search doham.de
auto eth2

allow-hotplug eth2:0
iface eth2:0 inet static
        address 192.168.68.11
        netmask 255.255.255.0
        network 192.168.68.0
        broadcast 192.168.68.255
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 127.0.0.1
        dns-search doham.de
auto eth2:0

auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth2 up # line maintained by pppoeconf
provider dsl-provider




#!/bin/bash
# ---------------------------------------------------------------------
# Linux-iptables-Firewallskript, Copyright (c) 2007 under the GPL
# Autogenerated by iptables Generator v1.22 (c) 2002-2007 by Harald Bertram 
# Please visit http://harry.homelinux.org for new versions of
# the iptables Generator (c).
# 
# This Script was generated by request from:
# rc5.dres...@gmx.net on: 2007-10-25 22:16.50 MET.
# 
# If you have questions about the iptables Generator or about
# your Firewall-Skript feel free to take a look at out website or
# send me an E-Mail to webmas...@harry.homelinux.org.
# 
# My special thanks are going to Lutz Heinrich (trinitywork at hotmail dot com)
# who made lots of Beta-Testing and gave me lots of well qualified
# Feedback that made me able to improve the iptables Generator.
# --------------------------------------------------------------------

case "$1" in
  start)
    echo "Starte IP-Paketfilter"

    # iptables-Modul
    modprobe ip_tables
    # Connection-Tracking-Module
    modprobe ip_conntrack
    # Das Modul ip_conntrack_irc ist erst bei Kerneln >= 2.4.19 verfuegbar
    modprobe ip_conntrack_irc
    modprobe ip_conntrack_ftp

    # Tabelle flushen
    iptables -F
    iptables -t nat -F
    iptables -t mangle -F
    iptables -X
    iptables -t nat -X
    iptables -t mangle -X

    # Default-Policies setzen
    iptables -P INPUT DROP
    iptables -P OUTPUT DROP
    iptables -P FORWARD DROP

    # MY_REJECT-Chain
    iptables -N MY_REJECT

    # MY_REJECT fuellen
    iptables -A MY_REJECT -p tcp -m limit --limit 7200/h -j LOG --log-prefix 
"REJECT TCP "
    iptables -A MY_REJECT -p tcp -j REJECT --reject-with tcp-reset
    iptables -A MY_REJECT -p udp -m limit --limit 7200/h -j LOG --log-prefix 
"REJECT UDP "
    iptables -A MY_REJECT -p udp -j REJECT --reject-with icmp-port-unreachable
    iptables -A MY_REJECT -p icmp -m limit --limit 7200/h -j LOG --log-prefix 
"DROP ICMP "
    iptables -A MY_REJECT -p icmp -j DROP
    iptables -A MY_REJECT -m limit --limit 7200/h -j LOG --log-prefix "REJECT 
OTHER "
    iptables -A MY_REJECT -j REJECT --reject-with icmp-proto-unreachable

    # MY_DROP-Chain
    iptables -N MY_DROP
    iptables -A MY_DROP -m limit --limit 7200/h -j LOG --log-prefix "PORTSCAN 
DROP "
    iptables -A MY_DROP -j DROP

    # Alle verworfenen Pakete protokollieren
    iptables -A INPUT -m state --state INVALID -m limit --limit 7200/h -j LOG 
--log-prefix "INPUT INVALID "
    iptables -A OUTPUT -m state --state INVALID -m limit --limit 7200/h -j LOG 
--log-prefix "OUTPUT INVALID "
    iptables -A FORWARD -m state --state INVALID -m limit --limit 7200/h -j LOG 
--log-prefix "FORWARD INVALID "

    # Korrupte Pakete zurueckweisen
    iptables -A INPUT -m state --state INVALID -j DROP
    iptables -A OUTPUT -m state --state INVALID -j DROP
    iptables -A FORWARD -m state --state INVALID -j DROP

    # Stealth Scans etc. DROPpen
    # Keine Flags gesetzt
    iptables -A INPUT -p tcp --tcp-flags ALL NONE -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags ALL NONE -j MY_DROP

    # SYN und FIN gesetzt
    iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags SYN,FIN SYN,FIN -j MY_DROP

    # SYN und RST gleichzeitig gesetzt
    iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j MY_DROP

    # FIN und RST gleichzeitig gesetzt
    iptables -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags FIN,RST FIN,RST -j MY_DROP

    # FIN ohne ACK
    iptables -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags ACK,FIN FIN -j MY_DROP

    # PSH ohne ACK
    iptables -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags ACK,PSH PSH -j MY_DROP

    # URG ohne ACK
    iptables -A INPUT -p tcp --tcp-flags ACK,URG URG -j MY_DROP
    iptables -A FORWARD -p tcp --tcp-flags ACK,URG URG -j MY_DROP

    # Loopback-Netzwerk-Kommunikation zulassen
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A OUTPUT -o lo -j ACCEPT

    # Maximum Segment Size (MSS) für das Forwarding an PMTU anpassen
    iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS 
--clamp-mss-to-pmtu

    # Connection-Tracking aktivieren
    iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
    # iptables -A FORWARD -i ! ra0 -m state --state NEW,ESTABLISHED,RELATED -j 
ACCEPT
    iptables -A FORWARD -i ! ppp0 -m state --state NEW,ESTABLISHED,RELATED -j 
ACCEPT
    iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

    # LAN-Zugriff auf die Netzwerkschnittstelle
    # iptables -A INPUT -m state --state NEW -i eth2 -j ACCEPT

    # HTTP
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 3128 -j 
ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 
3128 -j ACCEPT
    iptables -A PREROUTING -t nat -s 192.168.92.0/16 -p tcp --dport 80 -j 
REDIRECT --to-ports 3128

    # HTTPS
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 443 -j ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 443 -j 
ACCEPT
    iptables -A POSTROUTING -t nat -s 192.168.92.0/16 -m state --state NEW -p 
tcp --dport 443 -j MASQUERADE

    # SMTP
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 25 -j ACCEPT
    iptables -A POSTROUTING -t nat -s 192.168.92.0/16 -m state --state NEW -p 
tcp --dport 25 -j MASQUERADE

    # SMTPS
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 465 -j 
ACCEPT
    iptables -A POSTROUTING -t nat -s 192.168.92.0/16 -m state --state NEW -p 
tcp --dport 465 -j MASQUERADE

    # POP3
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 110 -j ACCEPT

    # POP3S
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 995 -j ACCEPT

    # IMAP
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 143 -j ACCEPT

    # IMAPS
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 993 -j ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 993 -j 
ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 
993 -j ACCEPT
    iptables -A POSTROUTING -t nat -s 192.168.92.0/16 -m state --state NEW -p 
tcp --dport 993 -j MASQUERADE

    # NNTP
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 119 -j ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 119 -j 
ACCEPT

    # DNS
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 53 -j ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p udp --dport 53 -j ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 53 
-j ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 53 
-j ACCEPT

    # FTP
    #iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 21 -j ACCEPT
    #iptables -A OUTPUT -o ra0 -m state --state NEW -p tcp --dport 21 -j ACCEPT
    #iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 21 -j ACCEPT
    #iptables -A OUTPUT -o ra0 -m state --state NEW -p tcp --dport 21 -j ACCEPT

    # SMB/CIFS
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 137 -j 
ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 138 -j 
ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 139 -j 
ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p tcp --dport 445 -j 
ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p udp --dport 137 -j 
ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p udp --dport 138 -j 
ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p udp --dport 139 -j 
ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p udp --dport 445 -j 
ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 
137 -j ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 
138 -j ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 
139 -j ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p tcp --dport 
445 -j ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 
137 -j ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 
138 -j ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 
139 -j ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 
445 -j ACCEPT

    # SSH
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 22 -j ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW,ESTABLISHED,RELATED -p tcp 
--dport 22 -j ACCEPT
    # iptables -A OUTPUT -o eth2 -m state --state NEW,ESTABLISHED,RELATED -p 
tcp --dport 22 -j ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state 
NEW,ESTABLISHED,RELATED -p tcp --dport 22 -j ACCEPT
    iptables -A OUTPUT -d 192.168.92.0/16 -m state --state 
NEW,ESTABLISHED,RELATED -p tcp --dport 22 -j ACCEPT

    # DHCP
    # iptables -A INPUT -i eth2 -m state --state NEW -p udp --dport 67 -j ACCEPT
    # iptables -A OUTPUT -o eth2 -m state --state NEW -p udp --dport 67 -j 
ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 67 
-j ACCEPT
    iptables -A OUTPUT -d 192.168.92.0/16 -m state --state NEW -p udp --dport 
67 -j ACCEPT

    # MYSQL
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 3306 -j 
ACCEPT

    # NTP
    # iptables -A INPUT -i ra0 -m state --state NEW -p udp --dport 123 -j ACCEPT
    # iptables -A INPUT -i eth2 -m state --state NEW -p udp --dport 123 -j 
ACCEPT
    iptables -A INPUT -s 192.168.92.0/16 -m state --state NEW -p udp --dport 
123 -j ACCEPT

    # IRC
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 6667 -j 
ACCEPT

    # EDONKEY
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 4661 -j 
ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 4662 -j 
ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 4663 -j 
ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p udp --dport 4665 -j 
ACCEPT

    # TELNET
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 23 -j ACCEPT

    # BZFLAG
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 5155 -j 
ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p udp --dport 5155 -j 
ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 5156 -j 
ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p udp --dport 5156 -j 
ACCEPT

    # HALF-LIFE
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 6000:6003 -j 
ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p tcp --dport 7001:7002 -j 
ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p udp --dport 27005 -j 
ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p udp --dport 27010 -j 
ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p udp --dport 27015:27016 
-j ACCEPT

    # IPSEC
    # iptables -A INPUT -i ra0 -p 50 -j ACCEPT
    # iptables -A INPUT -i ra0 -p 51 -j ACCEPT
    # iptables -A INPUT -i ra0 -m state --state NEW -p udp --dport 500 -j ACCEPT

    # OPENVPN_V1
    # iptables -A INPUT -i ra0 -m state --state NEW -p udp --dport 5000 -j 
ACCEPT

    # OPENVPN_V2
    # iptables -A INPUT -i ra0 -m state --state NEW -p udp --dport 1194 -j 
ACCEPT

    # ICMP Echo-Request (ping) zulassen und beantworten
    iptables -A INPUT -m state --state NEW -p icmp --icmp-type echo-request -j 
ACCEPT

    # IP-Adresse des LAN-Interfaces ermitteln
    # LAN_IP=$(ifconfig eth2 | head -n 2 | tail -n 1 | cut -d: -f2 | cut -d" " 
-f 1)

    # NAT fuer HTTP
    # iptables -t nat -A PREROUTING -i ra0 -p tcp --dport 80 -j DNAT 
--to-destination 
    # iptables -A FORWARD -i ra0 -m state --state NEW -p tcp -d  --dport 80 -j 
ACCEPT

    
    # Default-Policies mit REJECT
    iptables -A INPUT -j MY_REJECT
    iptables -A OUTPUT -j MY_REJECT
    iptables -A FORWARD -j MY_REJECT

    # Forwarding/Routing
    echo "Aktiviere IP-Routing"
    echo 1 > /proc/sys/net/ipv4/ip_forward 2> /dev/null

    # Masquerading
    # iptables -t nat -A POSTROUTING -o ra0 -j MASQUERADE
    # iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE

    # SYN-Cookies
    echo 1 > /proc/sys/net/ipv4/tcp_syncookies 2> /dev/null

    # Stop Source-Routing
    for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/accept_source_route 2> 
/dev/null; done

    # Stop Redirecting
    for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/accept_redirects 2> 
/dev/null; done

    # Reverse-Path-Filter
    # Auskommentiert, da IPSEC mit RP_Filter nicht funktioniert!
    # for i in /proc/sys/net/ipv4/conf/*; do echo 2 > $i/rp_filter 2> 
/dev/null; done

    # Log Martians
    for i in /proc/sys/net/ipv4/conf/*; do echo 1 > $i/log_martians 2> 
/dev/null; done

    # BOOTP-Relaying ausschalten
    for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/bootp_relay 2> 
/dev/null; done

    # Proxy-ARP ausschalten
    for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/proxy_arp 2> /dev/null; 
done

    # Ungültige ICMP-Antworten ignorieren
    echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses 2> /dev/null

    # ICMP Echo-Broadcasts ignorieren
    echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts 2> /dev/null

    # Max. 500/Sekunde (5/Jiffie) senden
    echo 5 > /proc/sys/net/ipv4/icmp_ratelimit

    # Speicherallozierung und -timing für IP-De/-Fragmentierung
    echo 262144 > /proc/sys/net/ipv4/ipfrag_high_thresh
    echo 196608 > /proc/sys/net/ipv4/ipfrag_low_thresh
    echo 30 > /proc/sys/net/ipv4/ipfrag_time

    # TCP-FIN-Timeout zum Schutz vor DoS-Attacken setzen
    echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout

    # Maximal 3 Antworten auf ein TCP-SYN
    echo 3 > /proc/sys/net/ipv4/tcp_retries1

    # TCP-Pakete maximal 15x wiederholen
    echo 15 > /proc/sys/net/ipv4/tcp_retries2

    ;;

  stop)
    echo "Stoppe IP-Paketfilter"
    # Tabelle flushen
    iptables -F
    iptables -t nat -F
    iptables -t mangle -F
    iptables -X
    iptables -t nat -X
    iptables -t mangle -X
    echo "Deaktiviere IP-Routing"
    echo 0 > /proc/sys/net/ipv4/ip_forward

    # Default-Policies setzen
    iptables -P INPUT ACCEPT
    iptables -P OUTPUT ACCEPT
    iptables -P FORWARD ACCEPT
    ;;

  status)
    echo "Tabelle filter"
    iptables -L -vn
    echo "Tabelle nat"
    iptables -t nat -L -vn
    echo "Tabelle mangle"
    iptables -t mangle -L -vn
    ;;

  *)
    echo "Fehlerhafter Aufruf"
    echo "Syntax: $0 {start|stop|status}"
    exit 1
    ;;

esac
_______________________________________________
Lug-dd maillist  -  Lug-dd@mailman.schlittermann.de
https://ssl.schlittermann.de/mailman/listinfo/lug-dd

Antwort per Email an