Probleme mit Paketen die über Firewall sollen

Das Forum für den Linux-Pinguin - auch andere Unix-Derivate (*BSD, (Open)Solaris, Apple's Darwin / MacOS X, ...) sind hier willkommen!
Forumsregeln
Das Forum für den Linux-Pinguin - auch andere Unix-Derivate (*BSD, (Open)Solaris, Apple's Darwin / MacOS X, ...) sind hier willkommen!

Probleme mit Paketen die über Firewall sollen

Beitragvon TroubleWolf » So 23 Jul, 2006 20:08

Hallo alle.

So ich mach erst mal ein paar angaben die man glaub ich so braucht hier.

KNr. von Inode 101894

hab einen Einzelplatzzugang XDSL@home mit Ethernet Modem

verwendetes Modem ZyXEL Prestige 645R-A1

hab XP-Rechner der über nen Linux-Gentoo-Rechner(Firewall/Router/DNS/Proxy) dann auf Modem ins I-Net geht.

auf Linux Kiste is ne selbstgebastelte FW auf Iptables basis am laufen

hab PPPoE auf Linux als Einwahlmethode


So nun zum Problem. Die einwahl funktioniert reibungslos auch normaler Internetverkehr macht keine Probleme. Ich kann auch online Spielen aber nur bei dem Spiel das ich gerade am liebsten Spiel gehts einfach nicht mehr. Ja betonung auf "nicht mehr". Hatte so vor ca 2 Wochen nen Blitzschaden an meiner Linuxkiste zu betrauern und dadurch war ich gezwungen fast alles an meinem Linuxrechner zu ersetzen. Mein Firewallskript hatte ich glücklicher weise noch wo anders gespeichert und so kommt es jetzt in alter form wieder zum einsatz. Aber leider geht das was vor dem wechsel von Hardwarekomponenten funktioniert hat jetzt leider nicht mehr. Bin mir jetzt nicht mehr sicher ob das Script die alte Version von meinem Linuxrechner ist oder nicht deswegen hab ich das Problem mal hier reingepackt. Könnte es nicht auch an dem Modem liegen das es was abbekommen hat bei dem Blitzschlag ?? Aber ich dachte mir wenn sonst alles funktioniert mit dem Modem dann Müsste es doch eher an meinem Skript liegen. Ich komm aber nicht um die Burg drauf was da schief lauft.

Hier mal die Pakete die Meine Firewall rausfiltert die eigentlich durch sollten

Jul 21 06:22:20 gmundens DROP-TCP IN=ppp0 OUT= MAC= SRC=80.239.233.100 DST=85.124.1.244 LEN=1452 TOS=0x00 PREC=0x00 TTL=53 ID=39200 DF PROTO=TCP SPT=3724 DPT=1058 WINDOW=9376 RES=0x00 ACK URGP=0
Jul 21 06:22:20 gmundens DROP-TCP IN=ppp0 OUT= MAC= SRC=80.239.233.100 DST=85.124.1.244 LEN=1452 TOS=0x00 PREC=0x00 TTL=53 ID=39206 DF PROTO=TCP SPT=3724 DPT=1058 WINDOW=9376 RES=0x00 ACK URGP=0
Jul 21 06:22:20 gmundens DROP-TCP IN=ppp0 OUT= MAC= SRC=80.239.233.100 DST=85.124.1.244 LEN=1452 TOS=0x00 PREC=0x00 TTL=53 ID=39232 DF PROTO=TCP SPT=3724 DPT=1058 WINDOW=9376 RES=0x00 ACK URGP=0
Jul 21 06:22:21 gmundens DROP-TCP IN=ppp0 OUT= MAC= SRC=80.239.233.100 DST=85.124.1.244 LEN=1452 TOS=0x00 PREC=0x00 TTL=53 ID=39236 DF PROTO=TCP SPT=3724 DPT=1058 WINDOW=9376 RES=0x00 ACK URGP=0
Jul 21 06:22:22 gmundens DROP-TCP IN=ppp0 OUT= MAC= SRC=80.239.233.100 DST=85.124.1.244 LEN=1440 TOS=0x00 PREC=0x00 TTL=53 ID=39242 DF PROTO=TCP SPT=3724 DPT=1058 WINDOW=11720 RES=0x00 ACK URGP=0
Jul 21 06:22:22 gmundens DROP-UDP IN=ppp0 OUT= MAC= SRC=61.230.119.210 DST=85.124.1.244 LEN=90 TOS=0x00 PREC=0x00 TTL=109 ID=40286 PROTO=UDP SPT=27605 DPT=10012 LEN=70


Das letzte Paket gehört nicht zu den Pakten von WoW.

In meinem FW-Skript sollte eigentlich folgende Zeile dafür sorgen das die Pakte bei meinem XP-Rechner eintrudeln:

iptables -t nat -A PREROUTING -p TCP -i $INET -m tcp --sport 3724 --dport $UNPRIV -j DNAT --to-destination 192.168.2.20:3724

192.168.2.20 is IP von meinem XP-Rechner
$INET ist Interface PPP0
$UNPRIV sind alle Ports zwischen 1024 und 65535

Aber tun sie nicht sie wandern statt dessen in die drop rule.

Ich hab keine Ahnung wieso sind die pakete irgendwie beschädigt oder sonst was oder ist meine Regel dafür falsch ich weis nicht mehr weiter probier hier schon Tage rum.

Könnte es nicht doch an nem teilweise beschädigtem Modem liegen ?? Aber wie teste ich das ??

Also jeder was weis bitte melden.
TroubleWolf
Neu im Board
Neu im Board
 
Beiträge: 16
Registriert: So 23 Jul, 2006 18:35

Beitragvon superracer » So 23 Jul, 2006 21:19

mach mal ein "iptables -t nat -L -v -n", steht dort deine rule drin? wie sieht sie dort drin aus?
superracer
Board-User Level 3
Board-User Level 3
 
Beiträge: 1073
Registriert: So 04 Jul, 2004 11:18

Beitragvon TroubleWolf » So 23 Jul, 2006 22:26

Also meine Rule steht drinnen hier ein auszug aus meiner Satusausgabe.

Code: Alles auswählen
Chain PREROUTING (policy ACCEPT 651 packets, 65631 bytes)
pkts bytes target     prot opt in     out     source               destination         
    0     0 DNAT       tcp  --  ppp0   *       0.0.0.0/0            0.0.0.0/0           tcp spt:3724 dpts:1024:65535 to:192.168.2.20:3724
    0     0 DNAT       tcp  --  ppp0   *       0.0.0.0/0            0.0.0.0/0           tcp spts:1024:65535 dpt:3724 to:192.168.2.20:3724
    0     0 DNAT       tcp  --  eth2   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:21 to:192.168.2.1:21
    0     0 DNAT       tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:21 to:192.168.2.1:21
TroubleWolf
Neu im Board
Neu im Board
 
Beiträge: 16
Registriert: So 23 Jul, 2006 18:35

Beitragvon superracer » Mo 24 Jul, 2006 07:13

hast du vielleicht benötigte module nicht geladen? (connection tracking würd mir da einfallen)
such mal nach modulen, die mit "ip_" oder "ipt_" anfangen und probier die nachladen...
superracer
Board-User Level 3
Board-User Level 3
 
Beiträge: 1073
Registriert: So 04 Jul, 2004 11:18

Beitragvon TroubleWolf » Mo 24 Jul, 2006 14:46

Ähm naja wird schwer mit Module nachladen da ich alles statisch in den Kernel kompiliert hab. Die entsprechende option im Kernel müsste aber aktiviert sein hier ein auszug aus meiner Kernel .config.

Code: Alles auswählen
# Core Netfilter Configuration
#
# CONFIG_NETFILTER_NETLINK is not set
CONFIG_NETFILTER_XTABLES=y
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y
CONFIG_NETFILTER_XT_TARGET_CONNMARK=y
CONFIG_NETFILTER_XT_TARGET_MARK=y
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
CONFIG_NETFILTER_XT_MATCH_COMMENT=y
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y
CONFIG_NETFILTER_XT_MATCH_CONNMARK=y
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
CONFIG_NETFILTER_XT_MATCH_DCCP=y
CONFIG_NETFILTER_XT_MATCH_HELPER=y
CONFIG_NETFILTER_XT_MATCH_LENGTH=y
CONFIG_NETFILTER_XT_MATCH_LIMIT=y
CONFIG_NETFILTER_XT_MATCH_MAC=y
CONFIG_NETFILTER_XT_MATCH_MARK=y
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=y
CONFIG_NETFILTER_XT_MATCH_REALM=y
CONFIG_NETFILTER_XT_MATCH_SCTP=y
CONFIG_NETFILTER_XT_MATCH_STATE=y
CONFIG_NETFILTER_XT_MATCH_STRING=y
CONFIG_NETFILTER_XT_MATCH_TCPMSS=y

#
# IP: Netfilter Configuration
#
CONFIG_IP_NF_CONNTRACK=y
CONFIG_IP_NF_CT_ACCT=y
CONFIG_IP_NF_CONNTRACK_MARK=y
# CONFIG_IP_NF_CONNTRACK_EVENTS is not set
# CONFIG_IP_NF_CT_PROTO_SCTP is not set
CONFIG_IP_NF_FTP=y
# CONFIG_IP_NF_IRC is not set
# CONFIG_IP_NF_NETBIOS_NS is not set
# CONFIG_IP_NF_TFTP is not set
# CONFIG_IP_NF_AMANDA is not set
CONFIG_IP_NF_PPTP=y
CONFIG_IP_NF_QUEUE=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_IPRANGE=y
CONFIG_IP_NF_MATCH_MULTIPORT=y
# CONFIG_IP_NF_MATCH_TOS is not set
# CONFIG_IP_NF_MATCH_RECENT is not set
# CONFIG_IP_NF_MATCH_ECN is not set
CONFIG_IP_NF_MATCH_DSCP=y
# CONFIG_IP_NF_MATCH_AH_ESP is not set
CONFIG_IP_NF_MATCH_TTL=y
CONFIG_IP_NF_MATCH_OWNER=y
CONFIG_IP_NF_MATCH_ADDRTYPE=y
CONFIG_IP_NF_MATCH_HASHLIMIT=y
# CONFIG_IP_NF_MATCH_POLICY is not set
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_IP_NF_TARGET_LOG=y
# CONFIG_IP_NF_TARGET_ULOG is not set
CONFIG_IP_NF_TARGET_TCPMSS=y
CONFIG_IP_NF_NAT=y
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=y
CONFIG_IP_NF_TARGET_REDIRECT=y
CONFIG_IP_NF_TARGET_NETMAP=y
CONFIG_IP_NF_TARGET_SAME=y
# CONFIG_IP_NF_NAT_SNMP_BASIC is not set
CONFIG_IP_NF_NAT_FTP=y
CONFIG_IP_NF_NAT_PPTP=y
CONFIG_IP_NF_MANGLE=y
# CONFIG_IP_NF_TARGET_TOS is not set
# CONFIG_IP_NF_TARGET_ECN is not set
CONFIG_IP_NF_TARGET_DSCP=y
CONFIG_IP_NF_TARGET_TTL=y
# CONFIG_IP_NF_TARGET_CLUSTERIP is not set
CONFIG_IP_NF_RAW=y
CONFIG_IP_NF_ARPTABLES=y
CONFIG_IP_NF_ARPFILTER=y
CONFIG_IP_NF_ARP_MANGLE=y
TroubleWolf
Neu im Board
Neu im Board
 
Beiträge: 16
Registriert: So 23 Jul, 2006 18:35

Beitragvon codec » Mo 24 Jul, 2006 19:30

Ne Forward Rule hast du auch gemacht?
codec
Board-User Level 1
Board-User Level 1
 
Beiträge: 553
Registriert: Di 28 Okt, 2003 12:48

Beitragvon TroubleWolf » Mo 24 Jul, 2006 20:42

Ja hab ich. Sind momentan sogar 2 drinnen die das bewerkstelligen müssten aber zur sicherheit hier mal mein Firewallskript. Guckt mal selber ob ihr da Fehler findet.

Code: Alles auswählen
#!/sbin/runscript

opts="start stop reload status"

depend() {
   need logger net
}

start() {
   ebegin "So hier kommt der schlimme Finger sssssssss!!"


# Statische Sachen:
   # Interfaces
   INET=ppp0
   LANS=eth2
   LANX=eth0

   # Adressen
   IP_SERVER=172.16.12.199
   IP_S=192.168.2.20
   IP_X=192.168.0.20
   IP_S_BEREICH=192.168.2.0/24
   IP_X_BEREICH=192.168.0.0/24

   # Nameserver
   NS1=192.168.0.1
   NS2=195.58.160.194   
   NS3=195.58.161.122

   # Ports
   UNPRIV="1024:65535"
   TRACEROUTE="33434:33999"

   # Private Adressbereiche
   CLASSA=10.0.0.0/8
   CLASSB=172.16.0.0/12
   CLASSC=192.168.0.0/16

# Kernelparameter setzen
   echo 1 > /proc/sys/net/ipv4/ip_forward
   echo 1 > /proc/sys/net/ipv4/tcp_syncookies
   echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
   echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses

   # Schutz vor ICMP-Redirect-Pakten aktivieren
   for f in /proc/sys/net/ipv4/conf/*/accept_redirects
   do
      echo 0 > $f
   done

   # Blocken von Source_Routed_Paketen
   for f in /proc/sys/net/ipv4/conf/*/accept_source_route
   do
      echo 0 > $f
   done

# Standart Police setzen und vorhandene Reglen loeschen
   iptables -P INPUT DROP
   iptables -P FORWARD DROP
   iptables -P OUTPUT DROP

   iptables -t nat -P POSTROUTING ACCEPT
   iptables -t nat -P PREROUTING ACCEPT

   iptables -F
   iptables -t nat -F
   iptables -X

# fuer Stateful Inspectipn von ftp:
#   modprobe ip_conntrack_ftp

# Masquerading sicher stellen
#   modprobe ipt_MASQUERADE

# Lokale Prozesse erlauben
   iptables -A OUTPUT -o lo -j ACCEPT
   iptables -A INPUT  -i lo -j ACCEPT


# Eigene Regeln

# Log und Reject
iptables -N rausdamit
iptables -A rausdamit -p TCP     --syn -j LOG --log-prefix "DROP-TCP-SYN "
iptables -A rausdamit -p TCP     --syn -m limit --limit 5/s -j REJECT --reject-with tcp-reset
iptables -A rausdamit -p TCP     --syn -j DROP
iptables -A rausdamit -p TCP      -j LOG --log-prefix "DROP-TCP "
iptables -A rausdamit -p TCP      -m limit --limit 5/s -j REJECT --reject-with tcp-reset
iptables -A rausdamit -p TCP      -j DROP
iptables -A rausdamit -p UDP      -j LOG --log-prefix "DROP-UDP "
iptables -A rausdamit -p UDP      -m limit --limit 5/s -j REJECT --reject-with icmp-port-unreachable
iptables -A rausdamit -p UDP      -j DROP
iptables -A rausdamit -p ICMP      -j LOG --log-prefix "DROP-ICMP "
iptables -A rausdamit -p ICMP      -j DROP
iptables -A rausdamit         -j LOG --log-prefix "DROP-PROTO-ETC "
iptables -A rausdamit          -m limit --limit 5/s -j REJECT --reject-with icmp-proto-unreachable
iptables -A rausdamit         -j DROP


# Firewall, NAT, Masquerading und solche Sachen

# communikation zwischen Provider und ppp0 zulassen
iptables -A INPUT -p TCP -i $INET -s 10.0.0.138 --sport 1723 --dport $UNPRIV -m state --state NEW -j ACCEPT

# IP-Spoofing verhindern
iptables -A INPUT -i $INET -s $CLASSA -j rausdamit
iptables -A INPUT -i $INET -s $CLASSB -j rausdamit
iptables -A INPUT -i $INET -s $CLASSC -j rausdamit

# Generelle Regeln fuer Antwortpakete
iptables -A INPUT   -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT   -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD   -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

# Gentoo rsync Port oeffnen
#iptables -A OUTPUT    -p TCP -o $INET --dport 873 -m state --state NEW -j ACCEPT

# ssh erlauben fuer Internet
iptables -A OUTPUT   -p TCP -o $INET --sport $UNPRIV --dport 22 -m state --state NEW -j ACCEPT

# BitTorrent Ports oeffnen
#iptables -A OUTPUT   -p TCP -o $INET --sport 55555:55565 -m state --state NEW -j ACCEPT
#iptables -A INPUT   -p TCP -i $INET --dport 55555:55565 -m state --state NEW -j ACCEPT

# Unprivilegierte Ports von innen nach aussen (verbindungsaufbau erlaubt) auf
# und von aussen nach innen (verbindungsaufbau nicht erlaubt)
iptables -A FORWARD -p TCP -i $LANS -o $INET --sport $UNPRIV --dport $UNPRIV -m state --state NEW -j ACCEPT
iptables -A FORWARD -p UDP -i $LANS -o $INET --sport $UNPRIV --dport $UNPRIV -m state --state NEW -j ACCEPT
iptables -A FORWARD -p TCP -i $LANS -o $INET --sport $UNPRIV --dport 80 -m state --state NEW -j ACCEPT

# Masquerading
iptables -t nat -A POSTROUTING -o $INET -j MASQUERADE

# WoW Umleitung
iptables -t nat -A PREROUTING -p TCP -i $INET -m tcp --sport 3724 --dport $UNPRIV -j DNAT --to-destination 192.168.2.20:3724
iptables -t nat -A PREROUTING -p TCP -i $INET -m tcp --sport $UNPRIV --dport 3724 -j DNAT --to-destination 192.168.2.20:3724

# WoW weiterleiten
iptables -A FORWARD -p TCP -d 192.168.2.20 --dport 3724 -j ACCEPT

# Versuchsregel
#iptables -A FORWARD -p TCP --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

# Cataclysm
#iptables -A FORWARD  -p TCP -i $LANS -o $INET --sport $UNPRIV --dport 80 -m state --state NEW -j ACCEPT

# CWSShredder Update
#iptables -A FORWARD  -p TCP -i $LANS -o $INET --sport $UNPRIV --dport 80 -m state --state NEW -j ACCEPT

# ICMP (Ping) forwarden
iptables -A FORWARD -p ICMP -j ACCEPT

# smtp und pop3 forwarden
iptables -A FORWARD -p TCP -i $LANS -o $INET --sport $UNPRIV --dport 110 -m state --state NEW -j ACCEPT
iptables -A FORWARD -p TCP -i $LANS -o $INET --sport $UNPRIV --dport 25 -m state --state NEW -j ACCEPT

# ab hier is jeglicher TCP-Verbindungsaufbau von aussen verboten
iptables -A INPUT -p TCP -i $INET --syn -j rausdamit

# http und https ins Internet
iptables -A OUTPUT -p TCP -o $INET --sport $UNPRIV --dport 80 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p TCP -o $INET --sport $UNPRIV --dport 443 -m state --state NEW -j ACCEPT

# http-proxy (squid) im Lan auf Server freigeben
iptables -A INPUT -p TCP -i $LANS --sport $UNPRIV --dport 3128 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -i $LANX --sport $UNPRIV --dport 3128 -m state --state NEW -j ACCEPT

# DNS von Server ins Internet freigeben
iptables -A OUTPUT -p UDP -o $INET --sport $UNPRIV --dport 53 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p TCP -o $INET --sport $UNPRIV --dport 53 -m state --state NEW -j ACCEPT
#iptables -A OUTPUT -p UDP -o $INET --sport 520     --dport 520 -m state --state NEW -j ACCEPT

# DNS von LAN auf Server zulassen
iptables -A INPUT -p UDP -i $LANS --sport $UNPRIV --dport 53 -m state --state NEW -j ACCEPT
iptables -A INPUT -p UDP -i $LANX --sport $UNPRIV --dport 53 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -i $LANS --sport $UNPRIV --dport 53 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -i $LANX --sport $UNPRIV --dport 53 -m state --state NEW -j ACCEPT

# DNS von Server auf Lan zulassen
iptables -A OUTPUT -p UDP -o $LANS --sport $UNPRIV --dport 53 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p UDP -o $LANX --sport $UNPRIV --dport 53 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p TCP -o $LANS --sport $UNPRIV --dport 53 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p TCP -o $LANX --sport $UNPRIV --dport 53 -m state --state NEW -j ACCEPT

# ftp via squid
iptables -A PREROUTING -t nat -p tcp -i $LANS -d 0/0 --dport 21 -j DNAT --to-destination 192.168.2.1:21
iptables -A PREROUTING -t nat -p tcp -i $LANX -d 0/0 --dport 21 -j DNAT --to-destination 192.168.2.1:21

# ftp-Kommandokanal von squid ins Internet
iptables -A OUTPUT -p TCP --sport $UNPRIV --dport 21 -m state --state NEW -j ACCEPT

# FTP-Datenkanal des Proxys von hohen Ports zu hohen Ports
iptables -A OUTPUT -p TCP -o $INET --sport $UNPRIV --dport $UNPRIV -m state --state NEW -j ACCEPT

# FTP-Kommandokanal vom Lan zum Proxy
iptables -A INPUT -p TCP -i $LANS --sport $UNPRIV --dport 21 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -i $LANX --sport $UNPRIV --dport 21 -m state --state NEW -j ACCEPT

# FTP-Datenkanal vom Lan zum Proxy
iptables -A INPUT -p TCP -i $LANS --dport $UNPRIV --sport $UNPRIV -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -i $LANX --dport $UNPRIV --sport $UNPRIV -m state --state NEW -j ACCEPT

# traceroute (von Server ins I-Net)
iptables -A OUTPUT -p UDP -o $INET --dport $TRACEROUTE -m state --state NEW -j ACCEPT

# SSH lokales Netz
iptables -A OUTPUT -p TCP -o $LANS --sport $UNPRIV --dport 22 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p TCP -o $LANX --sport $UNPRIV --dport 22 -m state --state NEW -j ACCEPT

# zu Lan
iptables -A INPUT -p TCP -i $LANS --sport $UNPRIV --dport 22 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -i $LANX --sport $UNPRIV --dport 22 -m state --state NEW -j ACCEPT

# DHCP von LAN auf Server
iptables -A INPUT -p UDP -i $LANS --sport 67:68 --dport 67:68 -m state --state NEW -j ACCEPT
iptables -A INPUT -p UDP -i $LANX --sport 67:68 --dport 67:68 -m state --state NEW -j ACCEPT

# DHCP von Server auf LAN
iptables -A OUTPUT -p UDP -o $LANS --sport 67:68 --dport 67:68 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p UDP -o $LANX --sport 67:68 --dport 67:68 -m state --state NEW -j ACCEPT

# Samba von Server  auf LAN erlauben
iptables -A OUTPUT -p UDP -o $LANS --sport 137:139 --dport 137:139 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p UDP -o $LANX --sport 137:139 --dport 137:139 -m state --state NEW -j ACCEPT

# SAMBA von LAN auf Server erlauben
iptables -A INPUT -p UDP -i $LANS --sport 137:139 --dport 137:139 -m state --state NEW -j ACCEPT
iptables -A INPUT -p UDP -i $LANX --sport 137:139 --dport 137:139 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -i $LANS --sport $UNPRIV --dport 137:139 -m state --state NEW -j ACCEPT
iptables -A INPUT -p TCP -i $LANX --sport $UNPRIV --dport 137:139 -m state --state NEW -j ACCEPT
iptables -A INPUT -p UDP -i $LANS --sport 137:139 --dport 53     -m state --state NEW -j ACCEPT
iptables -A INPUT -p UDP -i $LANX --sport 137:139 --dport 53      -m state --state NEW -j ACCEPT

# Samba ins I-Net verbieten
iptables -A OUTPUT -p UDP -o $INET --dport 137:139 -j DROP

# Mysql port oeffnen
iptables -A INPUT -p TCP -i $LANS --dport 3306 -m state --state NEW -j ACCEPT

# ICMP Ping 8 und 0 ausgehend erlauben
iptables -A OUTPUT -p ICMP      --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p ICMP      --icmp-type echo-reply   -j ACCEPT
iptables -A OUTPUT -p ICMP      --icmp-type destination-unreachable -j ACCEPT

# ICMP Ping 8 und 0 eingehend auf Lan erlaubt
iptables -A INPUT  -p ICMP -i $LANS   --icmp-type echo-request -j ACCEPT
iptables -A INPUT  -p ICMP -i $LANX   --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p ICMP -o $LANS   --icmp-type echo-reply   -j ACCEPT
iptables -A OUTPUT -p ICMP -o $LANX   --icmp-type echo-reply   -j ACCEPT

# ICMP Ping 8 und 0 eingehend auf Cable in Grenzen erlauben
iptables -A INPUT  -p ICMP -i $INET    -m limit --limit 5/s --icmp-type echo-request -j ACCEPT
iptables -A INPUT  -p ICMP -i $INET    --icmp-type echo-request -j rausdamit
iptables -A INPUT  -p ICMP -i $INET    --icmp-type echo-reply   -j ACCEPT
iptables -A INPUT  -p ICMP -i $INET    --icmp-type destination-unreachable -j ACCEPT

# So was nun bishier her gekommen is wird rausgeschmissen oder zurueckgewiesen
iptables -A INPUT   -j rausdamit
iptables -A FORWARD   -j rausdamit
iptables -A OUTPUT   -j rausdamit


#echo $IP_SERVER
   einfo "Der schlimme Finger is nu auf der Leitung drauf!!"
   eend $?
}

stop() {
   ebegin "Weg mit dem schlimmen Finger!!"
iptables -F
iptables -t nat -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

   einfo "Der schlimme Finger is wieder weg nu kann alles wieder durch!!"
echo 0 > /proc/sys/net/ipv4/ip_forward
   einfo "Routing is aus!!"
   eend $?
}

reload() {
   ebegin "Regeln löschen"
   iptables -F
   iptables -t nat -F
   iptables -X
   einfo "Regeln neu laden"
   eend $?
   
   start
}   

status() {
   ebegin "Die Filterregeln: "
iptables -L -n -v
iptables -v -n -t nat -L POSTROUTING
iptables -v -n -t nat -L PREROUTING
   eend $?
}
TroubleWolf
Neu im Board
Neu im Board
 
Beiträge: 16
Registriert: So 23 Jul, 2006 18:35

Beitragvon mazunte2308 » Mo 24 Jul, 2006 21:05

> Ich kann auch online Spielen aber nur bei dem Spiel das ich gerade am liebsten Spiel gehts einfach nicht mehr. Ja betonung auf "nicht mehr".

würd mal schauen ob dieser Spieleserver ev. nen neuen Port/Nat hat wenn sonst alles funktioniert...
mejor con la bici a la playa de un Porsche para trabajar!
mazunte2308
Board-User Level 1
Board-User Level 1
 
Beiträge: 553
Registriert: Mi 01 Feb, 2006 08:41

Beitragvon TroubleWolf » Mo 24 Jul, 2006 23:06

Wenns so einfach wär. Nein Blizzard hat die Ports nicht gewechselt. Die sind noch immer die gleichen. Auserdem würden ja dann nicht die Pakte vom 3724er Port in der Drop-Rule landen sondern irgend welche anderen Ports.
TroubleWolf
Neu im Board
Neu im Board
 
Beiträge: 16
Registriert: So 23 Jul, 2006 18:35

Beitragvon TroubleWolf » Sa 29 Jul, 2006 17:07

Nach einer weitern Woche des rumprobierens (alle Pakete neu rein[mit gcc neu kompiliert], neuen Kernel gemacht und nicht nur einmal, auch mal probiert alle relevanten Module Modular zu starten) hab ich es noch immer nicht geschafft die blöden Pakete dazu zu bewegen sich vom Fleck zu bewegen :cry: :madcurse:

Hab mal beim Provider angerufen wegen Modem der hat aber gesagt das das nix hat.

Was ich herausgefunden hab ist das die Pakete die weiter sollen die POSTROUTING Regel einfach nicht zum greifen kriegt. Hab alles probiert jede erdenkliche match lösung und alles aber nix hilft. Habs mit der INPUT regl porbiert da krieg ich die Pakete ohne probs zum fassen und auch mit der MANGLE gehts ohne weiteres aber das bringt mir nix weil ich auf den Regeln den Paketen keine neue IP zuweisen kann. Das geht nur mit -t nat -A PREROUTING XXXXXX -j DNAT --to-destination IP. Weil sich das DNAT nur mit -t nat PREOUTING verwenden lässt.

Kann es sein das da ein BUG in den Iptables is oder was? Hab im Netz bis jetzt nix brauchbares gefunden oder was das auf einen Bug in der richtung hinweist. Oder bin ich zu blöd um den Fehler zu sehen.

Also schön langsam krieg ich die Kriese büdde büdde helft mir.
TroubleWolf
Neu im Board
Neu im Board
 
Beiträge: 16
Registriert: So 23 Jul, 2006 18:35

Beitragvon codec » Sa 29 Jul, 2006 18:50

Probier mal die Regeln einfach zu halten also:

iptables -t nat -A PREROUTING -p tcp -i ppp0 --sport 3724 -j DNAT --to-destination 192.168.2.20
iptables -A FORWARD -p tcp --sport 3724 -j ACCEPT

und dann probier es halt immer weiter einzuschraenken, dann solltest du ja sehen, an was es hackt
codec
Board-User Level 1
Board-User Level 1
 
Beiträge: 553
Registriert: Di 28 Okt, 2003 12:48

Beitragvon TroubleWolf » So 30 Jul, 2006 19:21

Ich glaub du hast nich ganz verstanden was ich gemeint hab mit dem das die NAT regel die pakte nicht zu greifen kriegt. Also hab ich mal schnell ein paar Testregeln gemacht. Siehe Code

Code: Alles auswählen
# WoW
   iptables -N WoW
   iptables -A WoW -j DROP


# Umleitung fuer WoW
   iptables -t nat -A PREROUTING    -p tcp -i ppp0  --sport 3724 -j DNAT --to-destination 192.168.0.20
   iptables -t nat -A PREROUTING    -p tcp -i ppp0  --sport 3724 -j ACCEPT
   iptables    -A FORWARD    -p tcp       --sport 3724 -j ACCEPT
   iptables    -A INPUT    -p tcp -i ppp0  --sport 3724 -j WoW


So laut Regeln müsste ja jetzt die NAT Regel die Pakete abgreifen und weiterleiten. Tut sie aber nicht. Die rutschen einfach unbehelligt weiter durch bis zur INPUT Regel welche die Pakte dann zur WoW Regel schickt, für den Test und zur besseren veranschaulichung , wo sie dann natürlich gedroped werden. Was soll ich auch mit ner allgemein gültigen IP im meinem Privaten netzwerk.

Zum Beweis hier noch die Statusausgabe von den Regeln:

Code: Alles auswählen
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination         

    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp spt:3724
    0     0 rausdamit  all  --  *      *       0.0.0.0/0            0.0.0.0/0


Chain WoW (1 references)
pkts bytes target     prot opt in     out     source               destination         
    6  8628 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           


Chain PREROUTING (policy ACCEPT 930 packets, 93843 bytes)
pkts bytes target     prot opt in     out     source               destination         
    0     0 DNAT       tcp  --  ppp0   *       0.0.0.0/0            0.0.0.0/0           tcp spt:3724 to:192.168.0.20
    0     0 ACCEPT     tcp  --  ppp0   *       0.0.0.0/0            0.0.0.0/0           tcp spt:3724
    0     0 DNAT       tcp  --  eth2   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:21 to:192.168.0.1:21
    0     0 DNAT       tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:21 to:192.168.0.1:21             


Also irgendwas kapier ich da nicht mehr. Irgendwie bin ich da halt am ende mit meinem Latein.
TroubleWolf
Neu im Board
Neu im Board
 
Beiträge: 16
Registriert: So 23 Jul, 2006 18:35

Beitragvon superracer » Mo 31 Jul, 2006 08:02

wie siehts mit den restlichen iptables aus? sind da sonst noch irgendwelche rules drin? (sprich: probier mal, _nur_ die dnat rules drin zu haben)
superracer
Board-User Level 3
Board-User Level 3
 
Beiträge: 1073
Registriert: So 04 Jul, 2004 11:18

Beitragvon TroubleWolf » Mo 31 Jul, 2006 22:32

Hab ich schon gemacht. Regeln ganz einfach gehalten die die halt gbraucht hab und nur die eine NAT Regel. Hat auch nix gebracht.
TroubleWolf
Neu im Board
Neu im Board
 
Beiträge: 16
Registriert: So 23 Jul, 2006 18:35

Beitragvon zid » Di 01 Aug, 2006 23:22

hallo troublewolf,
die blockierten packete haben dport=1058:

Jul 21 06:22:20 gmundens DROP-TCP IN=ppp0 OUT= MAC= SRC=80.239.233.100 DST=85.124.1.244 LEN=1452 TOS=0x00 PREC=0x00 TTL=53 ID=39200 DF PROTO=TCP SPT=3724 DPT=1058 WINDOW=9376 RES=0x00 ACK URGP=0

die forward-regel bezieht sich auf dport=3724:

# WoW weiterleiten
iptables -A FORWARD -p TCP -d 192.168.2.20 --dport 3724 -j ACCEPT

lg zid
zid
Board-User Level 3
Board-User Level 3
 
Beiträge: 1080
Registriert: Fr 23 Jun, 2006 09:08
Wohnort: wien

Nächste

Zurück zu LINUX & UNIX-DERIVATE

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 8 Gäste