abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

dnes 12:34 | Komunita

Aktualizovanou počítačovou hru Warhammer 40,000: Dawn of War III v ceně 39,99 eur běžící také na Linuxu lze o víkendu na Steamu hrát zdarma a případně ještě v pondělí koupit s 50% slevou. Do soboty 19:00 lze na Humble Bundle získat zdarma Steam klíč k počítačové hře Sid Meier's Civilization® III v ceně 4,99 eur běžící také ve Wine.

Ladislav Hagara | Komentářů: 0
dnes 00:22 | Nasazení Linuxu

Společnost Samsung oznámila, že skrze dokovací stanici DeX a aplikaci Linux on Galaxy bude možno na Samsung Galaxy S8 a S8+ a Galaxy Note 8 provozovat Linux. Distribuce nebyly blíže upřesněny.

Phantom Alien | Komentářů: 7
včera 23:55 | Komunita

Společnost Purism na svém blogu oznámila, že její notebooky Librem jsou nově dodávány se zrušeným (neutralized and disabled) Intel Management Engine (ME). Aktualizací corebootu na již prodaných noteboocích lze Management Engine také zrušit. Více v podrobném článku.

Ladislav Hagara | Komentářů: 0
včera 21:44 | Nová verze

Organizace Apache Software Foundation (ASF) na svém blogu slaví páté výročí kancelářského balíku Apache OpenOffice jako jejího Top-Level projektu. Při této příležitosti byl vydán Apache OpenOffice 4.1.4 (AOO 4.1.4). Podrobnosti v poznámkách k vydání. Dlouhé čekání na novou verzi tak skončilo.

Ladislav Hagara | Komentářů: 6
včera 19:22 | Pozvánky

Již příští týden - 26. a 27. října se v Praze v hotelu Olšanka odehraje OpenWRT Summit. Na webu konference naleznete program a možnost zakoupení lístků - ty stojí 55 dolarů. Čtvrtek bude přednáškový a v pátek se budou odehrávat převážně workshopy a meetingy.

Miška | Komentářů: 0
včera 13:44 | Nová verze

Bylo vydáno Ubuntu 17.10 s kódovým názvem Artful Aardvark. Ke stažení jsou Ubuntu Desktop a Server, Ubuntu Cloud Images, Ubuntu Netboot, Kubuntu, Lubuntu a Lubuntu Alternate, Lubuntu Next, Ubuntu Budgie, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio a Xubuntu. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 22
včera 13:00 | Komunita

MojeFedora.cz informuje, že Fedora 27 dostane podporu pro AAC. Podpora multimediálních formátů je ve výchozí instalaci Fedory tradičně limitovaná kvůli softwarovým patentům, ale desktopový tým Red Hatu se ji i tak snaží v poslední době co nejvíce rozšířit. Už nějaký čas obsahuje kodeky pro MP3, H.264, AC3 a nyní byl přidán také kodek pro další velmi rozšířený zvukový formát – AAC.

Ladislav Hagara | Komentářů: 2
18.10. 23:55 | Pozvánky

Spolek OpenAlt zve příznivce otevřených technologií a otevřeného přístupu na 145. brněnský sraz, který proběhne v pátek 20. října od 18:00 hodin v restauraci Time Out na adrese Novoměstská 2 v Řečkovicích. Jedná se o poslední sraz před konferencí OpenAlt 2017, jež proběhne o víkendu 4. a 5. listopadu 2017 na FIT VUT v Brně. Běží registrace účastníků.

Ladislav Hagara | Komentářů: 0
18.10. 21:44 | Nová verze

Byla vydána verze 5.2.0 multiplatformního virtualizačního nástroje Oracle VM VirtualBox. Jedná se o první stabilní verzi z nové větve 5.2. Z novinek lze zmínit například možnost exportování VM do Oracle Cloudu, bezobslužnou instalaci hostovaného systému nebo vylepšené GUI. Podrobnosti v seznamu změn. Aktualizována byla také dokumentace.

Ladislav Hagara | Komentářů: 2
18.10. 14:00 | Zajímavý projekt

Byl spuštěn Humble Down Under Bundle. Za vlastní cenu lze koupit multiplatformní hry The Warlock of Firetop Mountain, Screencheat, Hand of Fate a Satellite Reign. Při nadprůměrné platbě (aktuálně 3,63 $) také Hacknet, Hacknet Labyrinths, Crawl a Hurtworld. Při platbě 12 $ a více lze získat navíc Armello.

Ladislav Hagara | Komentářů: 0
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (10%)
 (1%)
 (1%)
 (1%)
 (75%)
 (13%)
Celkem 119 hlasů
 Komentářů: 7, poslední včera 23:06
    Rozcestník

    Autentizácia v Linuxe pomocou PAM

    30. 4. 2008 | Daniel Keder | Bezpečnost | 6483×

    Článek představí koncept PAM (Pluggable Authentication Modules), pomůže s konfigurací systému a na příkladu ukáže, jak PAM využít pro usnadnění přihlašování.

    Čo je to PAM

    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í:

    • Knižnica libpam – oproti nej sú linkované programy, ktoré chcú PAM využívať
    • PAM moduly – poskytujú konkrétne autentizačné mechanizmy. Moduly sa zvyčajne nachádzajú v adresári /lib/security (Solaris a niektoré UNIXy /usr/lib/security) a do pamäte sú zavádzané dynamicky
    • Konfigurácia – definujú, ktoré PAM moduly sa budú používať pri autentizácii a ako.

    Konfigurácia

    Keďž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.

    Pole 'service'

    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'

    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ľa
    • password – 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'

    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 modulov
    • requisite – zlyhanie modulu spôsobí okamžité zlyhanie autentizácie
    • sufficient – ú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.

    Pole 'module-path'

    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).

    Pole 'module-args'

    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á.

    Užitočné moduly

    Väčšina modulov má svoju manuálovú stránku, v ktorej je popísaná činnosť modulu a podporované parametre.

    • pam_cracklib.so – kontrola sily hesla podľa zadaných parametrov. Zabráni nastaveniu príliš slabého hesla.
    • pam_deny.so – autentizácia vždy zlyhá
    • pam_krb5.so – overovanie hesla pomocou Kerbera.
    • pam_limits.so – nastavenie systémových limitov (množstvo obsadenej pamäte, počet procesov a pod.)
    • pam_nologin.so – kontrola existencie /etc/nologin. Ak tento súbor existuje, nikdo okrem roota sa neprihlási
    • pam_time.so – kontrola prístupu podľa času. Umožňuje obmedziť prihlasovanie v určitej dobe
    • pam_unix.so – štandardný unixový autentizačný modul. Kontroluje užívateľov a heslá podľa /etc/passwd a /etc/shadow
    • pam_warn.so – zaznamená do systémového logu pokus o prístup.

    Príklad konfigurácie

    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).

           

    Hodnocení: 91 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    30.4.2008 07:04 pht
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    v cem je to 'include' lepsi nez dosud pouzivane pam_stack.so ?
    30.4.2008 13:28 Dan Keder
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    Myslím, že celkom dobre je to popísané tu:

    http://www.redhat.com/archives/rhl-devel-list/2005-October/msg00050.html
    30.4.2008 07:49 ased
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    Ako clovek ktory nikdy s PAM nerobil mam jeden postreh. Pole 'control' by mohlo byt vysvetlene lepsie, pretoze to moj maly mozocek nedokazal pochopit... presnejsie pokial: # 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...
    30.4.2008 07:59 Honza Jaroš | skóre: 6 | blog: moje_strana_plotu | Bohnice
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    No ale podle článku hodnota 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?
    30.4.2008 11:13 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    Změna hesla proběhnout může, protože ještě před 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.
    kozzi avatar 30.4.2008 16:26 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    ja myslim ze to je usefull, mě to teda pomohlo, zrovna jsem rozchazel ldap pro spravu uzivatelskych uctu a potreboval jsem nasatvit apm tak abych pri zadani hesla docilil toho ze se to zepta ldap pokud to prel ldap neprojde(zanmena ze proste uzivatel neni) tak aby to heslo predal dalsimu modulu coz je standartnu unix_pam.so ci jak to je a to jsem pomoci tohoto clanku dokazal a nikdy jsem si s pam nehral(teda pokud nepocitam tupe kopirovani z navodu). Takze ja autorovi musim podekovat ze mi usetril cas, ktery bych musel travit ctenim manualovych stranek
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    30.4.2008 13:12 honza
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    Vadi mi jedna vec, konkretne kombinace ctecka otisku a GDM. Pokud otisk udelam spatne, tak jej nemuzu opakovat a musim zadat heslo. Navic v poli login visi login name. Idelani pripad je ten, ze se na zacatku rozhodnuju jestli napisu heslo nebo budu patlat prstem po ctecce a to treba vicekrat. Nepodarilo se mi toho nijak docilit, vzdy je tam nejake "ale". Ale tohle je veci GDM.. jinak dobry clanek.
    stativ avatar 30.4.2008 17:03 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    Možná by stálo zato zmínit použití pam_unix2.so a Blowfishových klíčů pomocí libxcrypt. Dost dlouho mně trvalo, než jsem přišel jak na to (a na internetu o tom skoro nic není, hlavně o nutnosti libxcrypt).
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    30.4.2008 21:51 Jiri Slaby
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    Z tech dulezitejsich veci mi v clanku mi schazi zminka o pam_debug, ktery umi jaksi navodit urcite prostredi k otestovani konfigurace. A potom jeste control muze obsahovat magii [ ], kde si nastavim, co chci kdy presne udelat, kdyz se nespokojim jen s temi nekolika vyjmenovanymi.
    1.5.2008 08:45 peter
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    Dúfam, že bude ešte nejaké pokračovanie s nejakými "chuťovkami". Mňa by celkom zaujímalo, ako nastaviť šifrovaný home adresár pre používateľov, kde budú kľúče k týmto adresárom uložené napr. niekde vo /var a chránené heslom na prihlásenie. Pri zadaní hesla na prihlásenie by sa vytiahol kľúč na odšifrovanie a používateľ by už videl svoj adresár odšifrovaný. Samozrejme, ani root by nevidel adresáre používateľov (pokiaľ by sa nerozhodol odchytávať zadávané heslá). Ideálne by bolo, keby sa kľúč vytváral už pri vytvorení používateľa a používateľ by ani nepostrehol, že má adresár šifrovaný.

    Dokáže niečo takéto pam_ssh.so, resp. ssh-agent? Nič také som nenašiel.
    1.5.2008 11:45 sNop | skóre: 2
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    Pro mne po prvem precteni doost nezrozumitelne, neni tam vubec vysvetlene retezeni, nac sluzi pam_env.so,... Ale to su drobnosti, vse se da pekne dostudovat v manuali, kdyz nekdo potrebuje sprovoznit pam tak jako odrazovi mostik sa to celkom da pouzit. Ale clanek neni uceleny a podla mna nedokonceny. Komentar je mysleny ako nestrana kritika.
    1.5.2008 14:19 Pax
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    PAM v Slackwari je, vo v12 urcite
    2.5.2008 12:58 rastos | skóre: 60 | blog: rastos
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM
    Podľa čoho tak súdiš?
    1.12.2008 14:15 lionell
    Rozbalit Rozbalit vše Re: Autentizácia v Linuxe pomocou PAM

    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.

     

    Stále se je co učit

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.