Byla vydána nová stabilní verze 24.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Uakari. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.
Byla vydána nová verze 1.48.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Mimo jiné se v nastavení místo mac-address-blacklist nově používá mac-address-denylist.
Před 25 lety, 31. května 1999, započal vývoj grafického editoru Krita (Wikipedie). Tenkrát ještě pod názvem KImageShop a později pod názvem Krayon.
Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 24.05.0 editoru videa Kdenlive (Wikipedie). Ke stažení brzy také na Flathubu.
David Revoy, autor mj. komiksu Pepper&Carrot, se rozepsal o své aktuální grafické pracovní stanici: Debian 12 Bookworm, okenní systém X11, KDE Plasma 5.27, …
Wayland (Wikipedie) byl vydán ve verzi 1.23.0. Z novinek lze vypíchnout podporu OpenBSD.
Craig Loewen na blogu Microsoftu představil novinky ve Windows Subsystému pro Linux (WSL). Vypíchnout lze GUI aplikaci pro nastavování WSL nebo správu WSL z Dev Home.
V sobotu 1. června lze navštívit Maker Faire Ostrava, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Webový server Caddy (Wikipedie) s celou řadou zajímavých vlastností byl vydán ve verzi 2.8 (𝕏). Přehled novinek na GitHubu.
Byla vydána verze 3.0 (@, 𝕏) svobodného softwaru HAProxy (The Reliable, High Performance TCP/HTTP Load Balancer; Wikipedie) řešícího vysokou dostupnost, vyvažování zátěže a reverzní proxy. Detailní přehled novinek v příspěvku na blogu společnosti HAProxy Technologies.
-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: