Byla vydána nová major verze 28.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Přehled novinek v příspěvku na blogu.
Český telekomunikační úřad zveřejnil Výroční zprávu za rok 2024 (pdf), kde shrnuje své aktivity v loňském roce a přináší i základní popis situace na trhu. Celkový objem přenesených mobilních dat za rok 2024 dosáhl dle odhadu hodnoty přibližně 1,73 tis. PB a jeho meziroční nárůst činí zhruba 30 %. Průměrná měsíční spotřeba dat na datovou SIM kartu odhadem dosáhla 12,5 GB – v předchozím roce šlo o 9,8 GB.
Z novinek představených na Google I/O 2025: Přehledy od AI (AI Overviews) se rozšiřují do dalších zemí. Užitečné, syntetizované přehledy od generativní AI jsou nově k dispozici i českým uživatelům Vyhledávače.
Šestice firem označovaných jako „MAMAAN“ – tedy Meta (Facebook, Instagram), Alphabet (Google), Microsoft, Apple, Amazon a Netflix – je zodpovědná za více než padesát procent světového internetového provozu. Dalšími velkými hráči jsou TikTok a Disney+. Společně tak zásadně určují podobu digitálního prostředí, spotřebitelského chování i budoucích trendů v oblasti technologií. I přesto, že se podíl těchto gigantů od roku 2023 o něco snížil, jejich dominantní postavení zvyšuje volání po regulaci.
Evropská komise (EK) navrhuje zavést plošný poplatek ve výši dvou eur (zhruba 50 Kč) za každý malý balík vstupující do Evropské unie. Poplatek se má týkat balíků v hodnotě do 150 eur (zhruba 3700 Kč), které v EU nepodléhají clu. V loňském roce bylo do EU doručeno kolem 4,6 miliardy takovýchto balíků. Poplatek má krýt náklady na kontroly rostoucího počtu zásilek levného zboží, které pochází především z Číny.
Dnes a zítra probíhá vývojářská konference Google I/O 2025. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).
V Bostonu probíhá konference Red Hat Summit 2025. Vybrané přednášky lze sledovat na YouTube. Dění lze sledovat na síti 𝕏 (#RHSummit).
Společnost Red Hat oficiálně oznámila vydání Red Hat Enterprise Linuxu 10. Vedle nových vlastností přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.
Tuto sobotu 24. května se koná historicky první komunitní den projektu Home Assistant. Zváni jsou všichni příznivci, nadšenci a uživatelé tohoto projektu. Pro účast je potřebná registrace. Odkazy na akce v Praze a v Bratislavě.
Troy Hunt představil Have I Been Pwned 2.0, tj. nový vylepšený web služby, kde si uživatelé mohou zkontrolovat, zda se jejich hesla a osobní údaje neobjevily v únicích dat a případně se nechat na další úniky upozorňovat.
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/shadow
Na 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.sopodla 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.