OpenLDAP komandu kopsavilkums
- ldapsearch: Meklējiet OpenLDAP direktoriju koka ierakstus.
- ldapadd: pievieno direktoriju koka ierakstus, izmantojot LDIF formātu.
- ldapdelete: izdzēš OpenLDAP direktoriju koka ierakstus.
- ldapmodify: modificējiet OpenLDAP direktoriju koka ierakstu.
- ldapwhoami: Apstiprina OpenLDAP lietotāju identitāti.
- ldapmodrdn: Spriež par OpenLDAP direktoriju koka DN ierakstu.
- ldapcompare: nosaka, vai DN vērtība un norādītā parametra vērtība pieder vienam un tam pašam ierakstam.
- ldappasswd: modificējiet OpenLDAP direktoriju koka lietotāja ierakstu, lai panāktu paroles atiestatīšanu.
- slaptest: pārbaudiet failu slapd.conf vai cn=configuration direktoriju.
- slapindex: izveido OpenLDAP direktoriju koka indeksu, lai nodrošinātu vaicājumu efektivitāti.
- slapcat: pārvērš datus par LDIF failiem OpenLDAP.
Komanda ldapadd
Opcijas | apraksts | -x | Vienkāršas autentifikācijas veikšana | -D | DN, ko izmanto, lai saistītu serveri | -h | Direktoriju pakalpojuma adrese | -w | Saistīt DN paroli | -f | Faili, kas izmanto LDIF failus ierakstu pievienošanai |
Pirmkārt, mēs sagatavojam failu test.ldif ar šādu komandu:
Saturs ir šāds:
dn: uid=xzz,ou=Users,dc=itsvse,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
homeDirectory: /home/itsvse_xzz
loginShell: /bin/bash
cn: xzz
uidNumber: 1000
gidNumber: 1000
sn: System Administrator
mail: xzz@itsvse.com
postalAddress: shanghai
mobile: 13788888888
Pievienojiet komandas šādi:
Pēc paroles ievadīšanas tā tiek veiksmīgi pievienota, kā parādīts zemāk redzamajā attēlā:
komanda ldapmodify
Komanda ldapmodify ir fiksēta un galvenokārt īsteno dažādas modifikācijas funkcijas, izmantojot konfigurācijas failus.
Demo.ldif fails ir šāds, kas nozīmē, ka lietotāja uid=xzz parametrs uidNumber ir modificēts.
ldappasswd komanda
ldappasswd atver savienojumu ar LDAP serveri un maina ievades paroli.
Opcijas | apraksts | -x | Vienkāršas autentifikācijas veikšana | -D | DN, ko izmanto, lai saistītu serveri | -w | Saistīt DN paroli | -S | Ievadiet paroli, kad tiek prasīts | -s | Pass, lai iestatītu paroli, lai izietu | -a | pass set old passwd to pass | -A | Uzvediet vecā passwd iestatīšanu | -H | attiecas uz serveri, kas jāsaista | -Es | SASL sesijas metodes izmantošana |
Komanda ldapsearch
LDAP meklēšanas komanda
[root@VM_0_9_centos ~]# ldapsearch -h
ldapsearch: option requires an argument -- 'h'
ldapsearch: unrecognized option -h
usage: ldapsearch [options] [filter [attributes...]]
where: filtra RFC 4515 saderīgs LDAP meklēšanas filtrs Atribūtu atribūtu aprakstu saraksts ar atstarpēm kas var ietvert: 1.1 Nav atribūtu * Visi lietotāja atribūti + visi darbības atribūti Meklēšanas iespējas: -deref viens no nekad (noklusējums), vienmēr, meklēt vai atrast -A izgūst tikai atribūtu nosaukumus (bez vērtībām) -b basedn bāze dn meklēšanai -C nepārtrauktas darbības režīms (neapstājies pie kļūdām) -E [!] <ext>[=<extparam>] meklēšanas paplašinājumi (! norāda kritiskumu) [!] domainScope (domēna tvērums) !dontUseCopy (Nelietot kopēšanu) [!] mv=<filter> (RFC 3876 atbilstošo vērtību filtrs) [!] pr=<size>[/prompt|noprompt] (RFC 2696 lapu rezultāti/uzvedne) [!] sss=[-]<attr[:OID]>[/[-]<attr[:OID]>...] (RFC 2891 servera puses kārtošana) [!] subentries[=true|false] (RFC 3672 subentries) [!] sync=ro[/<cookie>] (RFC 4533 LDAP sinhronizācijas atsvaidzināšanaTikai) rp[/<cookie>][/<slimit>] (refreshAndPersist) [!] vlv=<before>/<after>(/<offset>/<count>|:<value>) (LDAV3-VLV-09 virtuālā saraksta skati) [!] deref=derefAttr:attr[,...] [; derefAttr:attr[,...] [; ...]] [!] <oid>[=:<b64value>] (vispārēja kontrole; nav atbildes apstrādes) -f faila lasīšanas operācijas no "faila" -F prefiksa URL prefikss failiem (noklusējums: file:///tmp/) -l ierobežot meklēšanas laika ierobežojumu (sekundēs vai "nav" vai "max") -L drukāt atbildes LDIFv1 formātā -LL drukāt atbildes LDIF formātā bez komentāriem -LLL drukāt atbildes LDIF formātā bez komentāriem un versija -M iespējot pārvaldīt DSA IT kontroli (-MM, lai padarītu kritisku) -P versijas protokola versija (noklusējums: 3) -s tvērums viens no bāzes, viens, apakš vai bērni (meklēšanas tvērums) -S attr kārtot rezultātus pēc atribūta 'attr' -t rakstīt binārās vērtības failiem pagaidu direktorijā -tt ierakstiet visas vērtības failos pagaidu direktorijā -T ceļš rakstīt failus direktorijā, kas norādīts pēc ceļa (noklusējums: /tmp) -u iekļaut lietotājam draudzīgus ierakstu nosaukumus izvadē -z ierobežot lieluma ierobežojumu (ierakstos vai "nav" vai "max") meklēšanai Biežākās iespējas: -d līmenis iestatiet LDAP atkļūdošanas līmeni uz 'level' -D saistīties ar DN -e [!] <ext>[=<extparam>] vispārīgie paplašinājumi (! norāda uz kritiskumu) [!] assert=<filter> (RFC 4528; RFC 4515 filtra virkne) [!] authzid=<authzid> (RFC 4370; "dn:<dn>" vai "u:<user>") [!] ķēde[=<resolveBehavior>[/<continuationBehavior>]] viens no "chainingPreferred", "chainingRequired", "ieteikumiVēlams", "ieteikumiObligāti" [!] manageDSAit (RFC 3296) [!] noop Politika [!] postread[=<attrs>] (RFC 4527; ar komatiem atdalītu ATTR saraksts) [!] preread[=<attrs>] (RFC 4527; ar komatiem atdalītu ATTR saraksts) [!] Atpūsties [!] Sesijas izsekošana pamest, atcelt, ignorēt (SIGINT sūta atteikties/atcelt, vai ignorē atbildi; ja kritisks, negaida SIGINT. īsti nekontrolē) -h host LDAP serveris -H URI LDAP vienotais resursu identifikators(-i) -Es izmantoju SASL interaktīvo režīmu -n parādiet, kas tiktu darīts, bet faktiski to nedariet -N neizmantojiet reverso DNS, lai kanonizētu SASL resursdatora nosaukumu -O atbalsta SASL drošības īpašības -o <opt>[=<optparam>] Vispārīgās iespējas nettimeout=<timeout> (sekundēs vai "nav" vai "max") ldif-wrap=<width> (kolonnās vai "nē" bez iesaiņošanas) -p porta ports LDAP serverī -Q izmantojiet SASL kluso režīmu -R sfēra SASL sfēra -U autentifikācijas SASL autentifikācijas identitāte -v palaist izvērstā režīmā (diagnostika uz standarta izvadi) -V drukātās versijas informācija (tikai VV) -w passwd saistīt paroli (vienkāršai autentifikācijai) -W uzvedne par saistīšanas paroli -x Vienkārša autentifikācija -X autentifikācijas SASL autorizācijas identitāte ("dn:<dn>" vai "u:<user>") -y fails Lasīt paroli no faila -Y robots SASL mehānisms -Z Sākt TLS pieprasījumu (-ZZ, lai pieprasītu veiksmīgu atbildi) Komanda ir šāda:
Vaicājuma rezultāti ir šādi:
Vaicāt visiem lietotājiem:
LDAP lietvārdu skaidrojums
Objektu klase
LDAP objektu klase ir LDAP iebūvēts datu modelis. Katrai objectClass ir sava datu struktūra, piemēram, mums ir objectClass ar nosaukumu "Phone Book", kurai noteikti būs daudz iebūvētu atribūtu, piemēram, nosaukums (uid), ID numurs (uidNumber), vienības nosaukums (gid), mājas adrese (homeDirectory) utt., Tajā pašā laikā ir arī objectClass ar nosaukumu "Classmate Record", kurai ir "tālruņu grāmata" Dažiem atribūtiem (piemēram, uid, homeDirectory) būs arī atribūti, kas nav "tālruņu grāmatā" (piemēram, apraksts utt.).
Pieteikums
Ierakstu var saukt par ierakstu, ieraksts ir ieraksts, pamata glabāšanas vienība LDAP; To var uzskatīt arī par DN kolekciju un atribūtu kopumu. Ņemiet vērā, ka ieraksts var saturēt vairākas objectClasses, piemēram, zhang3 vienlaikus var pastāvēt "Tālruņu grāmatā" vai "Klasesbiedra ierakstā".
DN
Distinguished Name, unikālais LDAP ieraksta atšķirīgais nosaukums, pilnīga DN rakstība: uid=zhang3, ou=People, dc=163, dc=com. LDAP serveris ir unikāls tikai ieraksts LDAP.
LDAP meklēšanas filtrs
Izmantojiet filtru, lai meklētu LDAP. Filtrs parasti sastāv no tādas vienības kā (atribūts=vērtība), piemēram: (&(uid=ZHANGSAN)(objectclass=person)) norāda, ka meklējamā lietotāja LDAP ieraksts ir ZHANGSAN. Vēl viens piemērs ir: (&(|( uid= ZHANGSAN)(uid=LISI))(objectclass=person)), norādot, ka meklējamais lietotājs ar meklēšanas ID ir ZHANGSAN vai LISI; Varat arī izmantot *, lai attēlotu jebkuru vērtību, piemēram, (uid=ZHANG*SAN), un meklēt ierakstus ar uid vērtībām, kas sākas ar ZHANG un beidzas ar SAN. Turklāt saskaņā ar dažādām LDAP atribūtu atbilstības kārtulām var būt šāds filtrs: (&(createtimestamp>=20050301000000)(createtimestamp<=20050302000000)), kas norāda, ka meklēšanas izveides laiks ir no 20050301000000 līdz 20050302000000.
Filtrā "&" nozīmē "un"; “!” nozīmē "nē"; “|” nozīmē "vai". Atkarībā no atbilstības noteikumiem mēs varam izmantot "=", "~=", ">=" un "<=".
Bāze DN
Bāzes DN var būt "dc=163,dc=com" vai "dc=People,dc=163,dc=com". Tā kā LDAP ir koka datu struktūra, meklēšana sāksies no BaseDN pēc tam, kad ir norādīts basedn, un mēs varam norādīt meklēšanas tvērumu kā: tikai meklēšanas pamatā (bāze), pamatojoties uz tiešo apakšlīmeni (viens līmenis) un pamatojoties uz visu apakškoka līmeni.
objekta klase
LDAP ierakstam jāsatur atribūts objectClass un jāpiešķir vismaz viena vērtība. Katra vērtība tiks izmantota kā veidne datu glabāšanai ar LDAP ierakstu; Veidnē ir atribūts, kas jāpiešķir ierakstam, un neobligāts atribūts. objectClass ir stingra hierarhija, augšpusē un aizstājvārds. Piemēram, organizationalPerson objectClass ir pakārtota personai, bet persona ir pakārtota augšai.
objectClass var iedalīt šādās 3 kategorijās: Strukturāls: piemēram, persona un organizācijaVienība; Palīglīdzeklis: piemēram, extensibeObject; Anotācija: piemēram, abstrakto objectClass nevar izmantot tieši. OpenLDAP shēmā ir definētas daudzas objectClasses, un dažu bieži izmantoto objectClasses nosaukumi ir uzskaitīti zemāk.
- konts
- Aizstājvārds
- dcobjekts
- domēns
- ipHost
- Organizācija
- organizatoriskā loma
- organizatoriskā vienība
- persona
- organizatoriskā persona
- inetOrgPerson
- dzīvesvietaPersona
- posixkonts
- posixGroup
ObjectClass ir atribūtu kolekcija, un LDAP ietver daudzus kopīgus objektus cilvēku organizācijās un iekapsulē tos objektu klasēs. Piemēram, personāls ietver uzvārdu (sn), vārdu (cn), tālruņa numuru (telephoneNumber), paroli (userPassword) un citus atribūtus, un organizationalPerson ir personas mantojuma klase, papildus iepriekš minētajiem atribūtiem tas ietver arī nosaukumu, pasta indeksu (postalCode) un pasta adresi (postalAddress) un citi atribūti.
Vienumu tipus var viegli definēt, izmantojot objektu klases. Katrs ieraksts var tieši mantot vairākas objektu klases, kas pārmanto dažādus rekvizītus. Ja ir 2 objektu klases ar vienu un to pašu atribūtu, pēc ieraksta mantošanas tiks saglabāts tikai 1 atribūts. Objektu klase arī norāda, kuri rekvizīti ir pamatinformācija un kuriem jābūt (obligāti jābūt): kuri rekvizīti ir paplašināta informācija un var saturēt (maijs vai neobligāti).
Ir trīs veidu objektu klases: strukturāla, abstrakta un palīgierīce. Strukturālie tipi ir visvienkāršākie tipi, kas norāda objekta pamatīpašības, un katrs ieraksts pieder un pieder tikai vienai strukturālo objektu klasei. Abstrakti tipi var būt strukturāli tipi vai citi abstrakti tipu vecāki, kas organizē objekta rekvizītu kopīgās daļas, ko sauc par citu klašu veidnēm, un ieraksti nevar tieši integrēt abstraktās objektu klases. Palīgtips norāda objekta entītijas paplašinātos rekvizītus. Lai gan katra josla pieder tikai vienai strukturālo objektu klasei, tā var piederēt vairākām palīgobjektu klasēm vienlaikus.
Objektu klase pati var mantot viena otru, tāpēc objektu klases saknes klase ir augstākā abstraktā objektu klase. Ņemot par piemēru biežāk izmantotos cilvēku veidus, viņu mantojuma attiecības ir tādas, kā parādīts attēlā:
Iebūvētie accout atribūti ir: userid, description, host, localityName, organizationName, organizationalUnitName, skat.
inetOrgPerson iebūvētie atribūti ir cn, sn, description, seeAlso, telephoneNumber, userPassword, destinationIndicator, facsimileTelephoneNumber, internationaliSDNNumber, l, ou, physicalDeliveryOfficeName、postOfficeBox、postalAddress、postalCode、preferredDeliveryMethod、registeredAddress、st、street、telephoneNumber、teletexTerminalIdentifier、 telexNumber、title、x121Address、audio、usinessCategory、carLicense、departmentNumber、isplayName、employeeNumber、employeeType、givenName、homePhone、homePostalAddress、initials、 jpegPhoto, labeledURI, pasts, menedžeris, mobilais, o, peidžeris, foto, vēlamaisValoda, istabaNumurs, sekretārs, uid, lietotājsSertifikāts utt.;
Kā redzat, accout iestata tikai dažus nepieciešamos un noderīgos atribūtus (tas noteikti ir pietiekami, lai pabeigtu pieteikšanās pārbaudi), savukārt inetOrgPerson ir daudz iebūvētu atribūtu, piemēram, tālruņa numurs, mobilā tālruņa numurs, ielas adrese, e-pasta numurs, e-pasta adrese, istabas numurs, iemiesojums, vadītājs, darbinieka numurs utt.
Tāpēc, konfigurējot LDAP, ieteicams iestatīt objectClass tipu uz accout, ja tas ir tikai pieteikšanās pārbaudei, un iestatīt objectClass uz inetOrgPerson, ja vēlaties izveidot lielu un visaptverošu darbinieku informācijas dārgumu
Šeit es parasti izmantoju 'inetOrgPerson', 'posixAccount', 'shadowAccount'.
Nepieciešamie konta atribūti ir userid, bet nepieciešamie posixAccount atribūti ir cn, gidNumber, homeDirectory, uid, uidNumber; Nepieciešamais shadowAccount atribūts ir uid, un izvēles atribūti ir shadowExpire, shadowInactive, shadowMax, shadowMin, userPassword utt. Augstākais nepieciešamais rekvizīts ir objectClass (var redzēt, ka top un citas objectClasses ir pārmantotas relācijas).
Atribūts
Atribūti ir līdzīgi programmēšanas mainīgajiem un tos var piešķirt. Daudzi bieži izmantotie atribūti ir deklarēti OpenLDAP (lietotāji var arī definēt savus atribūtus). Kopējās atribūta nozīmes ir šādas:
- c: Valsts.
- cn:parastais nosaukums, kas attiecas uz objekta nosaukumu. Ja tas attiecas uz personu, ir jāizmanto tās pilns vārds.
- DC:domēna komponents, ko bieži izmanto, lai atsauktos uz domēna nosaukuma daļu.
- givenName: attiecas uz personas vārdu, nevis uzvārdu.
- l: attiecas uz vietas nosaukumu, piemēram, pilsētas vai cita ģeogrāfiskā apgabala nosaukumu.
- pasts: e-pasta adrese.
- o:organizationName, kas attiecas uz organizācijas nosaukumu.
- ou:organizationalUnitName, kas attiecas uz organizācijas vienības nosaukumu.
- sn: uzvārds, attiecas uz personas uzvārdu.
- phoneNumber: tālruņa numurs, uz kura jānorāda tās valsts kods, kurā tas atrodas.
Padoms: objectClass ir īpašs atribūts, kas satur citus izmantotos atribūtus, kā arī sevi.
Dažādām objectClasses parasti ir dažas obligātās rekvizītu vērtības un dažas neobligātās rekvizītu vērtības. Piemēram, jūs varat izmantot personas objectClass, lai attēlotu lietotāja ierakstu sistēmā, un lietotājam sistēmā parasti ir nepieciešama kāda informācija, piemēram, vārds, tālruņa numurs, parole, apraksts utt. Kā parādīts zemāk redzamajā attēlā, personai iestatiet lietotāja vārdu un uzvārdu, izmantojot cn un sn, kas ir obligāti, bet citi atribūti nav obligāti.
Tālāk ir norādīts dažu bieži izmantoto objectClass prasību saraksts, kas ir nepieciešams.
- Konts:Lietotāja ID。
- organizācija:o。
- Persona: CN un SN.
- organizationalPerson: tāds pats kā persona.
- organizationalRole:cn。
- organizationUnit:ou。
- posixGroup:cn、gidNumber。
- posixAccount:cn、gidNumber、homeDirectory、uid、uidNumber。
(Beigas)
|