Giunsa ang Pag-install sa OpenLDAP Server alang sa Sentralisado nga Pagpamatuod
Ang Lightweight Directory Access Protocol (LDAP sa laktod) usa ka standard sa industriya, gaan, kaylap nga gigamit nga set sa mga protocol alang sa pag-access sa mga serbisyo sa direktoryo. Ang serbisyo sa direktoryo usa ka gipaambit nga imprastraktura sa impormasyon alang sa pag-access, pagdumala, pag-organisar, ug pag-update sa adlaw-adlaw nga mga butang ug mga kapanguhaan sa network, sama sa mga tiggamit, grupo, aparato, adres sa email, numero sa telepono, volume ug daghang uban pang mga butang.
Ang modelo sa impormasyon sa LDAP gibase sa mga entri. Ang usa ka entry sa direktoryo sa LDAP nagrepresentar sa usa ka yunit o impormasyon ug talagsaon nga giila pinaagi sa gitawag nga Distinguished Name (DN). Ang matag usa sa mga hiyas sa entry adunay usa ka tipo ug usa o daghan pa nga mga kantidad.
Ang usa ka hiyas usa ka piraso sa impormasyon nga may kalabutan sa usa ka entry. Ang mga tipo kasagarang mnemonic string, sama sa cn para sa komon nga ngalan, o mail para sa email address. Ang matag hiyas gihatagan og usa o daghan pa nga mga kantidad nga gilangkuban sa usa ka lista nga gibulag sa wanang.
Ang mosunod usa ka ilustrasyon kung giunsa paghan-ay ang impormasyon sa direktoryo sa LDAP.
Niini nga artikulo, ipakita namon kung giunsa ang pag-install ug pag-configure sa OpenLDAP server alang sa sentralisadong pag-authenticate sa Ubuntu 16.04/18.04 ug CentOS 7.
Lakang 1: Pag-instalar sa LDAP Server
1. Una magsugod pinaagi sa pag-instalar sa OpenLDAP, usa ka open source nga pagpatuman sa LDAP ug pipila ka tradisyonal nga LDAP management utilities gamit ang mosunod nga mga sugo.
# yum install openldap openldap-servers #CentOS 7 $ sudo apt install slapd ldap-utils #Ubuntu 16.04/18.04
Sa Ubuntu, sa panahon sa pag-instalar sa package, maaghat ka sa pagsulod sa password alang sa admin entry sa imong LDAP directory, pagtakda og luwas nga password ug kumpirmahi kini.
Kung kompleto na ang pag-install, mahimo nimong sugdan ang serbisyo ingon sa sunod nga gipatin-aw.
2. Sa CentOS 7, padagana ang mosunud nga mga sugo aron masugdan ang openldap server daemon, pahimoa kini nga awtomatikong magsugod sa oras sa pag-boot ug susihon kung kini nagdagan (sa Ubuntu ang serbisyo kinahanglan nga awtomatikong magsugod sa ilawom sa systemd, mahimo nimong susihon status niini):
$ sudo systemctl start slapd $ sudo systemctl enable slapd $ sudo systemctl status slapd
3. Sunod, tugoti ang mga hangyo sa LDAP server daemon pinaagi sa firewall sama sa gipakita.
# firewall-cmd --add-service=ldap #CentOS 7 $ sudo ufw allow ldap #Ubuntu 16.04/18.04
Lakang 2: Pag-configure sa LDAP Server
Mubo nga sulat: Dili girekomenda nga manu-mano ang pag-edit sa LDAP configuration, kinahanglan nimo nga idugang ang mga configuration sa usa ka file ug gamiton ang ldapadd o ldapmodify nga sugo aron i-load kini sa LDAP directory sama sa gipakita sa ubos.
4. Karon paghimo ug OpenLDAP administrative user ug assign ug password alang niana nga user. Sa ubos nga sugo, usa ka hash value ang gihimo alang sa gihatag nga password, timan-i kini, imong gamiton kini sa LDAP configuration file.
$ slappasswd
5. Dayon paghimo ug LDIF file (ldaprootpasswd.ldif) nga gigamit sa pagdugang og entry sa LDAP directory.
$ sudo vim ldaprootpasswd.ldif
Idugang ang mosunod nga mga sulod niini:
dn: olcDatabase={0}config,cn=config changetype: modify add: olcRootPW olcRootPW: {SSHA}PASSWORD_CREATED
pagpatin-aw sa mga pares sa hiyas-bili sa ibabaw:
- olcDatabase: nagpaila sa usa ka espesipikong ngalan sa instance sa database ug kasagarang makita sa sulod sa /etc/openldap/slapd.d/cn=config.
- cn=config: nagpaila sa global config options.
- PASSWORD: mao ang hashed string nga nakuha samtang nagmugna sa administratibong tiggamit.
6. Sunod, idugang ang katugbang nga LDAP entry pinaagi sa pagtino sa URI nga nagtumong sa ldap server ug sa file sa ibabaw.
$ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f ldaprootpasswd.ldif
Lakang 3: Pag-configure sa LDAP Database
7. Karon kopyaha ang sample database configuration file alang sa slapd ngadto sa /var/lib/ldap directory, ug itakda ang hustong permiso sa file.
$ sudo cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG $ sudo chown -R ldap:ldap /var/lib/ldap/DB_CONFIG $ sudo systemctl restart slapd
8. Sunod, pag-import ug pipila ka batakang LDAP schemas gikan sa /etc/openldap/schema directory sama sa mosunod.
$ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
9. Karon idugang ang imong domain sa LDAP database ug paghimo og file nga gitawag og ldapdomain.ldif para sa imong domain.
$ sudo vim ldapdomain.ldif
Idugang ang mosunod nga sulod niini (ilisan ang pananglitan sa imong domain ug PASSWORD sa hash value nga nakuha kaniadto):
dn: olcDatabase={1}monitor,cn=config changetype: modify replace: olcAccess olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=Manager,dc=example,dc=com" read by * none dn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcSuffix olcSuffix: dc=example,dc=com dn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcRootDN olcRootDN: cn=Manager,dc=example,dc=com dn: olcDatabase={2}hdb,cn=config changetype: modify add: olcRootPW olcRootPW: {SSHA}PASSWORD dn: olcDatabase={2}hdb,cn=config changetype: modify add: olcAccess olcAccess: {0}to attrs=userPassword,shadowLastChange by dn="cn=Manager,dc=example,dc=com" write by anonymous auth by self write by * none olcAccess: {1}to dn.base="" by * read olcAccess: {2}to * by dn="cn=Manager,dc=example,dc=com" write by * read
10. Dayon idugang ang configuration sa ibabaw sa database sa LDAP uban sa mosunod nga sugo.
$ sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f ldapdomain.ldif
11. Niini nga lakang, kinahanglan natong idugang ang pipila ka entries sa atong LDAP directory. Paghimo og laing file nga gitawag og baseldapdomain.ldif nga adunay mosunod nga sulod.
dn: dc=example,dc=com objectClass: top objectClass: dcObject objectclass: organization o: example com dc: example dn: cn=Manager,dc=example,dc=com objectClass: organizationalRole cn: Manager description: Directory Manager dn: ou=People,dc=example,dc=com objectClass: organizationalUnit ou: People dn: ou=Group,dc=example,dc=com objectClass: organizationalUnit ou: Group
I-save ang file ug dayon idugang ang mga entri sa direktoryo sa LDAP.
$ sudo ldapadd -Y EXTERNAL -x -D cn=Manager,dc=example,dc=com -W -f baseldapdomain.ldif
12. Ang sunod nga lakang mao ang paghimo og LDAP user sama pananglit, tecmint, ug magbutang ug password para niini nga user sama sa mosunod.
$ sudo useradd tecmint $ sudo passwd tecmint
13. Dayon paghimo og mga kahulugan alang sa usa ka LDAP nga grupo sa usa ka file nga gitawag og ldapgroup.ldif nga adunay mosunod nga sulod.
dn: cn=Manager,ou=Group,dc=example,dc=com objectClass: top objectClass: posixGroup gidNumber: 1005
Sa ibabaw nga configuration, ang gidNumber mao ang GID sa /etc/group para sa tecmint ug idugang kini sa OpenLDAP directory.
$ sudo ldapadd -Y EXTERNAL -x -W -D "cn=Manager,dc=example,dc=com" -f ldapgroup.ldif
14. Sunod, paghimo og laing LDIF file nga gitawag og ldapuser.ldif ug idugang ang mga kahulugan para sa user tecmint.
dn: uid=tecmint,ou=People,dc=example,dc=com objectClass: top objectClass: account objectClass: posixAccount objectClass: shadowAccount cn: tecmint uid: tecmint uidNumber: 1005 gidNumber: 1005 homeDirectory: /home/tecmint userPassword: {SSHA}PASSWORD_HERE loginShell: /bin/bash gecos: tecmint shadowLastChange: 0 shadowMax: 0 shadowWarning: 0
unya i-load ang configuration ngadto sa LDAP directory.
$ ldapadd -Y EXTERNAL -x -D cn=Manager,dc=example,dc=com -W -f ldapuser.ldif
Kung na-setup na nimo ang usa ka sentro nga server alang sa pag-authenticate, ang katapusan nga bahin mao ang pagpaarang sa kliyente sa pag-authenticate gamit ang LDAP ingon gipasabut niini nga giya:
- Unsaon Pag-configure ang LDAP Client sa Pagkonektar sa External Authentication
Para sa dugang nga impormasyon, tan-awa ang angay nga dokumentasyon gikan sa OpenLDAP server guide.
Ang OpenLDAP usa ka open source nga pagpatuman sa LDAP sa Linux. Niini nga artikulo, gipakita namo kung unsaon pag-instalar ug pag-configure ang OpenLDAP server alang sa sentralisadong pag-authenticate, sa Ubuntu 16.04/18.04 ug CentOS 7. Kung naa kay pangutana o mga hunahuna nga ipaambit, ayaw pagpanuko sa pagkontak kanamo pinaagi sa comment form sa ubos.