Byla vydána verze 1.90.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
GNUnet (Wikipedie) byl vydán v nové major verzi 0.25.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.
Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.
Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.
Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.
Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.
Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).
Byla vydána Java 25 / JDK 25. Nových vlastností (JEP - JDK Enhancement Proposal) je 18. Jedná se o LTS verzi.
Věra Pohlová před 26 lety: „Tyhle aféry každého jenom otravují. Já bych všechny ty internety a počítače zakázala“. Jde o odpověď na anketní otázku deníku Metro vydaného 17. září 1999 na téma zneužití údajů o sporožirových účtech klientů České spořitelny.
Byla publikována Výroční zpráva Blender Foundation za rok 2024 (pdf).
Ahoj, napadá vás, jak přepsat tohle pravidlo pro ip6tables?
iptables -t nat -A OUTPUT --destination localhost -p tcp --dport 80 -j REDIRECT --to-ports 8080 iptables -t nat -A OUTPUT --destination 10.0.0.1 -p tcp --dport 80 -j REDIRECT --to-ports 8080 iptables -t nat -A PREROUTING --destination 10.0.0.1 -p tcp --dport 80 -j REDIRECT --to-ports 8080
Cílem je přesměrování portů v rámci jednoho stroje (10.0.0.1) tak, aby služba mohla běžet na neprivilegovaném portu 8080 a klienti se mohli zvenku připojovat na standardní port 80.
Řešení dotazu:
Nebo tomu procesu nastavit capability CAP_NET_BIND_SERVICE, potom se bude moci povesit na privilegovany port i bez roota. Viz. man 7 capabilities
Zkoušel jsem tohle (jako root):
execcap cap_net_bind_service=eip /sbin/sucap franta franta /bin/nc6 -l -p80 Caps: =ep cap_net_bind_service+i Caps: = cap_net_bind_service+i [debug] uid:1000, real uid:1000 sucaps: capsetp: Operation not permitted sucap: child did not exit cleanly.
Což mi nefungovalo. A taky nevím, jak to bude, když budu tímhle způsobem potřebovat spustit bashový skript – tam bude potřeba, aby se práva dědila přes několik úrovní až k procesu, který má naslouchat na daném portu.
Na to by se mohlo víc hodit použití authbindu, ale ten zase neumí IPv6. Stáhnul jsem si jeho zdrojáky a pokoušel jsem se upravit libauthbind.c
, ale moc daleko jsem se nedostal. Buď se mi povedl segfault nebo jsem dostal:
$ authbind --deep nc6 -l -p80 nc6: bind to source :: 80 failed: No child processes
BTW: není tu nějaký znuděný céčkař, který nemá co na práci?
Já bych se vydal cestou kvalifikací – zjistit, proč to nefunguje.
Díval jsem se do odkazované dynamické knihovny a řádná úprava není záležitost pár řádků (řeší se tam přístupová pravidla na základě IP aritmetiky).
Zatím jsem přišel na náhradní řešení pomocí xinetd:
# default: on service http { flags = REUSE socket_type = stream wait = no user = root redirect = 127.0.0.1 8080 log_on_failure += USERID } # default: on service https { flags = REUSE socket_type = stream wait = no user = root redirect = 127.0.0.1 8181 log_on_failure += USERID }
ale to se mi nelíbí, protože webový server neví, jaká skutečná IP adresa se k němu připojuje (vidí jen 127.0.0.1).
Našel jsem řešení pomocí authbind, které by údajně mělo fungovat: How-to set up Glassfish 2 on Debian or Ubuntu, ale nefunguje. Viz Glassfish v3, port 80, & Authbind. Prý za to může Java, ale podle mého pozorování je to spíš chyba authbindu a jeho nespolupráce s IPv6.
authbind nc6 -l -p23 nc6: bind to source :: 23 failed: Permission denied
Ani netcatu se totiž nedaří naslouchat na privilegovaném portu, pokud se používá IPv6 (po zadání přízaku výše naslouchá jen na IPv4) – netcat umí naslouchat na privilegovaném portu na IPv4, nebo na neprivilegovaném na IPv4 i IPv6, ale kombinace privilegovaný port + IPv6 se zdá být smrtící.
ip6tables -t mangle -A PREROUTING -p tcp --dport 80 -j TPROXY --on-port 8080zdroj
Tiskni
Sdílej: