Konfigurasikan SSSD untuk Otentikasi OpenLDAP di Ubuntu 18.04

Dalam panduan ini, kita akan belajar cara mengkonfigurasi SSSD untuk Otentikasi OpenLDAP di Ubuntu 18.04. SSSD adalah singkatan dari System Security Services Daemon. Ini menyediakan akses ke identitas lokal atau jarak jauh dan sumber daya otentikasi melalui kerangka kerja umum yang dapat menyediakan caching dan dukungan offline ke sistem. Ini juga menyediakan beberapa interface, termasuk modul NSS dan PAM atau interface D-Bus.

Sebelum Anda dapat melanjutkan, pastikan Anda menjalankan server OpenLDAP. Anda dapat mengikuti tautan di bawah ini untuk mempelajari cara mengatur server OpenLDAP di CentOS 8.

Instal dan Siapkan OpenLDAP di CentOS 8

Konfigurasikan SSSD untuk Otentikasi OpenLDAP di Ubuntu 18.04

Dalam demo ini, kita akan mengatur SSSD di desktop Ubuntu 18.04.

Perbarui Sistem Anda

apt update

Instal SSSD dan Paket yang Diperlukan

Jalankan perintah di bawah ini untuk menginstal SSSD di Ubuntu 18.04 dan paket lain yang diperlukan.

apt install sssd libpam-sss libnss-sss

Konfigurasikan SSSD di Ubuntu 18.04

Setelah instalasi selesai, lanjutkan untuk mengkonfigurasi SSSD untuk otentikasi OpenLDAP.

Buat file konfigurasi SSSD (Tidak dibuat secara default) dengan konten berikut;

vim /etc/sssd/sssd.conf
[sssd] services = nss, pam config_file_version = 2 domains = default [sudo] [nss] [pam] offline_credentials_expiration = 60 [domain/default] ldap_id_use_start_tls = True cache_credentials = True ldap_search_base = dc=ldapmaster,dc=kifarunix-demo,dc=com id_provider = ldap auth_provider = ldap chpass_provider = ldap access_provider = ldap ldap_uri = ldap://ldapmaster.kifarunix-demo.com ldap_default_bind_dn = cn=readonly,ou=system,dc=ldapmaster,dc=kifarunix-demo,dc=com ldap_default_authtok = [email protected] ldap_tls_reqcert = demand ldap_tls_cacert = /etc/ssl/certs/cacert.crt ldap_tls_cacertdir = /etc/ssl/certs ldap_search_timeout = 50 ldap_network_timeout = 60 ldap_access_order = filter ldap_access_filter = (objectClass=posixAccount) 

Ganti nilai dari baris yang disorot di atas sesuai dengan pengaturan OpenLDAP Anda.

Baca lebih lanjut tentang opsi konfigurasi di man sssd.conf.

Simpan file dan keluar.

Instal Sertifikat CA Server OpenLDAP

Untuk melakukan otentikasi, SSSD mengharuskan saluran komunikasi dienkripsi. Ini berarti bahwa server LDAP harus dikonfigurasi untuk berjalan di SSL atau TLS dengan kepercayaan sertifikat yang valid.

Instal sertifikat CA server LDAP, di bawah file yang ditentukan oleh direktif, ldap_tls_cacert,/etc/ssl/certs/cacert.crt.

Untuk mengdownload sertifikat CA dari server LDAP, jalankan perintah di bawah ini;

openssl s_client -connect ldapmaster.kifarunix-demo.com:636 -showcerts < /dev/null | openssl x509 -text | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p'

Copy bagian sertifikat;

-----BEGIN CERTIFICATE----- MIIDzzCCAregAwIBAgIUMJkYu/S+fQbyGjUOLsMoar6owfowDQYJKoZIhvcNAQEL BQAwdzELMAkGA1UEBhMCS0UxDDAKBgNVBAgMA05haTEMMAoGA1UEBwwDTmFpMRcw...... J4VrJYImrnvTNiDGcrXVQhKY2amBPb6g1Mwp5DiHPplvOF63F+Uzx9NFG1DhHMTq kqkfQw96SLItvsAXpeosfYkH6uEG36svqAJ6rzxZcJzl3OTrUZnFX3OOsmFeHupC Qxv7gjfE5jqdD6iQR0cohGLpaA== -----END CERTIFICATE-----

Tempel di file, /etc/ssl/certs/cacert.crt.

vim /etc/ssl/certs/cacert.crt
-----BEGIN CERTIFICATE----- MIIDzzCCAregAwIBAgIUMJkYu/S+fQbyGjUOLsMoar6owfowDQYJKoZIhvcNAQEL BQAwdzELMAkGA1UEBhMCS0UxDDAKBgNVBAgMA05haTEMMAoGA1UEBwwDTmFpMRcw...... J4VrJYImrnvTNiDGcrXVQhKY2amBPb6g1Mwp5DiHPplvOF63F+Uzx9NFG1DhHMTq kqkfQw96SLItvsAXpeosfYkH6uEG36svqAJ6rzxZcJzl3OTrUZnFX3OOsmFeHupC Qxv7gjfE5jqdD6iQR0cohGLpaA== -----END CERTIFICATE-----

Selanjutnya, buka /etc/ldap/ldap.confdan ganti nilaiTLS_CACERT dengan jalur ke sertifikat di atas.

vim /etc/ldap/ldap.conf
... # TLS certificates (needed for GnuTLS) #TLS_CACERT /etc/ssl/certs/ca-certificates.crt TLS_CACERT /etc/ssl/certs/cacert.crt

Simpan dan tutup file konfigurasi.

Setelah itu, tetapkan akses baca/tulis user root ke  /etc/sssd/.

chmod 600 -R /etc/sssd

Mulai ulang service SSD

systemctl restart sssd

Periksa status SSSD untuk memastikannya berjalan.

systemctl status sssd
● sssd.service - System Security Services Daemon Loaded: loaded (/lib/systemd/system/sssd.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2020-01-17 14:27:51 EAT; 6s ago Main PID: 3033 (sssd) Tasks: 4 (limit: 2315) CGroup: /system.slice/sssd.service ├─3033 /usr/sbin/sssd -i --logger=files ├─3034 /usr/lib/x86_64-linux-gnu/sssd/sssd_be --domain default --uid 0 --gid 0 --logger=files ├─3035 /usr/lib/x86_64-linux-gnu/sssd/sssd_nss --uid 0 --gid 0 --logger=files └─3036 /usr/lib/x86_64-linux-gnu/sssd/sssd_pam --uid 0 --gid 0 --logger=files Jan 17 14:27:50 amos systemd[1]: Starting System Security Services Daemon... Jan 17 14:27:51 amos sssd[3033]: Starting up Jan 17 14:27:51 amos sssd[be[3034]: Starting up Jan 17 14:27:51 amos sssd[3036]: Starting up Jan 17 14:27:51 amos sssd[3035]: Starting up Jan 17 14:27:51 amos systemd[1]: Started System Security Services Daemon. 

Konfigurasikan Pembuatan Direktori Rumah Otomatis

Untuk memastikan bahwa direktori home user dibuat secara otomatis pada login pertama, Anda perlu mengkonfigurasi modul PAM ( pam_mkhomedir.so) seperti yang ditunjukkan di bawah ini.

Buka  /etc/pam.d/common-session file konfigurasi dan edit adalah iklan berikut;

vim /etc/pam.d/common-session

Tambahkan baris di bawah tepat di bawah baris,  session optional pam_sss.so.

session required pam_mkhomedir.so skel=/etc/skel/ umask=0022
... # pam_umask module will set the umask according to the system default in # /etc/login.defs and user settings, solving the problem of different # umask settings with different shells, display managers, remote sessions etc. # See "man pam_umask". session optional pam_umask.so # and here are more per-package modules (the "Additional" block) session required pam_unix.so session optional pam_sss.so session required pam_mkhomedir.so skel=/etc/skel/ umask=0022 session optional pam_systemd.so # end of pam-auth-update config... 

Simpan dan keluar dari file konfigurasi.

Verifikasi otentikasi OpenLDAP melalui SSH

Anda sekarang dapat memverifikasi apakah Anda dapat masuk sebagai user LDAP ke sistem Ubuntu 18.04 Anda melalui SSH.

Perhatikan bahwa user yang digunakan di sini sudah ditambahkan ke server OpenLDAP kami.

ssh [email protected]
[email protected]'s password: Creating directory '/home/johndoe'. Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.18.0-15-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 450 packages can be updated. 223 updates are security updates. Your Hardware Enablement Stack (HWE) is supported until April 2023. programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. [email protected]:~$ pwd /home/johndoe 

Verifikasi otentikasi OpenLDAP melalui GUI

Dalam demo ini, kami menggunakan manajer tampilan GDM Ubuntu 18.04 default.

Pada interface masuk, klik Tidak terdaftar untuk memasukkan nama user dan password OpenLDAP Anda.

Setelah login berhasil, direktori home Anda akan dibuat secara otomatis dan boom, Anda mendarat di desktop Anda.

Itu saja tentang cara mengkonfigurasi SSSD untuk Otentikasi OpenLDAP di Ubuntu 18.04.

Anda dapat memeriksa tutorial kami yang lain di OpenLDAP dengan mengikuti tautan di bawah ini;

Instal phpLDAPadmin di CentOS 8

Konfigurasikan Otentikasi OpenLDAP ownCloud

Konfigurasikan Otentikasi Berbasis Host OpenLDAP

Cara Membuat Grup Anggota OpenLDAP