abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

dnes 10:33 | Komunita

V pondělí měl na YouTube online premiéru otevřený krátký 2D film Hero vytvořený v 3D softwaru Blender. Cílem stejnojmenného projektu Hero je vylepšit nástroj Grease Pencil (tužka) v Blenderu 2.8.

Ladislav Hagara | Komentářů: 3
včera 23:22 | Nová verze

Byla vydána verze 4.0 kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Přehled novinek v Changelogu (GitHub).

Ladislav Hagara | Komentářů: 0
včera 17:22 | Komunita

Včera vydanou hru Rise of the Tomb Raider pro Linux lze do pondělí 23. dubna koupit na Steamu s 67% slevou. Místo 49,99 € za 16,49 €.

Ladislav Hagara | Komentářů: 0
včera 16:11 | Komunita

Na Humble Bundle lze získat počítačovou hru Satellite Reign (Wikipedie, YouTube) běžící také v Linuxu zdarma. Speciální akce končí v sobotu v 19:00.

Ladislav Hagara | Komentářů: 4
včera 15:44 | Zajímavý software

Společnost Apple koupila před třemi lety společnost FoundationDB vyvíjející stejnojmenný NoSQL databázový systém FoundationDB (Wikipedie). Včera byl tento systém uvolněn jako open source pod licencí Apache 2.0. Zdrojové kódy jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 0
včera 15:00 | Nová verze

Po dva a půl roce od vydání verze 5.7 oznámila společnost Oracle vydání nové major verze 8.0 (8.0.11) databázového systému MySQL (Wikipedie). Přehled novinek v poznámkách k vydání. Zdrojové kódy komunitní verze MySQL jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 2
19.4. 14:44 | Pozvánky

Spolek OpenAlt zve příznivce otevřených technologií a otevřeného přístupu na 151. brněnský sraz, který proběhne v pátek 20. 4. od 18:00 hodin v restauraci Benjamin na Drobného 46.

Ladislav Hagara | Komentářů: 0
19.4. 13:33 | Nová verze

Byla vydána verze 18.04.0 KDE Aplikací (KDE Applications). Přehled novinek v kompletním seznamu změn a na stránce s dalšími informacemi.

Ladislav Hagara | Komentářů: 0
19.4. 13:11 | Nová verze

Bylo oznámeno vydání nové stabilní verze 1.26 a beta verze 1.27 open source textového editoru Atom (Wikipedie). Přehled novinek i s náhledy v příspěvku na blogu. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
19.4. 12:55 | Komunita

Dle plánu byla dnes vydána hra Rise of the Tomb Raider (Wikipedie) pro Linux. Koupit ji lze za 49,99 €.

Ladislav Hagara | Komentářů: 3
Používáte na serverech port knocking?
 (3%)
 (7%)
 (46%)
 (27%)
 (17%)
Celkem 339 hlasů
 Komentářů: 29, poslední 5.4. 12:25
    Rozcestník

    Dotaz: iptables nejde smtp

    22.11.2005 09:45 Jaro Kramoriš | skóre: 9
    iptables nejde smtp
    Přečteno: 333×

    Zdravím.

    Nedarí sa mi odstrániť problém, prečo mi nejde odosielať pošta cez port 25 SMTP. Zo servera funguje všetko ako treba, ale z vnútornej siete mi odoslanie pošty skončí na firewalle. Distro mám Debian 3.1,firewall iptables, PC slúži zatial len ako firewall. Dík za pomoc. Tu je skript, ktorý používam:
    #!/bin/sh
    echo "Starting firewall ... /etc/init.d/fw"
    
    # zapneme routovani paketu
    echo "1" > /proc/sys/net/ipv4/ip_forward
    echo "1" > /proc/sys/net/ipv4/tcp_syncookies
    
    # rp_filter na zamezeni IP spoofovani
    for interface in /proc/sys/net/ipv4/conf/*/rp_filter; do
       echo "1" > ${interface}
    done
    
    # Modul pro FTP prenosy
    /sbin/modprobe ip_conntrack_ftp
    /sbin/modprobe ip_nat_ftp
    
    # Inicializace databaze modulu
    /sbin/depmod -a
    
    # Zavedeme moduly pro nestandardni cile
    /sbin/modprobe ipt_LOG
    /sbin/modprobe ipt_REJECT
    /sbin/modprobe ipt_MASQUERADE
    
    # Cesta k programu iptables
    IPTABLES="/sbin/iptables"
    
    # Vase IP adresa a vnejsi rozhrani
    INET_IP="192.168.0.1"
    INET_IFACE="eth0"
    
    # IP a broadcast adresa a rozhrani vnitrni site
    LAN1_IP="192.168.1.1/24"
    LAN1_BCAST="192.168.1.255/24"
    LAN1_IFACE="eth1"
    
    # Lokalni loopback rozhrani
    LO_IFACE="lo"
    LO_IP="127.0.0.1/8"
    
    # Firevall
    /sbin/iptables -X
    /sbin/iptables -F INPUT
    /sbin/iptables -F OUTPUT
    /sbin/iptables -F FORWARD
    /sbin/iptables -t nat -X
    /sbin/iptables -t nat -F POSTROUTING
    /sbin/iptables -t nat -F PREROUTING
    /sbin/iptables -t nat -F OUTPUT
    
    /sbin/iptables -P INPUT DROP
    /sbin/iptables -P OUTPUT DROP
    /sbin/iptables -P FORWARD DROP
    
    /sbin/iptables -t mangle -X
    /sbin/iptables -t mangle -F OUTPUT
    /sbin/iptables -t mangle -F PREROUTING
    
    
    # PREROUTING
    # Odchozi HTTP pozadavky (na port 80 s vyjimkou lokalniho serveru)
     $IPTABLES -t nat -A PREROUTING -p tcp -i  ! $INET_IFACE -d ! $INET_IP --dport 80
    
    # Presmerujeme port 2222 na port 22 (ssh) stanice uvnitr site
    $IPTABLES -t nat -A PREROUTING -p tcp -d $INET_IP --dport 22 -j DNAT --to 192.168.1.2:22
    
    
    # MASKARADA - POSTROUTING
    /sbin/iptables -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to $INET_IP
    
    
    # Pridavne retezce pro snazsi kontrolu na rezervovane adresy
    
    # Zahazovat a logovat (max. 5 x 3 pakety za hod)
    $IPTABLES -N logdrop
    $IPTABLES -F logdrop
    $IPTABLES -A logdrop -m limit --limit 5/h --limit-burst 3 -j LOG --log-prefix "Log droop: " --log-level 6
    $IPTABLES -A logdrop -j DROP
    
    # TOS flagy slouzi k optimalizaci datovych cest. Pro ssh, ftp a telnet
    # pozadujeme minimalni zpozdeni. Pro ftp-data zase maximalni propostnost
    $IPTABLES -t mangle -A PREROUTING -p tcp --sport ssh -j TOS --set-tos Minimize-Delay
    $IPTABLES -t mangle -A PREROUTING -p tcp --dport ssh -j TOS --set-tos Minimize-Delay
    $IPTABLES -t mangle -A PREROUTING -p tcp --sport ftp -j TOS --set-tos Minimize-Delay
    $IPTABLES -t mangle -A PREROUTING -p tcp --dport telnet -j TOS --set-tos Minimize-Delay
    $IPTABLES -t mangle -A PREROUTING -p tcp --sport ftp-data -j TOS --set-tos Maximize-Throughput
    
    # V tomto retezci se kontroluje, zda prichozi pakety nemaji nesmyslnou IP
    $IPTABLES -N IN_FW
    $IPTABLES -F IN_FW
    $IPTABLES -A IN_FW -i $LAN1_IFACE -s 192.168.0.0/16 -j logdrop
    $IPTABLES -A IN_FW -i $INET_IFACE -s 10.0.0.0/8 -j logdrop
    $IPTABLES -A IN_FW -s 172.16.0.0/12 -j logdrop
    $IPTABLES -A IN_FW -s 96.0.0.0/4 -j logdrop
    $IPTABLES -A IN_FW -s 127.0.0.0/8 -j logdrop
    $IPTABLES -A IN_FW -i $INET_IFACE -s $INET_IP -j logdrop
    
    # Blokování spameru
    $IPTABLES -A IN_FW -s 61.72.0.0/13 -j logdrop
    $IPTABLES -A IN_FW -s 61.80.0.0/12 -j logdrop
    $IPTABLES -A IN_FW -s 61.154.0.0/255.255.0.0 -j logdrop
    $IPTABLES -A IN_FW -s 195.166.224.0/19 -j logdrop
    $IPTABLES -A IN_FW -s 65.182.134.212/27 -j logdrop
    $IPTABLES -A IN_FW -s 65.182.134.224/29 -j logdrop
    $IPTABLES -A IN_FW -s 65.182.134.232 -j logdrop
    $IPTABLES -A IN_FW -s 65.182.134.233 -j logdrop
    $IPTABLES -A IN_FW -s 65.6.55.0/255.255.255.0 -j logdrop
    $IPTABLES -A IN_FW -s 130.228.184.234 -j logdrop
    $IPTABLES -A IN_FW -s 62.166.232.0/22 -j logdrop
    
    # Retezec pro stanoveni limitu prichozich SYN konexi (ochrana pred SYN floods)
    # propusti pouze 4 SYN segmenty/sec
    $IPTABLES -N syn-flood
    $IPTABLES -F syn-flood
    $IPTABLES -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN
    $IPTABLES -A syn-flood -j DROP
    
    
    # FORWARD
    # Navazovani spojeni ala Microsoft -
    # Paket navazuje spojeni, ale nema nastaveny priznak SYN, pryc s nim
    $IPTABLES -A FORWARD -p tcp ! --syn -m state --state NEW -j DROP
    $IPTABLES -A FORWARD -p tcp -i $INET_IFACE --tcp-flags SYN,FIN SYN,FIN -j LOG -m limit --limit 10/m --log-prefix="bogus packet: "
    $IPTABLES -A FORWARD -p tcp -i $INET_IFACE --tcp-flags SYN,FIN SYN,FIN -j DROP
    
    # Nechceme rezervovane adresy na rozhrani
    $IPTABLES -A FORWARD -i $INET_IFACE -j IN_FW
    $IPTABLES -A FORWARD -p tcp --syn -j syn-flood
    $IPTABLES -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 5 -j ACCEPT
    
    # Routing zvenku dovnitr pouze pro navazana spojeni (stavovy firewall)
    $IPTABLES -A FORWARD -i $INET_IFACE -o $LAN1_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT
    
    # Sluzbu AUTH neni dobre filtrovat pomoci DROP, protoze to muze
    # vest k prodlevam pri navazovani nekterych spojeni. Proto jej
    # sice zamitneme, ale tak, aby nedoslo k nezadoucim prodlevam.
    $IPTABLES -A FORWARD -p TCP --dport 113 -j REJECT --reject-with tcp-reset
    
    #Zakázání něktrerých sluľeb které se nesmí routovat
    $IPTABLES -A FORWARD -p tcp --dport 23:25 -j logdrop
    $IPTABLES -A FORWARD -p udp --dport 23:25 -j logdrop
    $IPTABLES -A FORWARD -p tcp --dport 137:139 -j logdrop
    $IPTABLES -A FORWARD -p udp --dport 137:139 -j logdrop
    $IPTABLES -A FORWARD -p tcp --dport 67:69 -j logdrop
    $IPTABLES -A FORWARD -p udp --dport 67:69 -j logdrop
    $IPTABLES -A FORWARD -p tcp --dport 445 -j logdrop
    $IPTABLES -A FORWARD -p udp --dport 445 -j logdrop
    
    # Umoznit presmerovani portu na stanici dovnitr site
    #$IPTABLES -A FORWARD -i $INET_IFACE -o $LAN1_IFACE -p tcp -d 192.168.1.254 --dport ssh -j ACCEPT
    
    # Routing ze site do internetu povolen
    $IPTABLES -A FORWARD -i $LAN1_IFACE -o $INET_IFACE -j ACCEPT
    
    # Ostatni pakety budou zahozeny, tak je budeme logovat (12 x 5 pkt/hod)
    $IPTABLES -A FORWARD -m limit --limit 12/h -j LOG --log-prefix "FORWARD drop: " --log-level 6
    
    
    #
    # Retezec INPUT
    #
    
    # Navazovani spojeni ala Microsoft -
    # Paket navazuje spojeni, ale nema nastaveny priznak SYN, pryc s nim
    $IPTABLES -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
    
    # Nejprve se zbavime nezadoucich adres
    $IPTABLES -A INPUT -i $INET_IFACE -j IN_FW
    
    # Odfiltrovat pokusy o syn-flooding
    $IPTABLES -A INPUT -p tcp --syn -j syn-flood
    $IPTABLES -A INPUT -p tcp -i $INET_IFACE --tcp-flags SYN,FIN SYN,FIN -j LOG -m limit --limit 10/m --log-prefix="bogus packet: "
    $IPTABLES -A INPUT -p tcp -i $INET_IFACE --tcp-flags SYN,FIN SYN,FIN -j DROP
    
    # Odfiltrovat pokusy o zahlceni icmp, propustime pouze PING
    $IPTABLES -A INPUT -p icmp -j syn-flood
    $IPTABLES -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 5 -j ACCEPT
    
    # Loopback neni radno omezovat
    $IPTABLES -A INPUT -i $LO_IFACE -j ACCEPT
    
    # Stejne jako pakety z lokalni site, jsou-li urceny pro nas
    $IPTABLES -A INPUT -i $LAN1_IFACE -d $LAN1_IP -j ACCEPT
    $IPTABLES -A INPUT -i $LAN1_IFACE -d $LAN1_BCAST -j ACCEPT
    $IPTABLES -A INPUT -i $LAN1_IFACE -d $INET_IP -j ACCEPT
    
    #SMTP
    #$IPTABLES -A INPUT -p tcp --dport 25 -j ACCEPT
    #$IPTABLES -A INPUT -p udp --dport 25 -j ACCEPT
    
    # Pakety od navazanych spojeni jsou v poradku
    $IPTABLES -A INPUT -d $INET_IP -m state --state ESTABLISHED,RELATED -j ACCEPT
    
    # MS klienti maji chybu v implementaci DHCP
    $IPTABLES -A INPUT -i $LAN1_IFACE -p udp --dport 67 -j ACCEPT
    
    # Pravidla pro povolene sluzby 
    $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 21 -j ACCEPT  #FTP server
    $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 22 -j ACCEPT  #SSH server
    $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 25 -j ACCEPT  #SMTP server TCP
    $IPTABLES -A INPUT -i $INET_IFACE -p UDP --dport 25 -j ACCEPT  #SMTP server UDP
    $IPTABLES -A INPUT -i $INET_IFACE -p UDP --dport 53 -j ACCEPT  #DNS server UDP
    $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 53 -j ACCEPT  #DNS server TCP
    $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 80 -j ACCEPT  #WWW server
    $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 110 -j ACCEPT #POP3 server
    $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 143 -j ACCEPT #IMAP server
    $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 443 -j ACCEPT #HTTPS server
    
    # Sluzbu AUTH neni dobre filtrovat pomoci DROP, protoze to muze
    # vest k prodlevam pri navazovani nekterych spojeni. Proto jej
    # sice zamitneme, ale tak, aby nedoslo k nezadoucim prodlevam.
    $IPTABLES -A INPUT -p TCP --dport 113 -m limit --limit 12/h -j LOG --log-prefix "INPUT   drop: " --log-level 6
    $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 113 -j REJECT --reject-with tcp-reset
    
    # Vsechno ostatni je zakazano - tedy logujeme, maxim. 12x5 pkt/hod
    $IPTABLES -A INPUT -m limit --limit 12/h -j LOG --log-prefix "INPUT   drop: " --log-level 6
    
    
    # Retezec OUTPUT
    #
    
    # local
    $IPTABLES -A OUTPUT -o lo -j ACCEPT
    
    # TOS flagy slouzi k optimalizaci datovych cest. Pro ssh, ftp a telnet
    # pozadujeme minimalni zpozdeni. Pro ftp-data zase maximalni propostnos
    $IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --sport ssh -j TOS --set-tos Minimize-Delay
    $IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --dport ssh -j TOS --set-tos Minimize-Delay
    $IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --sport ftp -j TOS --set-tos Minimize-Delay
    $IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --dport ftp -j TOS --set-tos Minimize-Delay
    $IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --dport telnet -j TOS --set-tos Minimize-Delay
    $IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --sport ftp-data -j TOS --set-tos Maximize-Throughput
    
    # Povolime odchozi pakety, ktere maji nase IP adresy
    $IPTABLES -A OUTPUT -s $LO_IP -j ACCEPT
    $IPTABLES -A OUTPUT -s $LAN1_IP -j ACCEPT
    $IPTABLES -A OUTPUT -s $INET_IP -j ACCEPT
    
    # Povolime DHCP broadcasty na LAN rozhrani
    $IPTABLES -A OUTPUT -o $LAN1_IFACE -p UDP --dport 68 --sport 67 -j ACCEPT
    
    # Ostatni pakety logujeme (nemely by byt zadne takove)
    $IPTABLES -A OUTPUT -j LOG --log-prefix "OUTPUT  drop: " --log-level 6
    
    
    # LOGUJ OSTATNI
    /sbin/iptables -A OUTPUT -j LOG --log-prefix "OUTPUT  drop posledni: " --log-level 6
    /sbin/iptables -A INPUT  -j LOG --log-prefix "INPUT   drop posledni: " --log-level 6
    /sbin/iptables -A FORWARD -j LOG --log-prefix "FORWARD drop posledni: " --log-level 6
    
    

    Odpovědi

    22.11.2005 09:56 id2307 | skóre: 8 | blog: Jmenoblogusmiobsahovatjenznaky | Dvůr Králové nad Labem
    Rozbalit Rozbalit vše Re: iptables nejde smtp
    já bych se skoro zamyslel nad těmito řádky:

    #Zakázání něktrerých sluľeb které se nesmí routovat
    $IPTABLES -A FORWARD -p tcp --dport 23:25 -j logdrop
    $IPTABLES -A FORWARD -p udp --dport 23:25 -j logdrop

    :)
    22.11.2005 10:03 Jaro Kramoriš | skóre: 9
    Rozbalit Rozbalit vše Re: iptables nejde smtp
    hmm, ak je to vtom, alebo sú nepodstatné, zmažem.
    22.11.2005 10:05 id2307 | skóre: 8 | blog: Jmenoblogusmiobsahovatjenznaky | Dvůr Králové nad Labem
    Rozbalit Rozbalit vše Re: iptables nejde smtp
    pokud jsem pochopil dotaz správně, že Vám nejde routování smtp z počítače na vnitřní síti na nějaký server kdesi venku tak je to s velkou pravděpodobností v těchto řádcích :) alespoň pro port 25 povolte forward :)
    22.11.2005 10:21 Jaro Kramoriš | skóre: 9
    Rozbalit Rozbalit vše Re: iptables nejde smtp
    Áno, pochopili ste to správne. Ďakujem za radu, idem testovať.
    22.11.2005 11:57 Jaro Kramoriš | skóre: 9
    Rozbalit Rozbalit vše Re: iptables nejde smtp
    Takže bolo to vtom. Už to krásne funguje. Ešte raz ďakujem.
    22.11.2005 14:03 Ľubomír Host | skóre: 19 | Bratislava
    Rozbalit Rozbalit vše Re: iptables nejde smtp
    Ja som rozbehol jeden taky projekt, firewallovaci skript pre linux. V konfiguracnom subore sa nastavia povolene sluzby, vie sa zapnut NAT, forwardovanie portov a podobne. Zacal som k tomu pisat user friendly konfigurator, ale este to nie je hotove. Ak by chcel niekto pomoct, tak mrknite na univerzálny firewallovací skript pre Linux.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.