Byla vydána verze 2026 distribuce programu pro počítačovou sazbu TeX s názvem TeX Live (Wikipedie). Přehled novinek v oficiální dokumentaci.
Jihokorejská Národní daňová služba (NTS) zabavila kryptoměnu Pre-retogeum (PRTG) v hodnotě 5,6 milionu dolarů. Pochlubila se v tiskové zprávě, do které vložila fotografii zabavených USB flash disků s kryptoměnovými peněženkami spolu se souvisejícími ručně napsanými mnemotechnickými obnovovacími frázemi. Krátce na to byla kryptoměna v hodnotě 4,8 milionu dolarů odcizena. O několik hodin ale vrácena, jelikož PRTG je extrémně nelikvidní, s denním objemem obchodování kolem 332 dolarů a zalistováním na jediné burze, MEXC [Bitcoin.com].
Komunita kolem Linuxu From Scratch (LFS) vydala nové verze knih s návody na instalaci vlastního linuxového systému ze zdrojových kódů Linux From Scratch 13.0 a Beyond Linux From Scratch 13.0. Pouze se systemd.
Byla vydána nová stabilní major verze 25.12 linuxové distribuce primárně určené pro routery a vestavěné systémy OpenWrt (Wikipedie). Jedná se o nástupce předchozí major verze 24.10. Přehled novinek v poznámkách k vydání. Podporováno je více než 2200 zařízení.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za únor (YouTube). Odstraněn byl veškerý kód napsaný ve Swiftu. JavaScriptový engine LibJS byl reimplementován v Rustu.
Byla vydána verze 1.94.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. Zveřejněny byly výsledky průzkumu mezi vývojáři v programovacím jazyce Rust: 2025 State of Rust Survey Results.
Google zveřejnil seznam 185 organizací přijatých do letošního Google Summer of Code (GSoC). Dle plánu se zájemci přihlašují od 16. do 31. března. Vydělat si mohou od 750 do 6600 dolarů. V Česku a na Slovensku je to 900 dolarů za malý, 1800 dolarů za střední a 3600 dolarů za velký projekt. Další informace v často kladených otázkách (FAQ). K dispozici jsou také statistiky z minulých let.
Byla vydána únorová aktualizace aneb nová verze 1.110 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.110 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Apple představil 13palcový MacBook Neo s čipem A18 Pro. V základní konfiguraci za 16 990 Kč.
Kalifornský zákon AB 1043 platný od 1. ledna 2027 vyžaduje, aby operační systémy požadovaly po uživatelích věk nebo datum narození a skrze API poskytovaly aplikacím informaci, zda je uživatel mladší 13 let, má 13 až 16 let, má 16 až 18 let nebo má alespoň 18 let. Vývojáři linuxových distribucí řeší, co s tím (Ubuntu, Fedora, …).
PAM (Pluggable Authentication Modules) je sada knižníc, ktorá integruje viaceré nízko-úrovňové autentizačné mechanizmy do jedného API. Použitie stabilného API pomáha oddeliť detaily a spôsob autentizácie od programu, ktorý potrebuje overovať totožnosť užívateľov.
Pôvodne bol PAM vyvinutý v Sun Microsystems. V súčasnosti je podporovaný vo vačšine UNIXových systémov, napr. AIX, HP-UX, Solaris, Linux, FreeBSD, MacOS X a NetBSD. Pokiaľ viem, tak nie je podporovaný v Slackware a OpenBSD.
Keďže PAM uplatňuje modulárny princíp, je jednoduché napríklad pridať nový spôsob autentizácie (čítačku odtlačkov prstov) či zmeniť spôsob autentizácie v nejakom programe (chcem overovať heslá pomocou Kerbera namiesto /etc/shadow).
Celý systém sa skladá z troch súčastí:
libpam – oproti nej sú linkované programy, ktoré chcú PAM využívať/lib/security (Solaris a niektoré UNIXy /usr/lib/security) a do pamäte sú zavádzané dynamickyKeďže PAM je vo väčšine linuxových distribúcii už predinštalovaný, nebudem tu popisovať, ako ho do systému nainštalovať, a rovno sa vrhneme na konfiguráciu.
Konfigurácia PAMu je uložená v súbore /etc/pam.conf alebo rozdelená do viacerých súborov v adresári /etc/pam.d. Ak tento adresár existuje, súbor pam.conf sa ignoruje. Dovolím si tvrdiť, že z dôvodu prehľadnosti sa používa väčšinou varianta s /etc/pam.d.
Konfiguračný súbor /etc/pam.conf obsahuje riadky v
tvare:
service type control module-path module-args
Syntax súborov v /etc/pam.d/ je rovnaká, až na pole
service. Toto pole sa neuvádza a namiesto neho sa
použije názov konfiguračného súboru.
Každý riadok predstavuje pravidlo, ktoré sa uplatní pri autentizácii
v programe service. Čo konkrétne treba uviesť do tohoto poľa (resp. ako pomenovať konfiguračný súbor) už závisí na onom programe, zväčša to býva práve názov programu. Ak v poli service použijeme kľúčové slovo other, nastavíme implicitné správanie pre ostatné programy. Z bezpečnostných dôvodov sa tu používa len modul
pam_deny.so, ktorý užívateľovi prístup zakáže.
Pravidlá sa samozrejme môžu reťaziť, čím dosiahneme kombinácie rôznych autentizačných mechanizmov. K slovu sa dostávajú postupne tak, ako sú za sebou zapísané.
Pole type musí obsahovať jedno z kľúčových slov
account, auth, password a
session. Každé z nich pokrýva jeden z aspektov
autentizačného procesu. Ich význam je nasledovný:
account – ako overiť existenciu a platnosť užívateľského účtu, práva k danej službe a pod.auth – ako overiť identitu užívateľapassword – zmeny hesiel (ako heslo zmeniť, ako overiť, či je dostatočne silné a pod.)session – definuje, čo sa má stať pred udelením oprávnenia a po jeho odobratí. Napr. pripojenie domovského adresára užívateľa, auditing a pod.Pole control určuje, aký vplyv má modul na prebiehajúci
autentizačný proces. Môže nadobúdať tieto hodnoty:
required – zlyhanie modulu spôsobí zlyhanie autentizácie, ale až po skončení ostatných zreťazených modulovrequisite – zlyhanie modulu spôsobí okamžité zlyhanie autentizáciesufficient – úspech tohoto modulu postačuje na úspešnú autentizáciu (pokiaľ predtým nezlyhal modul s "required")optional – úspech alebo zlyhanie tohoto modulu sa berie do úvahy iba vtedy, ak je to jediný modul daného typu asociovaného s touto službou.Pole control môže obsahovať i relatívne nové kľúčové
slovo include, ktoré spôsobí vloženie pravidiel zo
súboru špecifikovaného v poli module-path. To nám
umožňuje vložiť spoločné nastavenia do jediného súboru, takže pri
zmene stačí upraviť len tento súbor.
Do poľa module-path sa uvádza cesta k modulu. Táto
cesta môže byť buď absolútna, alebo relatívna vzhľadom k adresári, v
ktorom sú PAM moduly (väčšinou /lib/security).
V poslednom poli module-args sa nachádzajú parametre modulu. Tie môžu byť pre každý modul iné, zistiť sa dajú v dokumentácii daného modulu. Väčšina modulov podporuje parameter debug, ktorý spôsobí podrobnejší výpis do systémového logu.
Moduly, ktoré vyžadujú po užívateľovi heslo, tiež zvyknú podporovať parametre try_first_pass a use_first_pass. Rozdiel medzi nimi je v tom, že try_first_pass sa snaží použiť heslo od niektorého z predchádzajúcich modulov a v prípade, že žiadne neexistuje, si ho vyžiada od užívateľa. Parameter use_first_pass naopak od užívateľa heslo nežiada a rovno zlyhá.
Väčšina modulov má svoju manuálovú stránku, v ktorej je popísaná činnosť modulu a podporované parametre.
/etc/passwd a /etc/shadowNa príklade si ukážeme konfiguráciu pre GDM, v ktorej povolíme prístup lokálnym užívateľom v /etc/passwd po overení odtlačku prstu a zadaní hesla. Niektorí užívatelia majú v domovskom adresári šifrované SSH kľúče, ale sú leniví a nechce sa im zadávať pri každom použití ssh heslo. Preto im s pomocou programu ssh-agent sprístupníme SSH kľúč po dobu trvania sedenia.
Konfigurácia je uvedená v súbore /etc/pam.d/gdm, do ktorého sa vkladá spoločný súbor /etc/pam.d/system-auth (je uvedený len pre úplnosť).
Prihlásenie začne odobraním odtlačku prsta. Následne si modul
pam_ssh.so vypýta od užívateľa heslo k SSH kľúču a pomocou
programu ssh-agent kľúč sprístupní až do konca sedenia. Ak
tento modul zlyhá, nič sa nedeje, užívateľ má stále možnosť sa prihlásiť,
akurát nebude mať v ssh-agentovi svoj kľúč.
Ďalej sa overí heslo v module pam_unix.so. Parameter
try_first_pass hovorí, že sa má najskôr skúsiť heslo z
predchádzajúcich modulov. Ak nevyhovie, systém sa na heslo opýta znovu.
Súbor /etc/pam.d/gdm:
auth optional pam_env.so auth required pam_thinkfinger.so auth required pam_nologin.so auth optional pam_ssh.so auth include system-auth account include system-auth password include system-auth session include system-auth session optional pam_ssh.so
Súbor /etc/pam.d/system-auth:
auth required pam_env.so
auth sufficient pam_unix.so try_first_pass likeauth nullok
auth required pam_deny.so
account required pam_unix.so
password required pam_cracklib.so difok=2 minlen=8 \
dcredit=2 ocredit=2 try_first_pass retry=3
password sufficient pam_unix.so try_first_pass use_authtok \
nullok md5 shadow
password required pam_deny.so
session required pam_limits.so
session required pam_unix.so
Na záver ešte uvediem malú poznámku: pri pokusoch s PAMom buďte opatrní. Zmazanie alebo poškodenie konfigurácie PAMu má ten istý účinok, ako keď zamknete svoj byt a kľúče hodíte do kanála – už sa dovnútra viac nedostanete (bežnými metódami, samozrejme).
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
# required – zlyhanie modulu spôsobí zlyhanie autentizácie, ale až po skončení ostatných zreťazených modulov
# requisite – zlyhanie modulu spôsobí okamžité zlyhanie autentizácie
a ukazka z konfiguracneho syboru:
password required pam_cracklib.so difok=2 minlen=8 \
dcredit=2 ocredit=2 try_first_pass retry=3
password sufficient pam_unix.so try_first_pass use_authtok \
nullok md5 shadow
password required pam_deny.so
podla vsetkeho co je v clanku uvedene pokial pam_deny skonci s chybou (co skonci vzdy) ani zmena hesla nemoze nikdy prebehnut... Preto by mozno nebolo zle uviest sposob retazenia podrobnejsie, aby clanok ziskal aj vyznam: kazdy kto s PAMom robil uz vie ako funguje, a ten co s nim nerobil to podla clanku nepochopi, takze v sucasnom zneni trochu useless... Pokial sa mylim a ostatni to pochopili, prosim nekamenovat...
sufficient v poli control stačí k ověření, takže na pam_deny.so by v případě, že neselže pam_unix.so, vůbec nemělo dojít, ne?
pam_deny máte pam_unix se sufficient, takže pokud ten uspěje, výsledkem je úspěch a na pam_deny už nedojde.
Já s tímto teprve začínám, takže jsem to taky moc nepochopil. Nevěděl by někdo jak rozchodit přihlašování do systému pomocí IKey3000. Čerpal jsem z http://www.linuxexpres.cz/hardware/sifrovaci-token-ikey-3000, ale když jsem do /etc/pam.d/system-auth napsal přesně to, co v článku, tak to skončilo ne neúspěchem. Za případné rady děkuji.