Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 8768|Odpověď: 1

Příkazy OpenLDAP Series (3) OpenLDAP jsou podrobně vysvětleny

[Kopírovat odkaz]
Zveřejněno 23.06.2020 22:34:54 | | | |
Shrnutí příkazů OpenLDAP

  • ldapsearch: Hledejte záznamy adresářového stromu OpenLDAP.
  • ldapadd: Přidává záznamy do adresářového stromu pomocí formátu LDIF.
  • ldapdelete: Maže záznamy adresářového stromu OpenLDAP.
  • ldapmodify: Upravte záznam adresářového stromu OpenLDAP.
  • ldapwhoami: Ověřuje identitu uživatelů OpenLDAP.
  • ldapmodrdn: Hodnotí DN záznam v adresářovém stromu OpenLDAP.
  • ldapcompare: Určuje, zda hodnota DN a zadaná hodnota parametru patří do stejného záznamu.
  • ldappasswd: Upravte uživatelský záznam adresářového stromu OpenLDAP pro reset hesla.
  • slaptest: Ověřte soubor slapd.conf nebo adresář cn=konfigurace.
  • slapindex: Vytváří index adresářového stromu OpenLDAP pro zvýšení efektivity dotazů.
  • slapcat: Převádí data do LDIF souborů pro OpenLDAP.


Příkaz ldapadd

Možnosti
popis
-x
Provést jednoduchou autentizaci
-D
DN použité k vázání serveru
-h
Adresa adresářové služby
-w
Heslo pro svázání DN
-f
Soubory, které používají LDIF soubory pro sčítání záznamů


Nejprve připravíme soubor test.ldif s následujícím příkazem:



Obsah je následující:

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



Přidejte příkazy následovně:



Po zadání hesla je heslo úspěšně přidáno, jak je znázorněno na obrázku níže:



Příkaz ldapModify

Příkaz ldapmodify je pevný a hlavně implementuje různé modifikační funkce prostřednictvím konfiguračních souborů.



Soubor demo.ldif je následující, což znamená, že parametr uidNumber uživatele uid=xzz je upraven.



Příkaz LDAPPASSWD

ldappasswd naváže spojení s LDAP serverem a změní vstupní heslo.

Možnosti
popis
-x
Provést jednoduchou autentizaci
-D
DN použité k vázání serveru
-w
Heslo pro svázání DN
-S
Zadejte heslo, když je vyzváno
-s
Pass pro nastavení hesla pro pass
-a
Pass set old passwd to pass
-A
Prompt the setting of old passwd
-H
odkazuje na server, který má být vázaný
-Já
Použijte metodu SASL session




Příkaz LDAPSEARCH

Příkaz LDAP Search

[root@VM_0_9_centos ~]# ldapsearch -h
ldapsearch: option requires an argument -- 'h'
ldapsearch: unrecognized option -h
usage: ldapsearch [options] [filter [attributes...]]
where:
  filtr LDAP kompatibilní s RFC 4515
  Seznam popisů atributů oddělených bílým řádkem
    které mohou zahrnovat:
      1.1 Bez atributů
      * všechny uživatelské atributy
      + všechny provozní atributy
Možnosti vyhledávání:
  -a deref jedno z nikdy (výchozí), vždy, hledat nebo najít
  -A získá pouze názvy atributů (bez hodnot)
  -b basedn base dn pro vyhledávání
  -c režim kontinuálního provozu (nezastavujte se při chybách)
  -E [!] <ext>[=<extparam>] rozšíření vyhledávání (! označuje kritickost)
             [!] domainScope (domain scope)
             !dontUseCopy (Nepoužívejte Copy)
             [!] mv=<filter> (filtr shodných hodnot RFC 3876)
             [!] pr=<size>[/prompt|noprompt] (RFC 2696 stránkované výsledky/prompt)
             [!] sss=[-]<attr[:OID]>[/[-]<attr[:OID]>...]
                                         (Třídění na straně serveru RFC 2891)
             [!] podprvky[=true|false] (RFC 3672 podpoložky)
             [!] sync=ro[/<cookie>] (RFC 4533 LDAP Sync refreshOnly)
                     rp[/<cookie>][/<slimit>] (refreshAndPersist)
             [!] vlv=<before>/<after>(/<offset>/<count>|:<value>)
                                         (ldapv3-vlv-09 virtuální seznamy)
             [!] deref=derefAttr:attr[,...] [; derefAttr:attr[,...] [; ...]]
             [!] <oid>[=:<b64value>] (obecné řízení; žádné zpracování reakcí)
  -f operace čtení souboru z 'souboru'
  -F prefix URL prefix pro soubory (výchozí: file:///tmp/)
  -Limit času (v sekundách, nebo "žádný" či "maximální") pro vyhledávání
  -L tiskne odpovědi ve formátu LDIFv1
  -LL tiskne odpovědi ve formátu LDIF bez komentářů
  -Odpovědi LLL tištěné ve formátu LDIF bez komentářů
             a verze
  -M povolit Spravovat DSA IT řízení (-MM pro nastavení kritického)
  -P verze protokolu (výchozí: 3)
  -s rozsah jedna základní, jedna, podpodskupiny nebo dětí (search scope)
  -S attr seřadí výsledky podle atributu 'attr'
  -t zapisuje binární hodnoty do souborů v dočasném adresáři
  -tt zapisovat všechny hodnoty do souborů v dočasném adresáři
  -T path zapisují soubory do adresáře určeného podle path (výchozí: /tmp)
  -u zahrňte uživatelsky přívětivé názvy položek do výstupu
  -z limit velikosti (v záznamech, nebo "žádný" či "max") pro vyhledávání
Běžné možnosti:
  -d úroveň nastavte LDAP ladění na 'level'
  -D binddn bind DN
  -e [!] <ext>[=<extparam>] obecná rozšíření (! označuje kritickost)
             [!] assert=<filter> (RFC 4528; RFC 4515 filtrační řetězec)
             [!] authzid=<authzid> (RFC 4370; "dn:<dn>" nebo "u:<user>")
             [!] Řetězení[=<resolveBehavior>[/<continuationBehavior>]]
                     jeden z "chainingPreferred", "chainingRequired",
                     "doporučeníDoporučené", "doporučené doporučeníDoporučení"
             [!] manageDSAit (RFC 3296)
             [!] Ne
             Ppolicy
             [!] postread[=<attrs>] (RFC 4527; seznam attrů oddělených čárkami)
             [!] preread[=<attrs>] (RFC 4527; seznam attrů oddělených čárkami)
             [!] Uklidni se
             [!] Sessiontracking
             opustit, zrušit, ignorovat (SIGINT posílá opuštění/zrušení,
             nebo ignoruje odpověď; pokud je kritický, nečeká na SIGINT.
             Ne úplně ovládat)
  -h host LDAP server
  -H URI LDAP uniformní identifikátor zdroje
  -Používám interaktivní režim SASL
  -Ukaž, co by se dělalo, ale ve skutečnosti to nedělej
  -N nepoužívejte reverzní DNS k kanonizaci hostitelského jména SASL
  -Bezpečnostní vlastnosti SASL pro O props
  -o <opt>[=<optparam>] obecné možnosti
             nettimeout=<timeout> (v sekundách, nebo "žádná" či "max")
             ldif-wrap=<width> (ve sloupcích, nebo "no" pro žádné obalování)
  -p port port na LDAP serveru
  -Q použijte SASL tichý režim
  -R říše SASL říše
  -U authcid SASL autentifikační identita
  -v běží v režimu verbose (diagnostika na standardní výstup)
  -Informace o verzi v tisku (-pouze VV)
  -w passwd vázání hesla (pro jednoduchou autentizaci)
  -W výzva pro vazbu hesla
  -x Jednoduché ověřování
  -X authzid SASL autorizační identita ("dn:<dn>" nebo "u:<user>")
  -y soubor Číst heslo ze souboru
  -Y mech SASL mechanismus
  -Z Start TLS požadavek (-ZZ pro úspěšnou odpověď)

Příkaz je následující:


Výsledky dotazu jsou následující:


Dotazujte se na všechny uživatele:


Vysvětlení podstatného jména LDAP

Třída objektu

Objektová třída LDAP je datový model zabudovaný v LDAP. Každá objectClass má svou vlastní datovou strukturu, například máme objectClass nazvanou "Phone Book", která bude mít určitě mnoho vestavěných atributů, jako je název (uid), ID číslo (uidNumber), název jednotky (gid), domácí adresa (homeDirectory) atd., současně existuje také objectClass nazvaná "Classmate Record", která má "telefonní seznam" Některé atributy (například uid, homeDirectory) budou mít také atributy, které nejsou v "telefonním seznamu" (například popis atd.).

Vstup

Záznam lze nazývat záznamem, záznam je záznam, základní úložiště v LDAP; Lze jej také chápat jako sbírku DN a sadu atributů. Všimněte si, že záznam může obsahovat více tříd objektů, například zhang3 může existovat současně v "Telefonním seznamu" nebo v "Záznamu spolužáka".

DN

Distinguished Name, jedinečný rozlišovací název záznamu v LDAP, kompletní DN pravopis: uid=zhang3, ou=People, dc=163, dc=com. Pouze záznam v LDAP je unikátní pro LDAP server.

LDAP filtr vyhledávání

Použijte filtr pro vyhledávání LDAP. Filtr je obvykle tvořen jednotkou jako (attribute=value), například: (&(uid=ZHANGSAN)(objectclass=person)) označuje, že LDAP záznam vyhledávacího uživatele je ZHANGSAN. Další příklad je: (&(|( uid= ZHANGSAN)(uid=LISI))(objectclass=person)), což označuje, že vyhledávání uživatele s vyhledávacím ID je ZHANGSAN, nebo LISI; Můžete také použít * k reprezentaci libovolné hodnoty, například (uid=ZHANG*SAN), a vyhledávat položky s hodnotami uid začínajícími na ZHANG a končícími na SAN. Dále podle různých pravidel pro porovnání atributů LDAP může existovat Filtr následující: (&(createtimestamp>=20050301000000)(createtimestamp<=20050302000000)), který označuje, že čas vytvoření vyhledávání je mezi 20050301000000 a 20050302000000.

Ve Filter znamená "&" "a"; “!” znamená "ne"; “|” znamená "nebo". V závislosti na pravidlech párování můžeme použít "=", "~=", ">=" a "<=".

Základní DN

Základní DN může být "dc=163,dc=com" nebo "dc=People,dc=163,dc=com". Protože LDAP je stromová datová struktura, vyhledávání začne od BaseDN po zadání basedn a rozsah vyhledávání můžeme specifikovat takto: pouze search basedn (base), basedn direct sublevel (jedna úroveň) a basedn všechny podstromové úrovně.

objectClass

V LDAP musí záznam obsahovat atribut objectClass a být přiřazen alespoň jeden hodnotný faktor. Každá hodnota bude použita jako šablona pro ukládání dat pomocí LDAP záznamu; Šablona obsahuje atribut, kterému musí být záznam přiřazen, a volitelný atribut. objectClass má přísnou hierarchii, přičemž horní a alias jsou nahoře. Například třída objektClass od organizationalPerson je podřízena osobě a osoba je podřízena vrcholu.

objectClass lze rozdělit do následujících 3 kategorií:
Strukturální: například osoba a organizaceJednotka;
Pomocné: například extensibeObject;
Abstrakt: Například abstraktní třída objectClass nelze použít přímo.
V OpenLDAP schématu je definováno mnoho objektových tříd a názvy některých běžně používaných objektových tříd jsou uvedeny níže.

  • Účet
  • Alias
  • DCobject
  • Doména
  • ipHost
  • Organizace
  • organizační role
  • organizační jednotka
  • osoba
  • organizačníOsoba
  • inetOrgPerson
  • rezidenční osoba
  • posixAccount
  • posixGroup


ObjectClass je sbírka atributů a LDAP zapouzdřuje mnoho běžných objektů v lidských organizacích a zapouzdřuje je do tříd objektů. Například personál zahrnuje příjmení (sn), křestní jméno (cn), telefonní číslo (telefonní číslo), heslo (userPassword) a další atributy, a organizationalPerson je třída dědičnosti osoby, kromě výše uvedených atributů zahrnuje také titul, poštovní směrovací číslo (postalCode) a poštovní adresu (postalAddress) a další vlastnosti.

Typy předmětů lze snadno definovat pomocí tříd objektů. Každý záznam může přímo dědit více tříd objektů, což dědí různé vlastnosti. Pokud existují 2 třídy objektů se stejným atributem, po děděném záznamu zůstane zachován pouze jeden atribut. Třída objektů také specifikuje, které vlastnosti jsou základní informace a musí obsahovat (Must Required): které vlastnosti jsou rozšířené informace a mohou obsahovat (May nebo Optional).

Existují tři typy tříd objektů: strukturální, abstraktní a pomocné. Strukturální typy jsou nejzákladnější typy, které určují základní vlastnosti těla objektu a každý záznam patří pouze do jedné strukturální třídy objektů. Abstraktní typy mohou být strukturální typy nebo jiné abstraktní rodičovské typy, které organizují společné části vlastností objektů dohromady, nazývané šablony pro jiné třídy, a položky nemohou přímo integrovat abstraktní objektové třídy. Pomocný typ specifikuje rozšířené vlastnosti objektové entity. Ačkoli každá čára patří pouze do jedné strukturální třídy objektů, může patřit do více tříd pomocných objektů současně.

Samotná třída objektu se může navzájem dědit, takže kořenová třída třídy objektu je nejvyšší abstraktní třída objektů. Vezmeme jako příklad běžně používané typy lidí, jejich dědický vztah je znázorněn na obrázku:



Vestavěné atributy accoutu jsou: userid, description, host, localityName, organizationName, organizationalUnitName, viz také;

Vestavěné atributy inetOrgPerson jsou cn, sn, description, seeAlso, telefonní číslo, userPassword, destinationIndicator, facsimileTelephoneNumber, internationaliSDNNumber, l, ou, physicalDeliveryOfficeName、postOfficeBox、postalAddress、postalCode、preferredDeliveryMethod、registeredAddress、st、street、telephoneNumber、teletexTerminalIdentifier、 telexNumber、title、x121Adresa、audio、usinessCategory、carLicense、DepartmentNumber、is playName、employeeNumber、employeeType、employee、givenName、HomePhone、HomePostal、HomePostalAddress、Initials、 jpegPhoto, označený URI, mail, manager, mobile, o, pager, photo, preferredLanguage, roomNumber, secretary, uid, userCertificate atd.;

Jak vidíte, accout přednastavuje jen několik nutných a užitečných atributů (to rozhodně stačí k dokončení ověření přihlášení), zatímco inetOrgPerson má spoustu vestavěných atributů, jako je telefonní číslo, mobilní číslo, ulice, e-mailové číslo, číslo pokoje, avatar, manažer, zaměstnanecké číslo atd.

Proto se při konfiguraci LDAP doporučuje nastavit typ objectClass na accout, pokud je to pouze pro ověření přihlášení, a nastavit objectClass na inetOrgPerson, pokud chcete vytvořit rozsáhlý a komplexní poklad informací o zaměstnancích

Tady obvykle používám 'inetOrgPerson', 'posixAccount', 'shadowAccount'.

Požadované atributy účtu jsou userid, zatímco požadované atributy posixAccount jsou cn, gidNumber, homeDirectory, uid, uidNumber; Požadovaným atributem shadowAccount je uid a volitelnými atributy jsou shadowExpire, shadowInactive, shadowMax, shadowMin, userPassword atd. Nejvyšší požadovanou vlastností je objectClass (je vidět, že top a ostatní objectClassy jsou děděné vztahy).

Atribut

Atributy jsou podobné proměnným v programování a lze je přiřadit. Mnoho běžně používaných atributů je deklarováno v OpenLDAP (uživatelé si mohou také definovat vlastní atributy). Významy běžných atributů jsou následující:

  • c: Country.
  • CN: Běžný název, který odkazuje na název objektu. Pokud se jedná o osobu, musí být použito celé jméno.
  • dc:domain komponenta, často používaná k označení části doménového jména.
  • givenName: odkazuje na jméno osoby, nikoli na příjmení.
  • l: Odkazuje na název místa, například název města nebo jiné geografické oblasti.
  • e-mail: E-mailová adresa.
  • o:organizationName, což odkazuje na název organizace.
  • ou:organizationalUnitName, což odkazuje na název organizační jednotky.
  • SN: příjmení, označuje příjmení osoby.
  • telefonní číslo: Telefonní číslo, které by mělo nést kód země, ve které se nachází.


Tip: objectClass je speciální atribut, který obsahuje jiné používané atributy i sebe samotného.

Pro různé třídy objektů obvykle existují některé požadované hodnoty vlastností a některé volitelné hodnoty vlastností. Například můžete použít objectClass osoby k reprezentaci záznamu uživatele v systému a uživatel v systému obvykle potřebuje mít nějaké informace, jako je jméno, telefonní číslo, heslo, popis atd. Jak je vidět na obrázku níže, pro osobu nastavte uživatelské jméno a příjmení pomocí cn a sn, což je povinné, zatímco ostatní atributy jsou volitelné.

Následuje seznam některých běžně používaných požadavků na objektovou třídu, které jsou vyžadovány.

  • account:userid。
  • Organizace:O。
  • Osoba: CN a SN.
  • organizationalPerson: Stejné jako osoba.
  • organizationalRole:cn。
  • organizationUnit:ou。
  • posixGroup:cn、gidNumber。
  • posixAccount:cn、gidNumber、homeDirectory、uid、uidNumber。

(Konec)




Předchozí:OpenLDAP: Nepodařilo se spustit OpenLDAP Server Daemon.
Další:Angular 9 Series (devět) #id selektor aplikovaný na stránce
Zveřejněno 19.05.2023 11:23:09 |
učený
Díky za sdílení~~~
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com