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 15:22 | Komunita

    Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.

    Ladislav Hagara | Komentářů: 0
    včera 19:22 | Nová verze

    Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

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

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.

    Ladislav Hagara | Komentářů: 0
    včera 01:22 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 00:55 | Zajímavý projekt

    PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.

    vlk | Komentářů: 0
    7.5. 19:44 | Nová verze

    Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    7.5. 17:33 | Nová verze

    Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-05-06. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Pravděpodobně se jedná o poslední verzi postavenou na Debianu 12 Bookworm. Následující verze by již měla být postavena na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    7.5. 05:33 | Komunita

    Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.

    Ladislav Hagara | Komentářů: 17
    7.5. 03:55 | Komunita

    sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.

    Ladislav Hagara | Komentářů: 0
    6.5. 22:11 | Nasazení Linuxu

    Fedora se stala oficiální distribucí WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 3
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (8%)
     (22%)
     (4%)
     (2%)
     (2%)
     (1%)
     (1%)
     (3%)
    Celkem 564 hlasů
     Komentářů: 26, poslední včera 09:58
    Rozcestník

    Dotaz: iptables nejde smtp

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

    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.