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 00:33 | Komunita

    Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.

    Ladislav Hagara | Komentářů: 1
    včera 23:22 | Pozvánky

    Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou

    … více »
    bkralik | Komentářů: 0
    včera 22:33 | IT novinky

    Dle plánu dnes končí služba Skype. Uživatelé mohou pokračovat v Microsoft Teams.

    Ladislav Hagara | Komentářů: 0
    včera 21:44 | IT novinky

    Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.

    Ladislav Hagara | Komentářů: 1
    včera 12:33 | Zajímavý projekt

    Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.

    Ladislav Hagara | Komentářů: 1
    včera 12:11 | Pozvánky

    Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.

    Ladislav Hagara | Komentářů: 0
    4.5. 21:44 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    4.5. 14:22 | IT novinky

    Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.

    Ladislav Hagara | Komentářů: 29
    3.5. 22:33 | Nová verze

    Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.

    Ladislav Hagara | Komentářů: 2
    2.5. 22:22 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (58%)
     (1%)
     (8%)
     (21%)
     (4%)
     (2%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 526 hlasů
     Komentářů: 22, poslední včera 10:06
    Rozcestník

    Dotaz: LDAP zařazení do skupin při primárním lokálním přihlášením

    6.10.2007 13:33 chjo
    LDAP zařazení do skupin při primárním lokálním přihlášením
    Přečteno: 550×
    Ahoj. Mám nastavený přihlašování do ldap jako druhý tj. první pokus směřuje do lokálního systému, pokud není nalezen uživatel, hledá se v ldap. To samý mám i se skupinami. Horší už je ale to, že když se přihlásí uživatel z ldap, tak má jen primární skupinu users, nikoliv ostatní, které jsou uvedeny v ldap, protože hledání ve skupinách probíhá lokálně. Potřeboval bych zařídit, aby když je uživatel přihlášený z ldap, tak aby to automaticky hledalo v těch druhých uvedených skupinách tj. v ldap. Jedná se vlastě o prioritu v nsswitch.conf. (Doufám že jsem to napsal alespoň trochu srozumitelně). Kde mám co nastavit?

    Odpovědi

    6.10.2007 13:45 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Priorita se nastavuje v /etc/nsswitch.conf – ale jde to jenom globálně, tj. pořadí v jakém se budou hledat skupiny (např. nejprve v LDAP, pak v souborech). Vezme se údaj z první databáze, ve které skupina je uvedená – tj. nelze mít stejnou skupinu i v souboru i v LDAP a čekat, že se tyto dvě skupiny spojí. Tj. pokud dáte LDAP na první místo, budou se jako první prohledávat skupiny v LDAP i pro uživatele z lokálního souboru, a pokud bude příslušná skupina nalezena v LDAP, jako by už v /etc/groups nebyla.
    6.10.2007 15:43 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Tohle chápu, ale rád bych, aby to fungovalo takto: systém nejprve vše hledá lokálně, najde skupiny, ale ne uživatele, pokud uživatele najde v ldap, znovu začne mapovat skupiny, tentokrát ale v ldap.
    6.10.2007 16:36 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Takhle to nejde. Není to tak, že by uživatel byl členem nějakých skupin, ale skupina má své členy. Když se má zjistit seznam skupin, kterých je uživatel členem, musí se získat seznam všech skupin, a pak se hledá, ve kterých je uveden jako člen. To že byl ten uživatel nalezen v LDAPu, to už se v tu chvíli dávno neví.

    Jediné řešení je ty skupiny, o které vám jde, nemít lokálně a mít je jen v LDAPu. Nebo naopak začít prohledávání skupin v LDAPu a nemít tam stejné skupiny, jako skupiny lokální. Což mi stejně připadá jako rozumná věc, protože když budete mít stejnou skupinu v LDAPu i lokálně, uplatní se vždy jen jedna (ta, která je dřív v nsswitch.conf).

    Ani mne nenapadá důvod, proč by mělo být potřeba hledat skupiny k uživatelům v LDAPu jen v LDAPu – běžné je to, že v souborech máte jen „systémové“ uživatele – root a uživatele, pod kterými běží služby, plus případně související skupiny – aby systém běžel, i když nebude mít přístup k LDAPu. No a lidské uživatele a jejich skupiny už pak máte v LDAPu. Nenapadá mne důvod, proč by se tyto „systémové“ a „lidské“ účty a skupiny měly nějak prolínat. Třeba má váš problém řešení v jiném uspořádání skupin.
    6.10.2007 17:27 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    No současně mám pořadí takový že se nejdřív hledá v ldap potom lokálně, ale systém se pak chová "divně", hlavně při bootu. Systém se chová ok, pokud mám jako první compat, jako druhý ldap. Ovšem u tohodle je problém, že mám přidělenou jen tu jednu primární skupinu a když chci aby uživatel jarda na ldap byl v admin skupině, které je jak v ldap, tak lokálně, má smůlu kvůli tomu hledání skupin jako prvních.
    6.10.2007 18:00 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    „Divně“ se to chová nejspíš proto, že se to pokouší navázat komunikaci se vzdáleným LDAP serverem, což zvlášť při bootu, kdy ještě není nakonfigurovaná síť, může být problém – pak se čeká na timeout. Problém je ale asi hlavně v tom, že skupina admin je i v lokálních skupinách.

    Ještě se můžete zkusit podívat na nss_initgroups backlink v ldap.conf, ale to by asi znamenalo změnit strukturu LDAP databáze – a pouze jsem to našel v dokumentaci, nemám v praxi vyzkoušené, jak to funguje.
    6.10.2007 22:58 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    A jak se to teda řeší v praxi?
    7.10.2007 10:26 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Jak už jsem psal výš. Máte jakoby dvě oddělené množiny účtů/skupin. Jedna množina je lokální – tam jsou „systémové“ účty a skupiny – tj. takové, které používají pro svůj běh démoni. Jsou to takové účty, aby počítač naběhl a poskytoval základní služby i bez připojení k LDAPu. A pro běžné uživatele pak máte druhou množinu účtů a skupin, které jsou v LDAPu. Pokud z nějakého důvodu potřebujete mít systémové účty a uživatelské účty v jedné skupině, dal bych tu skupinu do LDAPu. Pak je asi dobré zajistit, aby LDAP byl pokud možno vždy dostupný, aby se síť nakonfigurovala co nejdříve po bootu (před spouštěním dalších služeb), případně nastavit nějaké rozumné timeouty pro LDAP a chování v případě nemožnosti spojení nebo přerušení spojení.

    A vždycky zbývá možnost napsat si vlastní modul do NSS :-)
    7.10.2007 11:36 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    No trochu by se to dalo oddělit, ale mám skupiny, ve kterých potřebuju mít jak systémové, tak běžné uživatele. A ty dělají problém, pokud jsou v ldapu, protože systém, ačkoliv, jak jsem zjistil, už tou dobou má navázané spojení i s ldapem, tak ty skupiny někdy nevidí.
    7.10.2007 11:42 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Řešení by bylo udělat skupinu ve skupině. Něco jako místo 'floppy:x:25:haldaemon,josef' udělat toto: 'floppy:x:25:haldaemon,2500', kde 2500 je skupina obsahující josef. To ale asi neprojde a tak se ptám už někdo něco takovýho zkoušel napsat či opatchovat?
    7.10.2007 19:33 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    No ale to jaksi nejde, už jsem úplně bezradný. Skupiny mohu oddělit na lokální a vzdálené, ale třeba plugdev obsahuje i systémové uživatele + běžné uživatelské účty. Jedině snad nějak synchronizovat vzdálené skupiny s lokálníma????
    7.10.2007 19:42 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    A nebo kdyby šlo nějak udělat to, že když se najde lokální skupina, bude se pokračovat v hledání a pokud neuspěje další zdroj, vezme se to první. Našel jsem tu tohle:
    group:          compat [SUCCESS=continue] ldap
    
    To by možná mohlo dělat to, co potřebuju, ne? Jen doufám že se compat nepřeskočí i v případě, že ldap bude nedostupný.
    7.10.2007 19:50 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Podle mne tohle bude fungovat tak, že se vždy bude pokračovat na LDAP, a pokud se v něm skupina nenajde, bude se to brát, jako by skupina neexistovala. Ale vyzkoušené to nemám.
    7.10.2007 19:48 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Napadá mne jedině skupiny jako plugdev mít v LDAPu a dát tam i ty lokální uživatele.
    7.10.2007 20:09 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Pak už ale musím buď předřadit ldap před compat v nsswitch.conf nebo odstranit lokální skupinu, což by nebylo moc dobrý při nedostupnosti ldap. Ale jak píšu, hlavně ta skupina plugdev mi dělá problém při bootovaní i v případě dostupnosti ldap serveru. V nsswitch.conf mám pro to notfound=continue a nastaveny srozumitelné limity. Je to nějaká soft limit pro bind, hard, který je default mi nefunguje, protože se to prohledává pořád dokola i s nastavenýma timeoutama.
    7.10.2007 22:59 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    V libnss-ldap.conf mám
    nss_reconnect_tries 6
    nss_reconnect_sleeptime 1
    nss_reconnect_maxsleeptime 2
    nss_reconnect_maxconntries 6
    bind_policy soft
    bind_timelimit 30
    
    Pokud změním bind_policy na hard, se kterým by to asi fungovalo tak jak má a nemusel bych vůbec řešit tuhle diskusi se to sekne při bootu, protože se neustále prohledává tento zdroj i když je omezen počet pokusů a v nsswitch.conf je ldap [NOTFOUND=continue] compat. Možná byste mi pomohl s tímhle ??
    8.10.2007 19:09 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    [NOTFOUND=continue] se uplatní, pokud není skupina nalezena – nikoli v případě, že nefunguje spojení. Navíc tohle chování je defaultní. To nastavení, které máte, by mělo vést k maximálnímu timeoutu 11 sekund (jestli dobře počítám). Přikládám výpis z Gentooovského ldap.conf, ať to nemusím složitě vysvětlovat:
    # Timeout behavior
    # Upstream nss_ldap hard-codes these values:
    #nss_reconnect_tries 5                  # number of times to double the sleep time
    #nss_reconnect_sleeptime 4              # initial sleep value
    #nss_reconnect_maxsleeptime 64  # max sleep value to cap at
    #nss_reconnect_maxconntries 2   # how many tries before sleeping
    # This leads to a delay of 124 seconds (4+8+16+32+64=124) per lookup if the
    # server is not available.
    
    # For Gentoo's distribution of nss_ldap, as of 250-r1, we use these values
    # (The hardwired constants in the code are changed to them as well):
    nss_reconnect_tries 4                   # number of times to double the sleep time
    nss_reconnect_sleeptime 1               # initial sleep value
    nss_reconnect_maxsleeptime 16   # max sleep value to cap at
    nss_reconnect_maxconntries 2    # how many tries before sleeping
    # This leads to a delay of 15 seconds (1+2+4+8=15)
    
    # If you are impatient, and know your LDAP server is reliable, fast or local,
    # you may wish to use these values instead:
    #nss_reconnect_tries 1                  # number of times to double the sleep time
    #nss_reconnect_sleeptime 1              # initial sleep value
    #nss_reconnect_maxsleeptime 1   # max sleep value to cap at
    #nss_reconnect_maxconntries 3   # how many tries before sleeping
    # This leads to a delay of 1 second.
    
    Problém bude asi právě jen s tou skupinou plugdev. Protože ta je potřeba už při inicializaci zařízení udevem, tzn. ještě před tím, než se inicializuje síťová karta a tedy před tím, než se LDAP může připojit k síti. Je to takový provblém, co bylo dřív, jestli vejce, nebo slepice :-) Jedno řešení by bylo nakonfigurovat boot tak, aby se síťová karta inicializovala staticky (bez udev), a pak start sítě předřadit i udev (nebo hotplug) startovacímu skriptu. Což může být docela ošklivý zásah do startovacích skriptů.

    Další možnost je mít dva nsswitch.conf, jeden pro boot (kde bude pořaíd compat ldap) a druhý, kterým se ten první po bootu nahradí (s opačným pořadím). To taky není moc hezké řešení, navíc pro aplikaci platí nejspíš ten, který viděla při svém startu – protože si jej při startu přečte a dál jej již nekontroluje.

    Nejlepší řešení by byla knihovna nss, která by uměla obalit volání více podřízených knihoven a vytvořit z toho jednu sdruženou skupinu. Nic takového jsem ale nenašel. Jenom popis podobného problému.

    Z těch řešení, která nevyžadují nic programovat ani se pokoušet rozbít init skripty mne napadá snad jenom použít nscd (který asi stejně používáte) a pro group mu nastavit persistent na yes (vizte man nscd.conf). Ovšem zase bude potřeba zařídit, aby se nscd spustil ještě před hotplug…
    8.10.2007 19:28 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Obě řešení, co zde popisujete, jsem již zkoušel a je to opravdu ošklivý zásah do systému, bind policy na soft sice funguje, ale jak píšu, mám s tím problémy. Nscd nepoužívám, protože ten způsoboval ještě větší potíže. A můžete mi srozumitelně vysvětlit proč se při startu s policy hard prohledává pořád jen ldap zdroj a nepřeskočí se ke compat i když jsem zkoušel použít i UNAVAIL=continue?
    8.10.2007 19:49 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Opravdu se prohledává jen LDAP? Neprohledává se prostě jen dlouho? Vyšlo mi to u vás na 11 sekund na jeden dotaz, a když nepoužíváte nscd, bude to 11 sekund pokaždé, když nějaký program tyhle údaje potřebuje (jeden proces si ty údaje asi bude cachovat, ale jakmile se spustí jiný, znovu bude čekat těch 11 sekund). Ale je fakt, že po těch 11 s by ten proces měl skočit na compat a tam už by to mělo projít. Nejsem si taky jist, co přesně dělá nss_reconnect_maxconntries – tipoval bych, že je to počet pokusů, kdy se při neúspěchu snaží hned znova navázat spojení, a teprve když se tenhle počet vyčerpá, pokouší se navázat spojení až po pauze (která se pokaždé zdvojnásobí). Ovšem zjištění, že se nedaří navázat spojení, také může nějakou dobu trvat – opět tam musí být nějaký timeout, do kterého když se spojení nenaváže, vyhodnotí se to jako nemožnost navázat spojení. Tenhle timeout asi nastavuje bind_timelimit (i když tedy z popisu si tím jistý nejsem), některé LDAP knihovny navíc tenhle parametr vůbec nemusí umět.
    8.10.2007 20:35 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Tenhle timeout mám nastaven na 30 sekund. Boot s bind na hard proběhne asi takto: nabíha udevd, ten se nemůže připojit k ldap, proběhne několik pokusu s 1 sekundovým timeoutem, poté s 2 sekundovým, pak zase s 1 sek. ..... Nechal jsem to tak hodinu, takže by to timeoutama nemělo být.
    8.10.2007 20:56 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    A není to tím, že udev v sobě spouští spoustu procesů? Každý ten proces pak začne od začátku – 1sekundový timeout, 2sekundový – a pak se spustí další proces (potomek udev) a celé se to opakuje. Jestli můžete, zkuste zjistit PID těch čekajících procesů, nebo prostě jenom sledovat, zda se vždy před tím prvním 1sekundovým timeoutem nevytvoří nový proces.

    Což by ale stejně odhalilo, proč dochází k tomu dlouhému hledání v LDAPu, ale nevyřešilo by to váš problém. Napadá mne jedině nějakým skriptem pravidelně stahovat seznam uživatelů skupiny plugdev z LDAPu a nahrazovat jím seznam uživatelů této skupiny v souboru /etc/group. A v NSS pak mít normálně nejdřív compat a pak LDAP.
    8.10.2007 23:14 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    Asi to tím bude podle toho jak se to chová. Mě napadlo stahovat kompletně celý seznam uživatelů a skupin z ldap a zapisovat do /etc/passwd a /etc/group, ale je to takový "nesystémový" řešení. Možná jedině ten nscd by pomohl, ale s ním mám zase problém ten, že pokud není k dispozici ldap server a nacachuje si to lokální skupiny, tak se to pomalu hroutí. Ještě zkusím zapnout nscd při startu a při dokončování startu systému to zase vypnout.
    8.10.2007 23:35 chjo
    Rozbalit Rozbalit vše Re: LDAP zařazení do skupin při primárním lokálním přihlášením
    A nebo si pohraju s nastavením nscd a zapnu ho hned při startu a bude.

    Založit nové vláknoNahoru

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

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