Anzeige:
Ergebnis 1 bis 7 von 7

Thema: IPTABLES meine erste Konfig könnte mal jemmand rüber kucken ???

  1. #1
    Chaosmaster
    Registriert seit
    Aug 2002
    Ort
    Much
    Beiträge
    736

    IPTABLES meine erste Konfig könnte mal jemmand rüber kucken ???

    Hi..

    Hier ist meine Configuration für ne Firewall...

    Mein PC dient auch als DSL Router, und ich weiss nicht ob ich alles richtig gemacht habe schau doch mal bitte jemmand drüber.... und bitte feedback geben DANKE schonmal

    PS: Ich habe noch nicht alle Games eingetragen... bin noch die PORTS am rausfinden


    ---------------------------------------------------------------------------------------------

    #!/bin/sh

    # Variablen {
    nameserver=194.25.2.129
    lan0=192.168.0.0/24
    lan1=192.168.100.0/24
    lan2=10.0.0.0/24
    # }

    # Regeln löschen {
    iptables -F
    # }

    # Kernelparameter {
    echo 1 > /proc/sys/net/ipv4/ip_forward;
    echo 1 > /proc/sys/net/ipv4/ip_dynaddr;
    # }

    # DROP all IN/FORWARD/OUT {
    iptables -P INPUT DROP;
    iptables -P FORWARD DROP;
    iptables -P OUTPUT DROP;
    # }

    # ACCEPT OUT {
    # iptables -A OUTPUT -o eth0 -p tcp --sport 1024: -d $lan0 --dport 1024: -j ACCEPT;
    # iptables -A OUTPUT -o eth0 -p udp --sport 1024: -d $lan0 --dport 1024: -j ACCEPT;
    # iptables -A OUTPUT -o eth0 -p tcp --sport 1024: -d $lan1 --dport 1024: -j ACCEPT;
    # iptables -A OUTPUT -o eth0 -p udp --sport 1024: -d $lan1 --dport 1024: -j ACCEPT;
    # iptables -A OUTPUT -o eth0 -p tcp --sport 1024: -d $lan2 --dport 1024: -j ACCEPT;
    # iptables -A OUTPUT -o eth0 -p udp --sport 1024: -d $lan2 --dport 1024: -j ACCEPT;
    # CLIENT
    iptables -A OUTPUT -p tcp --sport 1024: --dport 20 -j ACCEPT; # to ftp-data (tcp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 21 -j ACCEPT; # to ftp (tcp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 22 -j ACCEPT; # to ssh (tcp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 25 -j ACCEPT; # to smtp (tcp)
    iptables -A OUTPUT -p udp --sport 1024: --dport 53 -j ACCEPT; # to dns (udp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 53 -j ACCEPT; # to dns (tcp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 80 -j ACCEPT; # to http (tcp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 110 -j ACCEPT; # to pop3 (tcp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 137 -j ACCEPT; # to net-bios-ns (tcp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 138 -j ACCEPT; # to net-bios-dgm (tcp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 139 -j ACCEPT; # to net-bios-ssn (tcp)
    iptables -A OUTPUT -p udp --sport 1024: --dport 137 -j ACCEPT; # to net-bios-ns (udp)
    iptables -A OUTPUT -p udp --sport 1024: --dport 138 -j ACCEPT; # to net-bios-dgm (udp)
    iptables -A OUTPUT -p udp --sport 1024: --dport 139 -j ACCEPT; # to net-bios-ssn (udp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 443 -j ACCEPT; # to https (tcp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 5190 -j ACCEPT; # to icq (tcp)
    iptables -A OUTPUT -p tcp --sport 1024: --dport 6000 -j ACCEPT; # to X11 (tcp)
    #SERVER
    iptables -A OUTPUT -p tcp --sport 20 --dport 1024: -j ACCEPT; # from ftp-data (tcp)
    iptables -A OUTPUT -p tcp --sport 21 --dport 1024: -j ACCEPT; # from ftp (tcp)
    iptables -A OUTPUT -p tcp --sport 22 --dport 1024: -j ACCEPT; # from ssh (tcp)
    iptables -A OUTPUT -p tcp --sport 25 --dport 1024: -j ACCEPT; # from smtp (tcp)
    iptables -A OUTPUT -p tcp --sport 80 --dport 1024: -j ACCEPT; # from http (tcp)
    iptables -A OUTPUT -p tcp --sport 110 --dport 1024: -j ACCEPT; # from pop3 (tcp)
    iptables -A OUTPUT -p tcp --sport 137 --dport 1024: -j ACCEPT; # from netbios-ns (tcp)
    iptables -A OUTPUT -p tcp --sport 138 --dport 1024: -j ACCEPT; # from netbios-dgm (tcp)
    iptables -A OUTPUT -p tcp --sport 139 --dport 1024: -j ACCEPT; # from netbios-ssn (tcp)
    iptables -A OUTPUT -p udp --sport 137 --dport 1024: -j ACCEPT; # from netbios-ns (udp)
    iptables -A OUTPUT -p udp --sport 138 --dport 1024: -j ACCEPT; # from netbios-dgm (udp)
    iptables -A OUTPUT -p udp --sport 139 --dport 1024: -j ACCEPT; # from netbios-ssn (udp)
    iptables -A OUTPUT -p tcp --sport 6000 --dport 1024: -j ACCEPT; # from X11 (tcp)
    # }

    # ACCEPT IN {
    # iptables -A INPUT -i eth0 -p tcp -s $lan0 --sport 1024: --dport 1024: -j ACCEPT;
    # iptables -A INPUT -i eth0 -p udp -s $lan0 --sport 1024: --dport 1024: -j ACCEPT;
    # iptables -A INPUT -i eth0 -p tcp -s $lan1 --sport 1024: --dport 1024: -j ACCEPT;
    # iptables -A INPUT -i eth0 -p udp -s $lan1 --sport 1024: --dport 1024: -j ACCEPT;
    # iptables -A INPUT -i eth0 -p tcp -s $lan2 --sport 1024: --dport 1024: -j ACCEPT;
    # iptables -A INPUT -i eth0 -p udp -s $lan2 --sport 1024: --dport 1024: -j ACCEPT;
    # CLIENT
    iptables -A INPUT -p tcp --sport 20 --dport 1024: ! --syn -j ACCEPT; # from ftp-data (tcp)
    iptables -A INPUT -p tcp --sport 21 --dport 1024: ! --syn -j ACCEPT; # from ftp (tcp)
    iptables -A INPUT -p tcp --sport 22 --dport 1024: ! --syn -j ACCEPT; # from ssh (tcp)
    iptables -A INPUT -p tcp --sport 25 --dport 1024: ! --syn -j ACCEPT; # from smtp (tcp)
    iptables -A INPUT -p udp --sport 53 -j ACCEPT; # from dns (udp)
    iptables -A INPUT -p tcp --sport 53 -j ACCEPT; # from dns (tcp)
    iptables -A INPUT -p tcp --sport 80 --dport 1024: ! --syn -j ACCEPT; # from http (tcp)
    iptables -A INPUT -p tcp --sport 110 --dport 1024: ! --syn -j ACCEPT; # from pop3 (tcp)
    iptables -A INPUT -p tcp --sport 137 --dport 1024: ! --syn -j ACCEPT; # from netpios-ns (tcp)
    iptables -A INPUT -p tcp --sport 138 --dport 1024: ! --syn -j ACCEPT; # from netpios-dgm (tcp)
    iptables -A INPUT -p tcp --sport 139 --dport 1024: ! --syn -j ACCEPT; # from netpios-ssn (tcp)
    iptables -A INPUT -p udp --sport 137 --dport 1024: -j ACCEPT; # from netpios-ns (udp)
    iptables -A INPUT -p udp --sport 138 --dport 1024: -j ACCEPT; # from netpios-dgm (udp)
    iptables -A INPUT -p udp --sport 139 --dport 1024: -j ACCEPT; # from netpios-ssn (udp)
    iptables -A INPUT -p tcp --sport 443 --dport 1024: ! --syn -j ACCEPT; # from https (tcp)
    iptables -A INPUT -p tcp --sport 5190 --dport 1024: ! --syn -j ACCEPT; # from icq (tcp)
    iptables -A INPUT -p tcp --sport 6000 --dport 1024: ! --syn -j ACCEPT; # from X11 (tcp)
    # SERVER
    iptables -A INPUT -p tcp --sport 1024: --dport 20 -j ACCEPT; # to ftp-data (tcp)
    iptables -A INPUT -p tcp --sport 1024: --dport 21 -j ACCEPT; # to ftp (tcp)
    iptables -A INPUT -p tcp --sport 1024: --dport 22 -j ACCEPT; # to ssh (tcp)
    iptables -A INPUT -p tcp --sport 1024: --dport 25 -j ACCEPT; # to smtp (tcp)
    iptables -A INPUT -p tcp --sport 1024: --dport 80 -j ACCEPT; # to http (tcp)
    iptables -A INPUT -p tcp --sport 1024: --dport 110 -j ACCEPT; # to pop3 (tcp)
    iptables -A INPUT -p tcp --sport 1024: --dport 137 -j ACCEPT; # to netbios-ns (tcp)
    iptables -A INPUT -p tcp --sport 1024: --dport 138 -j ACCEPT; # to netbios-dgm (tcp)
    iptables -A INPUT -p tcp --sport 1024: --dport 139 -j ACCEPT; # to netbios-ssn (tcp)
    iptables -A INPUT -p udp --sport 1024: --dport 137 -j ACCEPT; # to netbios-ns (udp)
    iptables -A INPUT -p udp --sport 1024: --dport 138 -j ACCEPT; # to netbios-dgm (udp)
    iptables -A INPUT -p udp --sport 138 --dport 138 -j ACCEPT; # to netbios-dgm <-> (udp)
    iptables -A INPUT -p udp --sport 1024: --dport 139 -j ACCEPT; # to netbios-ssn (udp)
    iptables -A INPUT -p tcp --sport 1024: --dport 6000 -j ACCEPT; # to X11 (tcp)
    # }

    # FORWARD {
    # TO SERVICE
    iptables -A FORWARD -p tcp --sport 1024: --dport 20 -j ACCEPT; # to ftp-data (tcp)
    iptables -A FORWARD -p tcp --sport 1024: --dport 21 -j ACCEPT; # to ftp (tcp)
    iptables -A FORWARD -p tcp --sport 1024: --dport 22 -j ACCEPT; # to ssh (tcp)
    iptables -A FORWARD -p tcp --sport 1024: --dport 25 -j ACCEPT; # to smtp (tcp)
    iptables -A FORWARD -p udp --sport 1024: --dport 53 -j ACCEPT; # to dns (udp)
    iptables -A FORWARD -p tcp --sport 1024: --dport 53 -j ACCEPT; # to dns (tcp)
    iptables -A FORWARD -p tcp --sport 1024: --dport 80 -j ACCEPT; # to http (tcp)
    iptables -A FORWARD -p tcp --sport 1024: --dport 110 -j ACCEPT; # to pop3 (tcp)
    iptables -A FORWARD -p tcp --sport 1024: --dport 443 -j ACCEPT; # to https (tcp)
    iptables -A FORWARD -p tcp --sport 1024: --dport 5190 -j ACCEPT; # to icq (tcp)
    # FROM SERVICE
    iptables -A FORWARD -p tcp --sport 20 --dport 1024: -j ACCEPT; # from ftp-data (tcp)
    iptables -A FORWARD -p tcp --sport 21 --dport 1024: -j ACCEPT; # from ftp (tcp)
    iptables -A FORWARD -p tcp --sport 22 --dport 1024: -j ACCEPT; # from ssh (tcp)
    iptables -A FORWARD -p tcp --sport 25 --dport 1024: -j ACCEPT; # from smtp (tcp)
    iptables -A FORWARD -p udp --sport 53 --dport 1024: -j ACCEPT; # from dns (udp)
    iptables -A FORWARD -p tcp --sport 53 --dport 1024: -j ACCEPT; # from dns (tcp)
    iptables -A FORWARD -p tcp --sport 80 --dport 1024: -j ACCEPT; # from http (tcp)
    iptables -A FORWARD -p tcp --sport 110 --dport 1024: -j ACCEPT; # from pop3 (tcp)
    iptables -A FORWARD -p tcp --sport 443 --dport 1024: -j ACCEPT; # from https (tcp)
    iptables -A FORWARD -p tcp --sport 5190 --dport 1024: -j ACCEPT; # from icq (tcp)
    # }

    # GAMES {
    # GAMESPY
    iptables -A OUTPUT -p tcp --sport 1024: --dport 28910 -j ACCEPT;
    iptables -A INPUT -p tcp --sport 28910 --dport 1024: -j ACCEPT;
    iptables -A OUTPUT -p tcp --sport 28910 --dport 1024: -j ACCEPT;
    iptables -A INPUT -p tcp --sport 1024: --dport 28910 -j ACCEPT;
    iptables -A FORWARD -p tcp --sport 28910 --dport 1024: -j ACCEPT;
    # NWN
    iptables -A OUTPUT -p udp --sport 1024: --dport 5121 -j ACCEPT;
    iptables -A INPUT -p udp --sport 5121 --dport 1024: -j ACCEPT;
    iptables -A OUTPUT -p udp --sport 5121 --dport 1024: -j ACCEPT;
    iptables -A INPUT -p udp --sport 1024: --dport 5121 -j ACCEPT;
    iptables -A FORWARD -p udp --sport 5121 --dport 1024: -j ACCEPT;
    iptables -A OUTPUT -p tcp --sport 1024: --dport 6667 -j ACCEPT;
    iptables -A INPUT -p tcp --sport 6667 --dport 1024: -j ACCEPT;
    iptables -A OUTPUT -p tcp --sport 6667 --dport 1024: -j ACCEPT;
    iptables -A INPUT -p tcp --sport 1024: --dport 6667 -j ACCEPT;
    iptables -A FORWARD -p tcp --sport 6667 --dport 1024: -j ACCEPT;
    # ET
    iptables -A OUTPUT -p udp --sport 1024: --dport 27960 -j ACCEPT;
    iptables -A INPUT -p udp --sport 27960 --dport 1024: -j ACCEPT;
    iptables -A OUTPUT -p udp --sport 27960 --dport 1024: -j ACCEPT;
    iptables -A INPUT -p udp --sport 1024: --dport 27960 -j ACCEPT;
    iptables -A FORWARD -p udp --sport 27960 --dport 1024: -j ACCEPT;
    # QIII
    # QIII UT 3.0
    # QIII NAVY SEALS
    # HL - CS
    # HL
    # CIV CALL TO POWER
    # MYTH II
    # DIABLO II
    # UT2003
    # SSAM I
    # SSAM II
    # AMERICAN ARMY OP
    # WAR III
    # WAR III FT
    # MOHAA
    # RTCW
    # SNES
    # DOOM III
    # }

    # LOOPBACK DEVICE {
    iptables -A INPUT -i lo -j ACCEPT;
    iptables -A OUTPUT -o lo -j ACCEPT;
    # }

    # ICMP {
    iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT;
    iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT;
    iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT;
    iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT;
    iptables -A OUTPUT -p icmp --icmp-type destination-unreachable -j ACCEPT;
    iptables -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT;
    iptables -A OUTPUT -p icmp --icmp-type source-quench -j ACCEPT;
    iptables -A OUTPUT -p icmp --icmp-type time-exceeded -j ACCEPT;
    iptables -A OUTPUT -p icmp --icmp-type parameter-problem -j ACCEPT;
    iptables -A INPUT -p icmp --icmp-type source-quench -j ACCEPT;
    iptables -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT;
    iptables -A INPUT -p icmp --icmp-type parameter-problem -j ACCEPT;
    # }

    # MASQ - NAT {
    iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE;
    # }

    # LOG {
    iptables -A INPUT -j LOG;
    iptables -A OUTPUT -j LOG;
    iptables -A FORWARD -j LOG;
    # }

    # DROP all other IN/OUT {
    iptables -A INPUT -p tcp --dport auth -j REJECT --reject-with tcp-reset;
    iptables -A INPUT -j DROP;
    #
    iptables -A FORWARD -p tcp -j REJECT --reject-with tcp-reset;
    iptables -A FORWARD -p udp -j REJECT;
    iptables -A FORWARD -j DROP;
    #
    iptables -A OUTPUT -p tcp -j REJECT --reject-with tcp-reset;
    iptables -A OUTPUT -p udp -j REJECT;
    iptables -A OUTPUT -j DROP;
    # }
    LFS Version (6 and CVS)
    [Kernel 2.6.11.11] [Xorg 6.8.1] [KDE 3.4]
    [NVIDIA 1.0-7167]

    Admin: Ieradur

  2. #2
    Chaosmaster
    Registriert seit
    Aug 2002
    Ort
    Much
    Beiträge
    736
    Noch etwas wie bekomme ich es hin das die FTP-Server auch funktionieren OHNE sofort alle PORTS oberhalb 1024 frei zugeben wie ich es in ner anderen Antwort gefunden habe ???

    So will ich es nicht machen da kann ich auch die Firewall weglassen:

    iptables -A OUTPUT -p tcp --sport 1024: --dport 1024: -j ACCEPT
    iptables -A INPUT -p tcp --sport 1024: --dport 1024: -j ACCEPT
    LFS Version (6 and CVS)
    [Kernel 2.6.11.11] [Xorg 6.8.1] [KDE 3.4]
    [NVIDIA 1.0-7167]

    Admin: Ieradur

  3. #3
    Chaosmaster
    Registriert seit
    Aug 2002
    Ort
    Much
    Beiträge
    736
    Da ich momentan noch nicht testen konnte

    iptables -A FORWARD -p udp --sport 27960 --dport 1024: -j ACCEPT;

    ist das so richtig damit alle PCs im LAN über meinen router mit allen PORTS von 1024:
    auf 27960 zugreiffen können oder habe ich dport und sport falsch bzw.. gedanklich vertauscht ?
    LFS Version (6 and CVS)
    [Kernel 2.6.11.11] [Xorg 6.8.1] [KDE 3.4]
    [NVIDIA 1.0-7167]

    Admin: Ieradur

  4. #4
    de Janeiro ! Avatar von emba
    Registriert seit
    Feb 2003
    Beiträge
    1.681
    hab grad leider keine muse, um mir das obige script durchzulesen :sarcastic:

    zum ftp: du brauchst für dein vorhaben das modul ip_conntrack_ftp
    zum 3. post: du hast das gedanklich vertauscht, so wie du es beschrieben hast

    greez
    | Don´t Mizz |

    » Death Metal

  5. #5
    Chaosmaster
    Registriert seit
    Aug 2002
    Ort
    Much
    Beiträge
    736
    Okay danke dann werde ich das schonmal Korregieren....

    mhhh muss ich auch eine regel schreiben z.B.:

    iptables -A FORWARD -p udp --sport 27960 --dport 1024: -j ACCEPT;
    iptables -A FORWARD -p udp --sport 1024: --dport 27960 -j ACCEPT;

    also für IN und OUT von 27960 nach 1024: und von 1024: nach 27960 ???

    oder genügt nur

    iptables -A FORWARD -p udp --sport 1024: --dport 27960 -j ACCEPT;

    "Da bei FORWARD nicht zwichen IN und OUT unterschieden wird bin ich etwas verwirrt "
    LFS Version (6 and CVS)
    [Kernel 2.6.11.11] [Xorg 6.8.1] [KDE 3.4]
    [NVIDIA 1.0-7167]

    Admin: Ieradur

  6. #6
    de Janeiro ! Avatar von emba
    Registriert seit
    Feb 2003
    Beiträge
    1.681
    du musst beides schreiben, oder auch hier wieder auf ein conntrack-helper zurückgreifen (-m state established)
    bei forward wird zwar nicht in und out unterschieden (bei einem int), aber sehr wohl from/to

    greez
    | Don´t Mizz |

    » Death Metal

  7. #7
    Chaosmaster
    Registriert seit
    Aug 2002
    Ort
    Much
    Beiträge
    736
    Danke ... das hilft mir sehr weiter... mhhh dann änder ich da mal ein bissel etwas und dann müsste meine Konfig eigentlich gebrauchbar stehen Danke dir vielmals
    LFS Version (6 and CVS)
    [Kernel 2.6.11.11] [Xorg 6.8.1] [KDE 3.4]
    [NVIDIA 1.0-7167]

    Admin: Ieradur

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •