abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:44 | Pozvánky

    V Praze o víkendu proběhla bastlířská událost roku - výstava Maker Fair v Praze. I strahovští bastlíři nelenili a bastly ostatních prozkoumali. Přijďte si proto i vy na Virtuální Bastlírnu popovídat, co Vás nejvíce zaujalo a jaké projekty jste si přinesli! Samozřejmě, nejen českou bastlířskou scénou je člověk živ - takže co se stalo ve světě a o čem mohou strahováci něco říct? Smutnou zprávou může být to, že provozovatel Sigfoxu jde do

    … více »
    bkralik | Komentářů: 0
    dnes 12:33 | Humor

    Kam asi vede IllllIllIIl.llIlI.lI? Zkracovač URL llIlI.lI.

    Ladislav Hagara | Komentářů: 0
    včera 22:00 | IT novinky

    Společnost OpenAI představila svůj nejnovější AI model GPT-4o (o jako omni, tj. vše). Nově také "vidí" a "slyší". Videoukázky na 𝕏 nebo YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Zajímavý článek

    Ondřej Filip publikoval reportáž z ceremonie podpisu kořenové zóny DNS. Zhlédnout lze také jeho nedávnou přednášku Jak se podepisuje kořenová zóna Internetu v rámci cyklu Fyzikální čtvrtky FEL ČVUT.

    Ladislav Hagara | Komentářů: 0
    včera 14:22 | IT novinky

    Společnost BenQ uvádí na trh novou řadu monitorů RD určenou pro programátory. První z nich je RD240Q.

    Ladislav Hagara | Komentářů: 19
    včera 13:00 | IT novinky

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem nadále zůstává Frontier od HPE (Cray) s výkonem 1,206 exaFLOPS. Druhá Aurora má oproti loňsku přibližně dvojnásobný počet jader a dvojnásobný výkon: 1,012 exaFLOPS. Novým počítačem v první desítce je na 6. místě Alps. Novým českým počítačem v TOP500 je na 112. místě C24 ve Škoda Auto v Mladé Boleslavi. Ostravská Karolina, GPU

    … více »
    Ladislav Hagara | Komentářů: 0
    včera 10:11 | Nová verze

    GHC (Glasgow Haskell Compiler, Wikipedie), tj. překladač funkcionálního programovacího jazyka Haskell (Wikipedie), byl vydán ve verzi 9.10.1. Přehled novinek v poznámkách k vydání.

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

    Po 9 týdnech vývoje od vydání Linuxu 6.8 oznámil Linus Torvalds vydání Linuxu 6.9. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna. Později také na Linux Kernel Newbies.

    Ladislav Hagara | Komentářů: 2
    11.5. 18:22 | Nová verze

    Byla vydána verze 0.2.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Společnost Cloudflare jej letos v únoru uvolnila pod licencí Apache 2.0.

    Ladislav Hagara | Komentářů: 0
    10.5. 19:11 | Nová verze

    Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 16
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (72%)
     (6%)
     (10%)
     (11%)
    Celkem 228 hlasů
     Komentářů: 16, poslední dnes 11:05
    Rozcestník

    Dotaz: IPv6 stavový firewall (ip6tables)

    13.12.2021 14:19 MilanC | skóre: 16
    IPv6 stavový firewall (ip6tables)
    Přečteno: 673×
    Ahoj,

    potřeboval bych poradit, jestli někoho něco nenapadne. Snažím se o stavový FW na IPv6 na routeru. Je zajímavé, že většina dostupných návodů nechává výchozí politiku pro INPUT a FORWARD ACCEPT, a pak zakazují až posledním pravidlem. To by ale mělo být jedno. Mě spíše zajímá, jestli tam mám nějakou logickou chybu nebo je problém někde úplně jinde.

    V reálu se to chová tak, že router komunikuje ven i dovnitř v pořádku (INPUT), ale komunikace ze zařízení za ním do internetu nefunguje (FORWARD). Eth1 je WAN rozhraní. IPv6 na zařízení za routerem je funkční, pokud pravidla flusnu, vše po IPv6 funguje správně. Nejsem tedy žádný specialista na IPv6, ale asi mi něco uniká.

    Možná to má nějaký důvod, že většina návodů má default policy ACCEPT? Budu rád za nápovědu a poučení, děkuji.
    -P INPUT DROP
    -P FORWARD DROP
    -P OUTPUT ACCEPT
    -A INPUT -d fe80::/64 -p udp -m udp --dport 546 -m state --state NEW -j ACCEPT
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -s 2a02:.../64 -i eth1 -p tcp -m tcp --dport 22 -j ACCEPT
    -A INPUT -p icmpv6 -j ACCEPT
    -A INPUT -i br0 -j ACCEPT
    -A INPUT -i eth0 -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A FORWARD -m state --state INVALID -j DROP
    -A FORWARD -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT

    Řešení dotazu:


    Odpovědi

    13.12.2021 14:40 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    Ještě doplním, br0 je rozhraní (brigde), do kterého spadá eth0+wlan0+wlan1, prostě LAN strana.
    MMMMMMMMM avatar 13.12.2021 15:56 MMMMMMMMM | skóre: 44 | blog: unstable | Valašsko :-)
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    Nikde nevidím pravidlo, které povoluje forward z LAN do WAN. ;)
    13.12.2021 17:10 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    Děkuji, já to tam už nějak neviděl, ani když jsem to porovnával proti firewallu v IPv4, kde samozřejmě je. Jdu to zkusit. :-)
    13.12.2021 15:59 GeorgeWH | skóre: 42
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    No ved tam nemas nikde povoleny forward z LAN do internetu.
    13.12.2021 19:55 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    Ve forward nic nemáš povolené tak nic nemůže projít......
    13.12.2021 22:47 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)

    Firewall na Linuxu se jmenuje nftables a ovládá se příkazem nft. Konfigurace je v /etc/nftables.conf.

    Pokud nějaký návod používá jakési příkazy a technologie z 0. let 21. století, ve 20. letech 21. století je vhodné takový návod ignorovat a najít místo něj nějaký aktuální.

    Logická chyba je (tipuju) v tom, že spojení se do stavů related ani established nemá jak dostat. Alespoň z jednoho směru je potřeba bezpodmínečně přijmout alespoň první paket.

    Někdo si s tím pečlivě hraje a určuje přesně, kudy a kam smí projít prví TCP SYN a první TCP DCERA, zatímco já na to většinou seru a nastavím to „tak nějak, aby to fungovalo“. Konfigurace pro forward vypadá u mě asi takto (po vynechání pár extra kdesicosů):

    chain forward {
        type filter hook forward priority filter; policy accept;
        ip6 nexthdr esp meta mark set meta mark | 0x00000101  # IPSec
        ip protocol esp meta mark set meta mark | 0x00000101  # IPSec
        meta mark & 0x00000101 == 0x00000101 accept           # IPSec
        ct state { established, related } accept
        ct state invalid drop
        iifgroup 99 accept            # důvěryhodná rozhraní (802.1x + WPA3/MACsec)
        iifgroup 72 jump outer_spoof  # vnější (v nějakém smyslu) rozhraní
        oifgroup 72 jump outer_reject
        oifgroup 72 tcp flags syn tcp option maxseg size set rt mtu
        tcp dport 22 accept
        ip6 nexthdr ipv6-icmp accept
        ip protocol icmp accept
        reject
    }
    
    chain outer_spoof {
        ip6 saddr xxxx:yyyy:zzzz::/48 drop
        ip saddr 10.x.y.z/16 drop  # nesmysl z roku 1975
        return
    }
    
    chain outer_reject {
        ip6 daddr xxxx:yyyy:zzzz::/48 reject with icmpv6 port-unreachable
        ip daddr 10.x.y.z/16 drop  # nesmysl z roku 1975
        return
    }
    

    Samozřejmě to není v žádném smyslu ideální nastavení; podstatná část je jakýsi kompromis, který se vzdává paranoidního schovávání klientů ve vnitřní síti ve prospěch rozumně rychlého odmítnutí spojení na neplatné adresy (což potřebuju mít funkční) atd.

    13.12.2021 22:56 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    Tohle je sice pěkné, ale na embedded linuxu spíše scifi. Já mám třeba kernel 3.11 a možnosti kvůli 8MB flash a 64MB RAM značně omezené, takže o podobných hi-end fičurách si můžu nechat zdát. Zůstanu tedy u technologie "z 0. let 21. století", která je nicméně stále naprosto běžná. :)
    14.12.2021 11:02 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    Ahoj, tak jsem doplnil pravidlo pro forward z LAN (br0), ale je to stále stejné a komunikace po IPv6 z LAN nejede.
    -P INPUT DROP
    -P FORWARD DROP
    -P OUTPUT ACCEPT
    -A INPUT -d fe80::/64 -p udp -m udp --dport 546 -m state --state NEW -j ACCEPT
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -s 2a02:.../64 -i eth1 -p tcp -m tcp --dport 22009 -j ACCEPT
    -A INPUT -p icmpv6 -j ACCEPT
    -A INPUT -i br0 -j ACCEPT
    -A INPUT -i eth0 -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A FORWARD -m state --state INVALID -j DROP
    -A FORWARD -i br0 -j ACCEPT
    -A FORWARD -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
    Jen pro srovnání konfigurace IPv4 firewallu vedle vypadá takto:
    -P PREROUTING ACCEPT
    -P INPUT DROP
    -P FORWARD DROP
    -P OUTPUT ACCEPT
    -A PREROUTING -d {WanIP} -i eth1 -p tcp -m tcp --dport 80 -j DROP
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -s 172.18.0.0/24 -i eth1 -p tcp -m tcp --dport 22 -j ACCEPT
    -A INPUT -i eth1 -p tcp -m tcp --dport 22 -j ACCEPT
    -A INPUT -d {WanIP} -i eth1 -p tcp -m tcp --dport 80 -j ACCEPT
    -A INPUT -d {WanIP} -i eth1 -p udp -m udp --dport 1900 -j DROP
    -A INPUT -i eth1 -p udp -m udp --dport 68 -j ACCEPT
    -A INPUT -d {WanIP} -i eth1 -p icmp -m icmp --icmp-type 8 -j ACCEPT
    -A INPUT -i eth1 -p 2 -j ACCEPT
    -A INPUT -i br0 -j ACCEPT
    -A INPUT -i eth0 -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
    -A FORWARD -p udp -m udp --sport 1701 -j ACCEPT
    -A FORWARD -p udp -m udp --dport 1701 -j ACCEPT
    -A FORWARD -p tcp -m tcp --dport 1723 -j ACCEPT
    -A FORWARD -p tcp -m tcp --sport 1723 -j ACCEPT
    -A FORWARD -p 47 -j ACCEPT
    -A FORWARD -d 224.0.0.0/4 -i eth1 -p udp -m udp -j ACCEPT
    -A FORWARD -d 224.0.0.0/4 -i eth1 -p 114 -j ACCEPT
    -A FORWARD -m state --state INVALID -j DROP
    -A FORWARD -i br0 -j ACCEPT
    -A FORWARD -i eth1 -o br0 -p udp -m udp --dport 500 -j ACCEPT
    -A FORWARD -d 224.0.0.0/4 -i eth1 -p udp -m udp -j ACCEPT
    -A FORWARD -i eth1 -o br0 -p esp -j ACCEPT
    -A FORWARD -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
    
    14.12.2021 14:13 ET
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    A nechces si tam dat "-j LOG", abys videl co povolit? Tipuju, ze povolit jen ten br0 je malo
    14.12.2021 17:16 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    To je dobrý nápad, zkusíme.

    Jinak kolega přišel na to, že když se vyhodí toto pravidlo, tak to začne procházet jak má...
    ip6tables -A FORWARD -m state --state INVALID -j DROP
    Tedy na forwardu zůstanou jen pravidla:
    ip6tables -A FORWARD -i br0 -j ACCEPT
    ip6tables -A FORWARD -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
    
    Zvláštní.
    15.12.2021 00:01 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    Zkuste si místo toho DROP dát to logování a uvidíte, jaké pakety vám to dropnulo, třeba z toho půjde poznat důvod.

    Bylo by to divné, ale napadá mě možnost, že si kernel nedokáže spojit vracející se SYN+ACK pakety při navazování spojení s tím SYN packetem, co od vás odešel - to by vysvětlilo, proč by je považoval za INVALID a dropnul. (Háček je v tom, že v takovém případě by nemělo být splněno pravidlo na ESTABLISHED/RELATED a ten paket by se měl zahodit kvůli policy.)

    Nebo ještě další možnost, že se jako INVALID považuje ACK paket, kterým se z vaší strany potvrzuje navázání spojení, a tohle pravidlo jej zahodí dřív, než by jej následující pravidlo s ACCEPT přijalo. Můžete ten DROP zkusit dát mezi ta dvě ACCEPT pravidla a uvidíte.
    Quando omni flunkus moritati
    31.8.2022 14:25 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    Ahoj, vrátil jsem se k tomu a je to přesně, jak píšeš. Ty pakety, které mají být ESTABLISHED/RELATED se považují za invalid a zahodí se. Nějaký nápad, co by se ještě dalo zjistit a zkusit to někde nějak napravit? Tohle už je na mě hodně hluboko v systému. Napadá mě, jestli třeba nechybí nějaká ipv6 volba v kernelu, která je třeba, aby ta tabulka navázaných spojení držela.
    31.8.2022 14:28 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    Ale předpokládám, že to je asi tak základní věc, kterou by nemělo jít ani vypnout? Pro jistotu, tyto IPV6 volby mám v kernelu.
    cat ./.config | grep IPV6
    CONFIG_IPV6=y
    CONFIG_RTL_IPV6READYLOGO=y
    # CONFIG_RTL_IPV6READYLOGO_HOST is not set
    # CONFIG_IPV6_PRIVACY is not set
    # CONFIG_IPV6_ROUTER_PREF is not set
    # CONFIG_IPV6_REDIRECT_NO_HEADER is not set
    CONFIG_IPV6_OPTIMISTIC_DAD=y
    # CONFIG_IPV6_MIP6 is not set
    CONFIG_IPV6_SIT=y
    CONFIG_IPV6_SIT_6RD=y
    CONFIG_IPV6_NDISC_NODETYPE=y
    CONFIG_IPV6_TUNNEL=y
    CONFIG_IPV6_GRE=y
    CONFIG_IPV6_MULTIPLE_TABLES=y
    # CONFIG_IPV6_SUBTREES is not set
    CONFIG_IPV6_MROUTE=y
    # CONFIG_IPV6_MROUTE_MULTIPLE_TABLES is not set
    # CONFIG_IPV6_PIMSM_V2 is not set
    CONFIG_IPV6_DNSV6_MODE_SUPPORT=y
    CONFIG_IPV6_FORD_RA_PREFIX_SUPPORT=y
    CONFIG_IPV6_RA_RDNSS_SUPPORT=y
    CONFIG_IPV6_RA_DNSSL_SUPPORT=y
    # CONFIG_RTL_FAST_IPV6_DEBUG is not set
    CONFIG_RTL_FAST_IPV6=y
    CONFIG_NF_DEFRAG_IPV6=y
    CONFIG_NF_CONNTRACK_IPV6=y
    # CONFIG_IP6_NF_MATCH_IPV6HEADER is not set
    # CONFIG_NF_NAT_IPV6 is not set
    CONFIG_RTL_HARDWARE_IPV6_SUPPORT=y
    
    Řešení 1× (Andrej)
    14.12.2021 17:33 j
    Rozbalit Rozbalit vše Re: IPv6 stavový firewall (ip6tables)
    Hele, odpoved je primitivne trivialni ... ipv6 bez ICMP NEFUNGUJE!!! takze MUSIS povolit prave to.

    ---

    Dete s tim guuglem dopice!

    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.