LDAP adalah Protokol Akses Direktori Ringan yang digunakan untuk mengakses dan memelihara direktori terdistribusi melalui protokol internet. phpLDAPadmin adalah klien LDAP berbasis web yang digunakan untuk mengelola dan mengelola server LDAP. Fungsi pencarian yang kuat dan tampilan hierarki hierarki membuatnya lebih mudah untuk mengelola server LDAP melalui browser web. Anda dapat menambah dan menghapus catatan, melihat dan mengedit atribut gambar, mengelola hash kata sandi pengguna, dan banyak lagi menggunakan phpLDAPadmin.
Dalam tutorial ini, kami akan menjelaskan cara menginstal phpLDAPadmin di Ubuntu 20.04.
Prasyarat
- Server yang menjalankan Ubuntu 20.04.
- Nama domain valid yang ditunjukkan dengan IP server Anda.
- Sandi root dikonfigurasi untuk server.
Memulai
Sebelum memulai, selalu disarankan untuk memperbarui sistem Anda dengan paket versi terbaru. Anda dapat memperbaruinya dengan perintah berikut:
apt-get update -y
Setelah semua paket diperbarui, Anda dapat melanjutkan ke langkah berikutnya.
Instal dan Konfigurasi Server OpenLDAP
Pertama, Anda perlu menginstal Slapd dan utilitas LDAP lainnya di server Anda. Anda dapat menginstalnya dengan menjalankan perintah berikut:
apt-get install slapd ldap-utils
Selama instalasi, Anda akan diminta untuk mengatur kata sandi administrator seperti yang ditunjukkan di bawah ini:
Berikan kata sandi aman Anda dan tekan Enter untuk melanjutkan. Setelah penginstalan selesai, Anda perlu mengkonfigurasi ulang paket SLAPD untuk menyetel informasi domain Anda.
Anda dapat mengkonfigurasi ulang dengan perintah berikut:
dpkg-konfigurasi ulang slapd
Anda akan diminta untuk menghilangkan konfigurasi server OpenLDAP seperti yang ditunjukkan di bawah ini:
Pilih Tidak dan tekan Enter untuk melanjutkan. Anda akan diminta untuk memberikan nama domain DNS seperti yang ditunjukkan di bawah ini:
Berikan nama domain Anda dan tekan Enter untuk melanjutkan. Anda akan diminta untuk memberikan nama organisasi seperti yang ditunjukkan di bawah ini:
Berikan nama organisasi yang Anda inginkan dan tekan Enter untuk melanjutkan. Anda akan dimintai password admin seperti gambar di bawah ini:
Berikan kata sandi administrator Anda dan tekan Enter untuk melanjutkan. Anda akan diminta untuk menghapus database seperti yang ditunjukkan di bawah ini:
Pilih Ya dan tekan Enter untuk menyelesaikan konfigurasi.
Sekarang, Anda dapat memverifikasi informasi LDAP Anda menggunakan perintah berikut:
slapcat
Anda akan mendapatkan output berikut:
dn:dc=example,dc=comobjectClass:topobjectClass:dcObjectobjectClass:organizationo:example.comdc:examplestructuralObjectClass:organizationentryUUID:971829cc-ac5f-103a-8e42-9f8486ff5685creatorsName:cn=admin,dc=example,dc :20201027051828.103064Z # 000000 # 000 # 000000modifiersName:cn =admin, dc =contoh, dc =commodifyTimestamp:20201027051828Zdn:cn =admin, dc =contoh, dc =comobjectClass:simpleSecurityObjectobjectClass:organizationalRolecn:admindescription:LDAP administratoruserPassword ::e1NTSEF9Tm5OYlpSMktkYjVnUUprb284MHFPTEVkMjQrQXpQWEk =structuralObjectClass:organizationRoleentryUUID:9718c198-ac5f-103a-8e43-9f8486ff5685creatorsName:cn=admin,dc=example,dc=comcreateTimestamp:20201027051828ZentryCSN:20201027051828.107057Z#000000#000#000000nama pengubah:cn=admin,dc18cBuat Akun Pengguna OpenLDAP
Pertama, Anda perlu membuat wadah unit organisasi untuk menyimpan pengguna dan informasi grup. Anda dapat membuatnya dengan perintah berikut:
nano users-ou.ldifTambahkan baris berikut:
dn:ou=people,dc=example,dc=comobjectClass:organizationUnitobjectClass:topou:peopledn:ou=groups,dc=example,dc=comobjectClass:organizationUnitobjectClass:topou:groupsSimpan dan tutup file setelah selesai kemudian sesuaikan kontrol akses database SLAPD dengan membuat file berikut:
nano update-mdb-acl.ldifTambahkan baris berikut:
dn:olcDatabase={1}mdb,cn=configchangetype:modifikasireplace:olcAccessolcAccess:to attrs=userPassword,shadowLastChange,shadowExpire sendiri tulis oleh anonim auth oleh dn.subtree="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" dikelola oleh dn.exact="cn=readonly,ou=people,dc=example,dc=com" dibaca oleh * noneolcAccess:to dn.exact="cn=readonly,ou=people,dc=example,dc=com" oleh dn.subtree="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" kelola oleh * noneolcAccess:ke dn.subtree="dc=example ,dc=com" oleh dn.subtree="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" dikelola oleh pengguna yang dibaca oleh * noneSimpan dan tutup file kemudian perbarui database ACL dengan informasi di atas dengan menjalankan perintah berikut:
ldapadd -Y EKSTERNAL -H ldapi:/// -f update-mdb-acl.ldifAnda akan mendapatkan output berikut:
Otentikasi SASL/EXTERNAL dimulaiNama pengguna SASL:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0modifikasi entri "olcDatabase={1}mdb,cn=config"Selanjutnya, perbarui database dengan informasi OU pengguna dengan menjalankan perintah berikut:
ldapadd -Y EXTERNAL -H ldapi:/// -f users-ou.ldifAnda akan mendapatkan output berikut:
Otentikasi SASL/EXTERNAL dimulaiNama pengguna SASL:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0menambahkan entri baru "ou=people,dc=example,dc=com"menambahkan entri baru "ou=groups,dc=example,dc=com"Selanjutnya, buat akun pengguna baru bernama hiteshj dengan membuat file berikut:
nano hitesh.ldifTambahkan baris berikut:
dn:uid=hiteshj,ou=people,dc=example,dc=comobjectClass:inetOrgPersonobjectClass:posixAccountobjectClass:shadowAccountuid:hiteshjcn:Hiteshsn:JethvaloginShell:/bin/bashuidNumber:10000gidNumber:10000gidNumber:/shadowDirectory:10000gidNumberhomex:/hide :7shadowInactive:7shadowLastChange:0dn:cn=hiteshj,ou=groups,dc=example,dc=comobjectClass:posixGroupcn:hiteshjgidNumber:10000memberUid:hiteshjSimpan dan tutup file kemudian tambahkan pengguna ke database dengan perintah berikut:
ldapadd -Y EXTERNAL -H ldapi:/// -f hitesh.ldifAnda akan mendapatkan output berikut:
Otentikasi SASL/EKSTERNAL dimulaiNama pengguna SASL:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0menambahkan entri baru "uid=hiteshj,ou=people,dc=example,dc=com "menambahkan entri baru "cn=hiteshj,ou=groups,dc=example,dc=com"Selanjutnya, Anda perlu mengatur kata sandi untuk pengguna. Anda dapat mengaturnya dengan perintah berikut:
ldappasswd -H ldapi:/// -Y EXTERNAL -S "uid=hiteshj,ou=people,dc=example,dc=com"Anda harus melihat output berikut:
Kata sandi baru:Masukkan kembali kata sandi baru:Otentikasi SASL/EKSTERNAL dimulaiNama pengguna SASL:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Buat OpenLDAP Bind DN
Selanjutnya, Anda perlu menentukan nama pengguna dan kata sandi untuk menanyakan server direktori. Pertama, buat hash kata sandi untuk pengguna bind DN menggunakan perintah berikut:
slappasswdAnda akan mendapatkan output berikut:
Kata sandi baru:Masukkan kembali kata sandi baru:{SSHA}DhjyJN5akaj2etaFKoyeAY8QMgSD/OTbSelanjutnya, buat nama Bind DN readonly dengan perintah berikut:
nano readonly-user.ldifTambahkan baris berikut:
dn:cn=readonly,ou=people,dc=example,dc=comobjectClass:organizationRoleobjectClass:simpleSecurityObjectcn:readonlyuserPassword:{SSHA}DhjyJN5akaj2etaFKoyeAY8QMgSD/OTbdescription:Mengikat pengguna DN untuk Operasi LDAPSimpan dan tutup file setelah selesai kemudian tambahkan pengguna BIND ke database dengan perintah berikut:
ldapadd -Y EXTERNAL -H ldapi:/// -f readonly-user.ldifAnda akan mendapatkan output berikut:
Otentikasi SASL/EKSTERNAL dimulaiNama pengguna SASL:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0menambahkan entri baru "cn=readonly,ou=people,dc=example,dc=com "Selanjutnya, verifikasi Bind DN ACL dengan perintah berikut:
ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=config '(olcDatabase={1}mdb)' olcAccessAnda akan mendapatkan output berikut:
dn:olcDatabase={1}mdb,cn=configolcAccess:{0}to attrs=userPassword,shadowLastChange,shadowExpire dengan tulisan sendiri oleh auth anonim oleh dn.subtree="gidNumber=0+uidNumber=0,cn=peercred,cn=ext ernal,cn=auth" dikelola oleh dn.exact="cn=readonly,ou=people,dc=example,dc=com" dibaca oleh * noneolcAccess:{1}ke dn.exact="cn=readonly,ou=people,dc=example,dc=com" oleh dn.subt ree="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" dikelola oleh * non eolcAccess:{2} ke dn.subtree="dc=example,dc=com" oleh dn.subtree="gidNumber=0+uid Number=0,cn=peercred,cn=external,cn=auth" dikelola oleh pengguna dibaca oleh * noneInstal dan Konfigurasi phpLDAPadmin
Secara default, paket phpLDAPadmin tersedia di repositori default Ubuntu 20.04. Anda dapat menginstalnya dengan menjalankan perintah berikut:
apt-get install phpldapadmin -ySetelah menginstal phpLDAPadmin, Anda perlu mengonfigurasi phpLDAPadmin dan menentukan informasi domain Anda. Anda dapat melakukannya dengan mengedit file /etc/phpldapadmin/config.php:
nano /etc/phpldapadmin/config.phpUbah baris berikut:
$servers->setValue('server','name','My LDAP Server');$servers->setValue('server','host','69.87.216.102');$servers->; setValue('server','base',array('dc=example,dc=com'));$servers->setValue('login','auth_type','session');$servers->setValue(' login','bind_id','cn=admin,dc=example,dc=com');$servers->setValue('auto_number','min',array('uidNumber'=>10000,'gidNumber'=> 10000));Simpan dan tutup file setelah Anda selesai.
Konfigurasi Apache untuk phpLDAPadmin
File konfigurasi default phpLDAPadmin untuk Apache terletak di /etc/apache2/conf-available/phpldapadmin.conf. Jangan membuat perubahan apa pun dan gunakan setelan default.
Selanjutnya, nonaktifkan file konfigurasi virtual host Apache default dan mulai ulang layanan Apache untuk menerapkan perubahan:
a2dissite 000-default.conf
systemctl restart apache2Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Mengakses UI Web phpLDAPadmin
Sekarang, buka browser web Anda dan akses phpLDAPadmin menggunakan URL http://your-server-ip/phpldapadmin . Anda akan melihat layar berikut:
Sekarang, klik login tombol. Anda akan melihat layar login phpLDAPadmin:
Berikan DN login Anda, kata sandi dan klik Otentikasi tombol. Anda akan melihat dasbor phpLDAPadmin di layar berikut:
Kesimpulan
Selamat! Anda telah berhasil menginstal dan mengkonfigurasi phpLDAPadmin di server Ubuntu 20.04. Sekarang Anda dapat mengelola server LDAP dan melakukan beberapa tugas termasuk, menambahkan unit organisasi, grup, dan pengguna dengan UI web phpLDAPadmin. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.
Ubuntu