Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.
Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
Oficiální ceny Raspberry Pi Compute Modulů 4 klesly o 5 dolarů (4 GB varianty), respektive o 10 dolarů (8 GB varianty).
Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
-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:
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.
-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 ACCEPTJen 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
ip6tables -A FORWARD -m state --state INVALID -j DROPTedy na forwardu zůstanou jen pravidla:
ip6tables -A FORWARD -i br0 -j ACCEPT ip6tables -A FORWARD -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPTZvláštní.
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
Tiskni
Sdílej: