Katalogų tarnyba su LDAP [5]: „OpenLDAP“ (II)

Tęskime, be pirmojo pasitarimo:

Šiame įraše pamatysime:

Vietinio vartotojo autentifikavimas

Kai paleisime „OpenLDAP“ serverį, jei norime išbandyti arba turėti vietinį registruotų vartotojų autentifikavimą arba, kad mes užsiregistruosime, kataloge, turime įdiegti ir sukonfigūruoti reikiamus paketus.

„Squeeze“ yra šie paketai:

libnss-ldap: Teikia vardų keitimo paslaugą (NSS pavadinimo paslaugos jungiklis), leidžiančią LDAP serveriui veikti kaip vardų serveriui.

Tai reiškia informacijos apie vartotojo abonementus, grupės ID, informacijos apie pagrindinį kompiuterį, slapyvardžius, „NetGroups“ ir iš esmės kitų duomenų, paprastai gaunamų iš paprasto teksto failų, tokių kaip: / etc / passwd/ etc / groupir pan., ar paslauga NNV.

libpam-ldap: "Įtraukiamas LDAP autentifikavimo modulisArba modulis PAM LDAP. Pateikia sąsają tarp LDAP serverio ir autentifikavimo sistemos per PAM.

nscd: "Vardų tarnybos talpyklos demonas„Arba„ Daemon “už vardų tarnybos talpyklą. Jis tvarko slaptažodžių, grupių ir pagrindinių kompiuterių paiešką, o paieškos rezultatus saugo talpykloje, kad ateityje būtų galima juos rasti.

: ~ # aptitude install libnss-ldap finger

Paketo diegimas libnss-ldap, kuris taip pat diegiamas kaip priklausomybės libpam-ldap jau velnias nscd, perves mus per konfigūracijos vedlį, į kurio klausimus turime tinkamai atsakyti:

libnss-01

libnss-02

libnss-03

libnss-04

libnss-05

libnss-06

libpam-01

libpam-02

libpam-03

libpam-04

Jei norime perkonfigūruoti paketus libnss-ldap ir / arba libpam-ldap, turime įvykdyti:

: ~ # dpkg-pertvarkyti libnss-ldap
: ~ # dpkg-pertvarkyti libpam-ldap

Vėliau mes modifikuojame failą /etc/nsswitch.conf ir paliekame jį su tokiu turiniu:

: ~ # nano /etc/nsswitch.conf
# /etc/nsswitch.conf # # GNU vardų paslaugų jungiklio funkcionalumo konfigūracijos pavyzdys. # Jei turite įdiegtus „glibc-doc-reference“ ir „info“ paketus, pabandykite: # `info libc„ Name Service Switch “, kad gautumėte informacijos apie šį failą. „passwd“: „COMP“ „ldap“ grupė: „COMP“ „ldap“ šešėlis: „COMP“ „ldap“ kompiuteriai: failai dns tinklai: failų protokolai: db failų paslaugos: db failų eteriai: db failai rpc: db failai tinklo grupė: nis

Dėl failo pakeitimų /etc/nsswitch.conf įsigalios, mes iš naujo paleidžiame paslaugą nscd:

: ~ # service nscd paleiskite iš naujo

Svarbi informacija yra failo modifikavimas /etc/pam.d/common-session Vartotojo aplankas, kuris bus sukurtas vietiniame serveryje prisijungiant prie jo, kataloge registruotas vartotojas:

: ~ # nano /etc/pam.d/common-session
[----]
reikalingas seansas pam_mkhomedir.so skel = / etc / skel / umask = 0022
### Pirmiau nurodyta eilutė turi būti įtraukta PRIEŠ # čia yra pakuotės moduliai (blokas „Pagrindinis“) [----]

Užpildykite duomenų bazę

Norėdami užpildyti katalogo duomenų bazę arba ją paleisti, turime pridėti pagrindinius organizacinius vienetus, užregistruoti bent vieną vartotojų grupę ir pridėti vartotoją. Norėdami tai padaryti, mes sukuriame failą LDIF formatu, kurį vėliau pridėsime į katalogą su tokiu turiniu:

: ~ # nano content.ldif
dn: ou = Žmonės, dc = draugai, dc = cu objektasKlasė: organizacinisVienybės ou: Žmonės dn: ou = grupės, dc = draugai, dc = cu objektasKlasė: organizacinisVienybės ou: grupės dn: cn = žiedai, ou = grupės, dc = draugai, dc = cu objectClass: posixGroup cn: rings gidNumber: 10000 dn: uid = frodo, ou = People, dc = friends, dc = cu objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: frodo sn: Bagins givenName: Frodo cn : „Frodo Bagins display“ Pavadinimas: „Frodo Bagins uid“ numeris: 10000 gidNumber: 10000 vartotojo slaptažodis: frodo paštas: frodo@amigos.cu gecos: „Frodo Bagins“ prisijungimas „Shell“: / bin / bash homeKatalogas: / home / frodo

Pridedame failo turinį į katalogą:

: ~ # ldapadd -x -D cn = administratorius, dc = draugai, dc = cu -W -f content.ldif
Įveskite LDAP slaptažodį: pridedant naują įrašą "ou = Žmonės, dc = draugai, dc = cu" pridedant naują įrašą "ou = Grupės, dc = draugai, dc = cu" pridedant naują įrašą "cn = žiedai, ou = Grupės, dc = draugai, dc = cu "pridedamas naujas įrašas" uid = frodo, ou = Žmonės, dc = draugai, dc = cu "

Atliekame atitinkamus patikrinimus:

: ~ # id frodo
uid = 10000 (frodo) gid = 10000 (žiedai) grupės = 10000 (žiedai)

: ~ # getent passwd | grep frodo
frodo: x: 10000: 10000: Frodo Bagins: / home / frodo: / bin / bas

: ~ # pirštas frodo
Prisijungimas: frodo Vardas: Frodo Bagins katalogas: / home / frodo Shell: / bin / bash Niekada neprisijungiau. Pašto nėra. Jokio plano.

: ~ # ldapsearch -Y IŠORĖ -H ldapi: /// -b uid = frodo, ou = Žmonės, dc = draugai, dc = cu

Dabar mes turime katalogų paslaugą, kurią turime valdyti !!!. Mes sukursime du būdus: pirmąjį per paketą užrašai, o antrasis, kurį aptarsime kitame straipsnyje, bus pateiktas per„Ldap“ paskyros valdytojas.

Mes taip pat turėtume pasakyti, kad paketas ldap-utils, pateikia visą eilę naudingų komandų katalogui valdyti. Norėdami sužinoti, kokios yra šios komandos, vykdome:

: ~ # dpkg -L ldap-utils | grep / bin
/ usr / bin / usr / bin / ldapmodrdn / usr / bin / ldapurl / usr / bin / ldapdelete / usr / bin / ldapwhoami / usr / bin / ldapexop / usr / bin / ldappasswd / usr / bin / ldapcompare / usr / bin / ldapsearch / usr / bin / ldapmodify / usr / bin / ldapadd

Norėdami sužinoti daugiau apie kiekvieną komandą, rekomenduojame paleisti vyras. Pateikus kiekvieno paaiškinimą, straipsnis taptų labai ilgas.

Tvarkykite duomenų bazę naudodami konsolės komunalines paslaugas

Mes pasirenkame paketą užrašai tokiai užduočiai atlikti. Diegimo ir konfigūravimo procedūra yra tokia:

: ~ # aptitude install ldapscripts

: ~ # cp /etc/ldapscripts/ldapscripts.conf \ /etc/ldapscripts/ldapscripts.conf.original

: ~ # cp / dev / null /etc/ldapscripts/ldapscripts.conf

: ~ # nano /etc/ldapscripts/ldapscripts.conf
SERVER = localhost BINDDN = 'cn = admin, dc = friends, dc = cu' BINDPWDFILE = "/ etc / ldapscripts / ldapscripts.passwd" SUFFIX = 'dc = friends, dc = cu' GSUFFIX = 'ou = Groups' USUFFIX = 'ou = Žmonės' # MSUFFIX = 'ou = Kompiuteriai' GIDSTART = 10001 UIDSTART = 10001 # MIDSTART = 10000 # OpenLDAP kliento komandos LDAPSEARCHBIN = "/ usr / bin / ldapsearch" LDAPADDBIN = "/ usr / bin / ldapadd" LDAPDELETEBIN / usr / bin / ldapdelete "LDAPMODIFYBIN =" / usr / bin / ldapmodify "LDAPMODRDNBIN =" / usr / bin / ldapmodrdn "LDAPPASSWDBIN =" / usr / bin / ldappasswd "GCLASS =" posixGrATE "# UT ir tt /ldapadduser.template "PASSWORDGEN =" aidas% u "

### Atkreipkite dėmesį, kad scenarijai naudoja
### ldap-utils paketas

: ~ # sh -c "echo -n 'tupassowrd'> \ /etc/ldapscripts/ldapscripts.passwd"

: ~ # chmod 400 /etc/ldapscripts/ldapscripts.passwd

: ~ # cp /usr/share/doc/ldapscripts/examples/ldapadduser.template.sample \ /etc/ldapscripts/ldapadduser.template

: ~ # nano /etc/ldapscripts/ldapadduser.template
dn: uid = , , objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount cn: sn: duotas vardas: rodomas pavadinimas: uid: uidNumber: gidNumber: homeDirectory: loginShell: Paštas: gekonai: aprašymas: Vartotojo paskyra

: ~ # nano /etc/ldapscripts/ldapscripts.conf
## pašaliname komentarą UTEMPLATE = "/ etc / ldapscripts / ldapadduser.template"

Pabandykime pridėti vartotoją Voras karalius vartotojų grupei žiedai ir patikrinkime įvestus duomenis:

: ~ # ldapadduser žingsniai žiedai
[dn: uid = žingsniai, ou = žmonės, dc = draugai, dc = cu] Įveskite „sn“ vertę: karalius [dn: uid = žingsniai, ou = žmonės, dc = draugai, dc = cu] Įveskite reikšmę „suteiktaPavadinimas“: žingsniai [dn: uid = žingsniai, ou = žmonės, dc = draugai, dc = cu] Įveskite „displayName“ vertę: žingsniai El Rey [dn: uid = strides, ou = žmonės, dc = draugai, dc = cu] Įveskite „mail“ vertę: trancos@amigos.cu Sėkmingai pridėtos vartotojo transakcijos prie LDAP Sėkmingai nustatytas vartotojo trankos slaptažodis

šaknis @ mildap: ~ # ldapfinger žingsniai
dn: uid = strides, ou = People, dc = friends, dc = cu objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount cn: strides sn: El Rey givenName: Strides displayName: Strides El Rey uid: strides uidNumber: 10002 gidNumber: 10000 homeDirectory: / home / trancos loginShell: / bin / bash mail: trancos@amigos.cu gecos: trancos aprašymas: vartotojo abonemento vartotojo slaptažodis: e1NTSEF9UnlmcWxCem5iUzBuSzQzTkM3ZFRFcTUwV2VsVnBqRm8

Paskelbkime vartotojui slaptažodį Frodo, išvardinkimeDN„Iš registruotų vartotojų ir ištrinkite naujai sukurtą vartotoją Striderai:

: ~ # ldapsetpasswd frodo
Vartotojo slaptažodžio keitimas uid = frodo, ou = Žmonės, dc = draugai, dc = cu Naujas slaptažodis: pakartokite naują slaptažodį: sėkmingai nustatykite vartotojo uid = frodo, ou = Žmonės, dc = draugai, dc = cu slaptažodį

: ~ # lsldap -u | grep dn
dn: uid = frodo, ou = žmonės, dc = draugai, dc = cu dn: uid = žingsniai, ou = žmonės, dc = draugai, dc = cu

: ~ # ldapfinger frodo
dn: uid = frodo, ou = Žmonės, dc = draugai, dc = cu objektasKlasė: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: frodo sn: Bagins givenName: Frodo cn: Frodo Bagins displayName: Frodo Bagins uidNumber: 10000 gidNumber: 10000 mailNUM: 1 mailNumber: 9 mailNumber: 4 mailNumber: 3 mailNumber: 1 mailNumber: 1 mailNumber: 1 mailNumber: 5 mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNum: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailNumber: XNUMX mailName : frodo@amigos.cu gecos: „Frodo Bagins“ prisijungimas „Shell“: / bin / bash homeKatalogas: / home / „frodo“ vartotojo slaptažodis :: eXNUMXNTSEFXNUMXTnIXNUMXZXNXNUMXYXAXNUMXVnplKXNUMXZIZXZzbFZKaWFXNUMXSVdWeUXNUMXoVjA =

: ~ # ldapdeleteuser žingsniai
Sėkmingai ištrintas naudotojas uid = strides, ou = People, dc = friends, dc = cu iš LDAP

: ~ # lsldap -u | grep dn
dn: uid = frodo, ou = žmonės, dc = draugai, dc = cu

Patikrinkime, ar vietinis autentifikavimas veikia tinkamai:

: ~ # ssh frodo @ mildap
frodo @ mildap slaptažodis: „Linux mildap 2.6.32-5-686 # 1 SMP Fri May 10 08:33:48 UTC 2013 i686 [---] Debian GNU / Linux tiekiama su absoliučiai jokia garantija, kiek leidžia taikomi įstatymai . Paskutinis prisijungimas: 18 m. Vasario 18 d. 54:01:2014, antradienis iš mildap.amigos.cu
frodo @ mildap: ~ $ pwd
/ home / frodo
frodo @ mildap: ~ $ 

Yra daugybė pavyzdžių, kuriuos galime parašyti, tačiau, deja, straipsnis būtų labai ilgas. Mes visada sakome, kad duodame įėjimo taškas prie paslaugų klausimų apskritai. Neįmanoma pakeisti išsamių dokumentų viename įraše.

Norėdami sužinoti daugiau apie paketą užrašai ir jos komandas, prašau ir pasitarkite zmogaus knygeles.

Iki šiol mūsų paprasta katalogų paslauga, pagrįsta OpenLDAP, veikia puikiai.

Santrauka iki šiol ...

Daugelis verslo tinklų paslaugų valdytojų, kai jie perima vieną su „Microsoft“ produktais pagrįstomis paslaugomis, jei nori pereiti į „Linux“, jie apsvarsto domeno valdiklių perkėlimą tarp kitų paslaugų.

Jei jie nesirenka trečiosios šalies produkto, pvz., „ClearOS“ ar „Zentyal“, arba jei dėl kitų priežasčių nori tapti nepriklausomi, jie imasi kruopščios užduoties tapti savo domeno valdytoju arba iš „Samba 4“ - savo „Active Directory“.

Tada prasideda problemos ir kai kurie kiti nusivylimai. Veikimo klaidos. Jie neranda problemų vietos, kad galėtų jas išspręsti. Pakartotiniai bandymai įdiegti. Dalinė paslaugų veikla. Ir ilgas problemų sąrašas.

Bet kurio „Linux“ domeno valdiklio arba „Active Directory“ bazė, pagrįsta „OpenLDAP“ ir „Samba“, būtinai praeina pagrindines žinias apie Kas yra LDAP serveris, kaip jis įdiegtas, kaip jis sukonfigūruotas ir valdomas ir pan.?. Tie, kurie perskaitė išsamią „Samba“ dokumentaciją, gerai žinos, ką turime omenyje.

Tiksliai atsakydami į šį klausimą, mes parašėme visą straipsnių seriją iki šio, ir mes tęsime tuos, kurie yra būtini. Tikimės, kad jie jums bus naudingi.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   vidagnu sakė

    Puikus jūsų pranešimas „Fico“, užklausa naudojant „OpenLDAP“, ar galima sukurti domeno politiką? pritaikyti juos prisijungusiems vartotojams, pvz., ekrano užsklandai, įsijungiančiai po 5 minučių jokios veiklos, konfigūruoti ekrano foną, neleisti veikti tam tikroms programoms, konfigūruoti paleidimo scenarijus ir kt.

    Pagarbiai,
    Oskaras

    1.    Federico sakė

      Ačiū už komentarą !!!. „Oskarai“, atmink, kad ši „Linux“ politika įgyvendinama skirtingai, kai kalbama apie „Linux“ klientus. GNOME pateikia įrankį jam pasiekti, kurio dabar nepamenu. Jei žinau, mes galime nustatyti vartotojo abonemento politiką tiesiogiai „OpenLDAP“. Daugelis man užduoda tą patį klausimą, o aš visada atsakau daugmaž vienodai. Security Ši saugumo politika taikoma tik „Microsoft“ klientams, NE „Linux“ klientams. Tai dvi skirtingos filosofijos. „Active Directory“ yra patentuota programa, pagrįsta „OpenLDAP“, asmenine „Kerberos“ iš „Microsft“ ir tinklo administratoriumi, o aš nežinau, kaip jie dabar tai vadina. Anksčiau tai buvo „Lan Manager“. Mes negalime galvoti apie „Active Directory“ mėgdžiojimą tik su LDAP. Turėtume integruoti „Samba“ arba naudoti „Samba 4“, kad pamatytume, ar tai įmanoma pasiekti. O mano drauge, net nė karto nepažvelgiau į „Samba 4“. 🙂 Aš taip pat nežinau, ar „Zentyal“ su „Active Directory“ gali juos pritaikyti ... bet ta programinė įranga nėra tik „OpenLDAP“. Tai „OpenLDAP“ + „Samba“ + „Kerberos“ + kiti dalykai, kurių aš gerai nepažįstu. 🙂 Šioje serijoje aš užsiimu tik „OpenLDAP“ ir, jei laikysitės jo, pamatysite, kad kompiliume, kurį rašau apie visą seriją, plius kitos būtinos paslaugos, viskas remiasi autentifikavimu naudojant „OpenLDAP Directory“.

      saludos