GNU awk (gawk), implementace specializovaného programovacího jazyka pro zpracování textu, byl vydán ve verzi 5.4.0. Jedná se o větší vydání po více než dvou letech. Mezi četnými změnami figuruje např. MinRX nově jako výchozí implementace pro regulární výrazy.
Internetový prohlížeč Ladybird ohlásil tranzici z programovacího jazyka C++ do Rustu. Přechod bude probíhat postupně a nové komponenty budou dočasně koexistovat se stávajícím C++ kódem. Pro urychlení práce bude použita umělá inteligence, při portování první komponenty prohlížeče, JavaScriptového enginu LibJS, bylo během dvou týdnů pomocí nástrojů Claude Code a Codex vygenerováno kolem 25 000 řádků kódu. Nejedná se o čistě autonomní vývoj pomocí agentů.
Byl vydán Mozilla Firefox 148.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Nově lze snadno povolit nebo zakázat jednotlivé AI funkce. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 148 bude brzy k dispozici také na Flathubu a Snapcraftu.
Byla vydána nová verze 22.1.0, tj. první stabilní verze z nové řady 22.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.
X86CSS je experimentální webový emulátor instrukční sady x86 napsaný výhradně v CSS, tedy bez JavaScriptu nebo dalších dynamických prvků. Stránka 'spouští' assemblerovový program mikroprocesoru 8086 a názorně tak demonstruje, že i prosté CSS může fungovat jako Turingovsky kompletní jazyk. Zdrojový kód projektu je na GitHubu.
Po šesti letech byla vydána nová verze 1.3 webového rozhraní ke gitovým repozitářům CGit.
Byla vydána nová verze 6.1 linuxové distribuce Lakka (Wikipedie), jež umožňuje transformovat podporované počítače v herní konzole. Nejnovější Lakka přichází s RetroArchem 1.22.2.
Matematický software GNU Octave byl vydán ve verzi 11.1.0. Podrobnosti v poznámkách k vydání. Vedle menších změn rozhraní jsou jako obvykle zahrnuta také výkonnostní vylepšení a zlepšení kompatibility s Matlabem.
Weston, referenční implementace kompozitoru pro Wayland, byl vydán ve verzi 15.0.0. Přehled novinek v příspěvku na blogu společnosti Collabora. Vypíchnout lze Lua shell umožňující psát správu oken v jazyce Lua.
Organizace Apache Software Foundation (ASF) vydala verzi 29 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
sshuttle
userspace VPN přes SSH.
Řeší to situaci, kdy mám někde (v práci, u zákazníka, na anonymní VPS někde atd.) jen účet na mašině a nic víc. Pokud se do ní dokážu přihlásit přes SSH a spustit Python, mám tam díky tomuhle automaticky VPNku.
diky za link
Add-VpnConnectionRoute -ConnectionName "Company VPN" -DestinationPrefix "192.168.0.0/24"Deploy na Win stanice dle toho návodu není dotažen. Osobně řeším pomocí next next exáče, který jednoduše přednastaví celý tunel a uživatel si jen při prvním přihlášení zadá login a pw. Úroveň omylu při nastavování se blíží nule.
...Chybějící accounting, tam nevím, co dodat. Tak, jak to máš, tak nemáš přehledné výstupy (kdo kdy se přihlásil, kolik dat přenesl atd. Nějaké info lze zjistit parsováním auth logů, ale je to zbytečná drbačka). Chybějící accounting + lepší vedení účtů řeší Radius server (a strongswan mu umí posílat accounting info)...Ten acounting mě zmátnul. Když jsi to popsal, pochopil jsem - já mám "tucet" uživatelů, v tvém případě to bude asi řádově více. Z toho vyplývá i deploying. Dělat next next exáč pro jakousi obskurní Windows platformu by vyšlo dráž, než to těm pěti lidem naklikat. Navíc to neklikám já
Ale ono to rozlišení protokolu je podstatné. Když zprovozňuji IPSec spojení mezi dvěma IPv6 stroji, postupuji takto:
Cituji z jinde v této diskusi uvedeného odkazu:
Packets that are routed through such an interface are guaranteed to be IPsec transformed or dropped.
Použití takového interface by mě nutilo k postupu na hlavu postavenému:
Ať nad tím uvažuju jak chci, virtuální síťové rozhraní u IPv6 přináší jenom zmatek a bordel. U IPv4 může být situace jiná, tam může virtuální síťové rozhraní situaci trochu zpřehlednit. Ale nemyslím si, že by jakékoliv virtuální síťové rozhraní mělo tu moc nějak zvládnout ten zmatek a bordel, který už v IPv4 sítích obecně vládne.
...provoz v navázaném tunelu...V jakém tunelu? IPSec mi nedělá žádný "tunel" (pomíjím tunel mod fungování). IPSec jenom říká, že provoz mezi adresou A a adresou B se šifruje!
spdadd -6n 2001:db8:1::/64 2001:db8:2::/64 any -P out ipsec esp/tunnel/2001:db8:1::1-2001:db8:2::1/require;Zde se říká, že paket putující ze sítě 2001:db8:1::/64 přes router 2001:db8:1::1 se má na tomto routeru zašifrovat (parametry domlouvá racoon), na routeru 2001:db8:2::1 se paket rozšifruje a pošle dál do sítě 2001:db8:2::/64 (druhý směr se musí nakonfigurovat zvlášť). Naprosto stejné nastavení by bylo pro transport mode, změnily by se pouze adresy sítě a mod tunnel na transport. Když je politika zapnutá, šifruje se. Když je politika vypnutá, nešifruje se. Pro síťový provoz, firewall, routování atd. je IPSec transparentní. Ať tam IPSec je nebo ne, síťový provoz probíhá stále stejně. Nevnímám zašifrované pakety jako "tunelované" - jen transformované do jiné, nečitelné podoby. Tato část nastavení je v ipsectools velmi přímočará. StrongSwan tuhle část trochu skrývá, ale kdesi vespod funguje stejně.
Není normální provozovat [...] IPSec s jedním rozhraním.
Trochu jsem se v tom šťoural, přemýšlel a studoval manuály a z hlediska bezpečnosti se mi jeví použití vyhraženého interface jako klasický příklad "security by obscurity". Unixová filozofie říká, že program má dělat jednu věc a má ji dělat pořádně:
První bod - síťový protokol - je naprostý základ. Pokud nefunguje, je šílené zkoušet rozchodit další dva body. IPSec skrz striktně šifrovaný interface ten první bod rozbíjí a fušuje do řemesla bodu třetímu.
Když jste zvyklý používat IPSec místo firewallu, tak jakmile vám z nějakého důvodu zmizí interface (jak se to stalo v Linuxu před lety), zákonitě musí nastoupit pocit, že bez interface je zabezpečení špatně. Ve skutečnosti je IPSec správně, špatně (nebo vůbec) je nastavený firewall.
Znovu upozorňuji: používám IPv6 a jen vyjímečně vytvářím tunely popsané v tomto článku. IPSec je o cosi obecnější nástroj, než by se z tohoto článku mohlo zdát.
To nemá nic společného s neomylností. Jen jsem se seznámil s tím, jak ta implementace funguje, a snažil jsem se ji pochopit místo toho, abych se "zašprajcoval" na stanovisku, že když je to jinak, než jsem byl zvyklý, je to nutně špatně navržené. Sice jsem taky začínal na FreeS/WAN, ale když jsem pak objevil ipsec-tools, měl jsem radost z toho, že konfigurace najednou docela dobře odpovídá tomu, jak ta implementace opravdu funguje.
Co se týká té (ne)omylnosti, měl bych námět k zamyšlení: je opravdu tak principiální rozdíl mezi chybou v konfiguraci security policies a chybou v konfiguraci pravidel netfilteru? Je opravdu jedno na denním pořádku a druhé prakticky vyloučené? Já bych řekl že ne.
Není to slovíčkaření.
V transportním režimu se vezme nešifrovaný packet, mezi IP hlavičku a payload se vloží AH hlavička (případně ESP, je-li třeba šifrování) a packet se pustí do světa, jako kdyby šifrovaný nebyl. O dešifrování se postará příjemce.
V tunelovacím režimu se vezme nešifrovaný packet, celý se zabalí do AH (či ESP) a předřadí se mu úplně nová IP hlavička. Nová IP hlavička potřebuje nějakou zdrojovou a cílovou adresu. A těmi jsou adresy konců tunelu. Šifrovaný packet tudíž neputuje k původnímu příjemci, ale k druhému konci tunelu, kde se dešifruje a vybalený packet se odsměruje dál původnímu příjemci.
Z toho vyplývají jiné způsoby použití. Transportní se používá při end-to-end šifrování, kdežto tunelovací při propojování sítí. Ono by se daly oba režimy znásilnit pro opačný způsob použití, ale nebylo by moc praktické. Určitou analogii lze najít s WDS v protokolu 802.11.
Ono by se daly oba režimy znásilnit pro opačný způsob použití, ale nebylo by moc praktické.
Tunnel mode se pro host to host IPsec používá celkem běžně. Dokonce jsem zaslechl, že existují i implementace, které transport mode ani nakonfigurovat neumožňují.
Obráceně by to ale asi bylo opravdu trochu násilné. Nejjednodušší by v takovém případě asi bylo kombinovat transport mode s něčím jako ipip nebo GRE.
Encapsulating Security Payloads (ESP) provides confidentiality, connectionless data integrity, data-origin authentication, an anti-replay service (a form of partial sequence integrity), and limited traffic-flow confidentiality.https://en.wikipedia.org/wiki/IP_tunnel
IP tunnels are often used for connecting two disjoint IP networks that don't have a native routing path to each other, via an underlying routable protocol across an intermediate transport network. In conjunction with the IPsec protocol they may be used to create a virtual private network between two or more private networks across a public network such as the Internet. Another prominent use is to connect islands of IPv6 installations across the IPv4 Internet.
To je správná připomínka. Je to tak. Pokud na sebe počítače přímo vidí, funguje spojení i bez šifrování. To je na IPv6 normální stav.
Řešení mě napadají hned čtyři:
označit ve StrongSwan šifrované pakety a ve firewallu neoznačené pakety zahodit (jde to?)Pokud se nepletu, jde to, ale podle mě je jednodušší použít na netfilteru rovnou extension policy a zahazovat to, co jde nešifrovaně.
Především: xfrm není síťové rozhraní, xfrm je část linuxového síťového stacku, která zajišťuje transformaci paketů, nejčastějí šifrování nebo dešifrování pomocí ESP a autentizaci pomocí ESP nebo AH, tj. to, co známe jako IPsec.
To je věc, která fungovala už od počátku řady 2.6, ale protože implementace nevytvářela pro bezpečnou komunikaci virtuální "tunelové" rozhraní, jak byli lidé zvyklí z (nejen) FreeS/WAN, prakticky od té doby se po všech fórech šířilo nepřetržité brblání, že je to celé úplně blbě, nedá se to pochopit, nedá se to používat atd. Spousta lidí má totiž myšlenkový blok, že když vidí "holé" i "zabezpečené" pakety na stejném interface, tak to přece nemůže být bezpečné, a nějakým security policies, které jsou v jádře teprve 16 let, přece věřit nebudou.
Nakonec vývojáři tu možnost, aby se použil jakýsi virtuální interface pro xfrm, v jádře 4.19 implementovali. Ale naštěstí je to jen možnost, pokud si to tak nenastavíte, funguje všechno jako předtím.
Já provozuji IPSEC bez xfrm
To je na jakékoli současné linuxové distribuci velmi nepravděpodobné.
Před xfrm byla možnost používat VTI (od kernelu 3.6).
To není "před xfrm", xfrm je součástí linuxového jádra už od počátku řady 2.6 (technicky už od nějaké verze z řady 2.5). Jak už jsem se pokusil naznačit jednou, zaměňujete "xfrm" a "virtuální xfrm interface".
U jednoduchého vpn není problém, ale jakmile se komplexita zvětšuje, je to velký přínos.
Máme zákazníka, pro kterého jsem opravoval chybu, která se projevila, když v jednom netns vytvořili asi 17000 SA a pak ten netns zrušili. Měli se svými nasazeními všelijaké problémy, ale nevzpomínám si, že by si někdy stěžovali na absenci virtuálních xfrm rozhraní.
V tom případě nevím, proč jsi s tím začal, když se celou dobu bavíme o xfrm virtuálním iface
Protože opakovaně používáte určitý termín, ale myslíte tím něco úplně jiného, než co znamená. Termíny slouží k tomu, aby se lidé domluvili. Když si bude každý vymýšlet vlastní terminologii, bude to s tou domluvou docela problém.
V tomto případě je to o to horší, že to děláte v textu, který je něco jako tutorial, takže je naprosto žádoucí chybnou terminologii opravit, aby se ji neučili další.
Že se tobě o tom nějaká firma nezmínila(nebo nemá nasazeno) má celkem nulový informační přínos.
Informační přínos je v tom, že je to příklad, že ani při dost značné komplexitě to bez těch virtuálních rozhraní není problém, stačí nepodléhat zažitým stereotypům.
Navíc kdo googlí xfrm, narazí v 99% na virtuální iface a né část stacku v kernelu.
Nedalo mi to a zkusil jsem to:
Abych byl férový, na 11. místě konečně XFRM Interface Development Notes - Libreswan.
Je sice známé, že Google personalizuje výsledky vyhledávání, ale že by až tak moc?
Není problém s kolizními segmenty (klient může být ve své lokální síti 192.168.1.0/24 a zároveň se pomocí VPN připojit do vzdálené 192.168.1.0/24 a není problém)Jak to funguje?
Hrubá propustnost je jen jedna část problému; openvpn totiž veškerý provoz zpracovává v jedné frontě jedním threadem, takže pokud přes openvpn běží větší datové přenosy, interaktivní provoz tím dost trpí. Dnes už sice tun/tap umí multiqueue, takže by multithreadové zpracování bylo možné, ale zatím openvpn nikdo nepřepsal.
Dřív to bylo ještě horší, to se v tom jednom threadu dělalo úplně všechno a synchronně, takže se třeba stávalo, že když byla pomalejší odezva od LDAP serveru, každé přihlášení uživatele na pár sekund zablokovalo veškerý provoz.
přes 120 klientů na jednom OpenVPN serveru (outsourcovaného) a nevím nevím, zda to bylo pomalý kvůli tomu serveru jako takovému (kromě OVPN tam jsou i další věci) nebo zda za to mohlo i OpenVPN jako takové
Při 120 klientech a pravděpodobně i nezanedbatelném procentu skutečně aktivních je skoro jisté, že je to ten problém, který jsem popisoval (všechno v jedné frontě a jednom threadu).
TCP nepoužitelné
Tunelování v TCP je problém skoro vždy, to by mělo být brané jen jako nouzová alternativa pro situace, kdy UDP z nějakého důvodu nejde použít - třeba proto, že je jedna strana za nějakým nesmyslně nakonfigurovaným firewallem. Zejména TCP v TCP funguje rozumně jen za ideálních podmínek, jakmile se začnou ztrácet pakety, dělá to psí kusy.
Tiskni
Sdílej: