Gunakan petunjuk dalam artikel ini untuk menghubungkan klien LDAP Anda ke layanan LDAP Aman.
PENTING:
- Pastikan Anda telah membaca dokumentasi vendor
Detail tentang cara menghubungkan klien LDAP ke layanan LDAP Aman dalam artikel ini hanya sebagai referensi, dan dapat berubah sewaktu-waktu. Selain petunjuk bantuan ini, pastikan Anda telah membaca dokumentasi vendor untuk mengetahui langkah-langkah cara menghubungkan klien ke layanan LDAP Aman yang terbaru. - Sebelum memulai
Sebelum menggunakan petunjuk ini, pastikan Anda telah menambahkan klien ke layanan LDAP Aman, mengonfigurasi izin akses, mendownload kunci dan sertifikat klien, serta secara opsional membuat kredensial akses. - Pengujian konektivitas
(Opsional) sebelum memulai langkah-langkah ini, sebaiknya lakukan uji konektivitas menggunakan alat sederhana seperti ldapsearch, ADSI, dan ldp.exe. Anda juga dapat menggunakan alat ini untuk memecahkan masalah jika terjadi error saat mencoba menghubungkan klien LDAP Anda ke layanan. Untuk mengetahui petunjuknya, lihat Pengujian konektivitas LDAP aman. - Cara menyelesaikan langkah penyiapan
Setelah menghubungkan klien LDAP dengan mengikuti petunjuk di halaman ini, Anda harus menyelesaikan penyiapan klien LDAP dengan mengalihkan status layanan ke Aktif di konsol Google Admin. Untuk mengetahui petunjuknya, lihat 5. Mengalihkan klien LDAP ke Aktif.
Cakupan artikel ini
Artikel ini mencakup bagian-bagian berikut:
- Petunjuk konfigurasi dasar—Berisi petunjuk umum untuk menghubungkan klien LDAP yang tidak tercantum dalam artikel ini.
- Petunjuk konfigurasi untuk klien LDAP tertentu—Berisi petunjuk untuk menghubungkan klien LDAP tertentu (seperti Atlassian Jira atau OpenVPN) ke layanan LDAP Aman. Langkah-langkahnya mungkin berbeda bergantung pada jenis klien.
- Petunjuk konfigurasi untuk aplikasi Java—Berisi petunjuk umum untuk aplikasi berbasis Java yang menawarkan fungsi LDAP.
- Opsional: Menggunakan stunnel sebagai proxy—Bagian ini berisi petunjuk yang menjelaskan hal-hal lain yang perlu dipertimbangkan saat menghubungkan klien LDAP yang tidak mendukung sertifikat digital.
Petunjuk tersebut diberikan dengan asumsi bahwa file kunci dan sertifikat klien yang Anda download diberi nama ldap-client.key dan ldap-client.crt.
Petunjuk konfigurasi dasar
Bagian ini berisi petunjuk umum untuk menghubungkan klien LDAP ke layanan LDAP Aman. Jika klien LDAP Anda tidak tercantum dalam petunjuk di bawah, pastikan Anda membaca dokumentasi untuk aplikasi tersebut.
Catatan: Klien LDAP tertentu seperti Atlassian Jira dan SSSD melakukan pencarian pengguna untuk mendapatkan informasi selengkapnya tentang pengguna selama autentikasi. Guna memastikan autentikasi pengguna berfungsi dengan benar untuk klien LDAP tersebut, Anda perlu mengaktifkan izin Membaca informasi pengguna untuk semua unit organisasi yang mengaktifkan izin Memverifikasi kredensial pengguna. (Untuk mengetahui petunjuknya, lihat Mengonfigurasi izin akses.)
Untuk menghubungkan klien LDAP ke layanan LDAP Aman:
- Konfigurasikan klien LDAP dengan Cloud Directory sebagai server LDAP.
- Upload sertifikat ke klien LDAP.
Layanan LDAP Aman menggunakan sertifikat klien TLS sebagai mekanisme autentikasi utama. Untuk memulai proses upload sertifikat ke klien LDAP, buka setelan direktori atau autentikasi klien LDAP, lalu masukkan detail dari tabel di bawah.Catatan: Untuk detail selengkapnya tentang cara dan lokasi upload sertifikat TLS, lihat dokumentasi vendor Anda.
Gunakan tabel berikut untuk melihat informasi tentang koneksi dasar:
Nama host |
ldap.google.com |
Port |
389 untuk LDAP dengan StartTLS diaktifkan |
Base DN |
Domain Anda dalam format DN. Misalnya: dc=example,dc=com untuk example.com |
Nama Pengguna dan Sandi |
Selain mengautentikasi dengan sertifikat, beberapa klien LDAP mengharuskan Anda memasukkan nama pengguna dan sandi. Jika kolom nama pengguna dan sandi tidak wajib diisi, Anda dapat melewati langkah ini. Buat nama pengguna dan sandi di konsol Google Admin. Untuk mengetahui petunjuknya, lihat Membuat kredensial akses. |
File kunci dan sertifikat klien |
Gunakan file sertifikat dan kunci yang didownload dari konsol Google Admin. Jika klien LDAP tidak memberikan cara mengautentikasi dengan sertifikat klien, lihat Menggunakan stunnel sebagai proxy. PENTING: Beberapa klien LDAP, seperti Apache Directory Studio, tidak mendukung upload sertifikat digital. Untuk menangani skenario ini, lihat Menggunakan stunnel sebagai proxy. |
Petunjuk konfigurasi untuk klien LDAP tertentu
ADSI Edit (Windows)Ikuti langkah-langkah berikut:
- Ikuti langkah 1–11 di ldp.exe (Windows) untuk menginstal sertifikat klien.
- Buka Action > Connect to…
- Masukkan setelan koneksi berikut:
Name: Ketik nama koneksi Anda, seperti Google LDAP.
Connection Point: “Select or type a Distinguished Name or Naming Context”
Masukkan nama domain Anda dalam format DN (misalnya, dc=example,dc=com untuk example.com).
Computer: “Select or type a domain or server”
ldap.google.com
Use SSL-based Encryption: Dicentang
- Klik Advanced..., lalu masukkan detail berikut:
Specify credentials: Dicentang
Username: Nama pengguna kredensial akses dari konsol Admin
Password: Sandi kredensial akses dari konsol Admin
Port Number: 636
Protocol: LDAP
Simple bind authentication: Dicentang
- Klik OK, lalu klik OK lagi.
- Jika konektivitas berhasil, konten active directory di base DN akan ditampilkan di panel sebelah kanan.
Untuk menggunakan Apache Directory Studio, buat koneksi melalui stunnel dan gunakan kredensial akses (nama pengguna dan sandi) yang dibuat di konsol Google Admin. Dengan asumsi kredensial sudah dimasukkan dan stunnel menunggu koneksi di localhost port 1389, ikuti langkah-langkah berikut:
- Klik File > New…
- Pilih LDAP Browser > LDAP Connection.
- Klik Next.
- Masukkan parameter koneksi:
Connection name: Pilih nama, misalnyaGoogle LDAP
Hostname: localhost
Port: 1389 (atau port listen/accept stunnel)
Encryption method: Tidak ada enkripsi (Catatan: Jika stunnel berjalan dari jarak jauh, sebaiknya gunakan enkripsi antara stunnel dan klien.)
- Klik Next.
- Masukkan parameter autentikasi:
Authentication Method: Simple Authentication
Bind DN or user: Nama pengguna kredensial akses dari konsol Admin
Bind password: Sandi kredensial akses dari konsol Admin
- Klik Next.
- Masukkan base DN.
Ini adalah nama domain dalam format DN (dc=example,dc=com untuk example.com). - Klik Finish.
Atlassian Jira melakukan pencarian pengguna untuk mendapatkan informasi selengkapnya tentang pengguna selama autentikasi. Guna memastikan autentikasi pengguna berfungsi dengan benar untuk klien LDAP ini, Anda perlu mengaktifkan izin Membaca informasi pengguna dan Membaca informasi grup untuk semua unit organisasi yang mengaktifkan izin Memverifikasi kredensial pengguna. (Untuk mengetahui petunjuknya, lihat Mengonfigurasi izin akses.)
Penting: Penggunaan instruksi berikut berpotensi mengekspos keystorePassword ke pengguna dan file log. Lakukan tindakan pencegahan untuk menghindari akses tidak sah ke shell lokal, logfile, dan konsol Google Admin. Sebagai alternatif dari petunjuk berikut, gunakan metode stunnel4 (lihat Opsional: Menggunakan stunnel sebagai proxy).
Catatan: Petunjuk berikut berasumsi bahwa Jira sudah diinstal pada /opt/atlassian/jira.
Untuk menghubungkan klien Atlassian Jira ke layanan LDAP Aman:
- Salin sertifikat dan kunci ke server Jira. (Ini adalah sertifikat yang dibuat di konsol Google Admin saat menambahkan klien LDAP ke layanan LDAP Aman.)
Misalnya:
$ scp ldap-client.key user@jira-server:
- Konversikan sertifikat dan kunci ke format keystore Java. Anda akan diminta untuk memberikan sandi sepanjang proses ini. Untuk mempermudah prosesnya, pilih sandi yang aman dan gunakan sandi yang sama untuk semua permintaan.
$ openssl pkcs12 -export -out jira-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.key
$ sudo /opt/atlassian/jira/jre/bin/keytool -v -importkeystore -srckeystore jira-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore /opt/atlassian/jira/jira-ldap.jks -deststoretype JKS
- Konfigurasikan Jira agar menggunakan keystore yang baru dibuat. Ikuti petunjuknya di sini untuk menambahkan opsi:
“-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password”
Di Linux:- Edit /opt/atlassian/jira/bin/setenv.sh.
- Temukan setelan JVM_SUPPORT_RECOMMENDED_ARGS.
- Tambahkan “-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password”, dan ganti “password” dengan sandi yang dipilih di atas.
- Mulai ulang Jira.
$ /opt/atlassian/jira/bin/stop-jira.sh
$ /opt/atlassian/jira/bin/start-jira.sh
- Login ke antarmuka web Jira sebagai administrator.
- Buka Settings > User management. (Untuk setelan, buka ikon roda gigi di kanan atas.)
- Klik User Directories.
- Klik Add Directory.
- Pilih LDAP sebagai jenisnya.
- Klik Next.
- Masukkan informasi berikut:
Name
Google Secure LDAP
Directory type
OpenLDAP
Hostname
ldap.google.com
Port
636
Use SSL
Dicentang
Username
Buat nama pengguna dan sandi di konsol Google Admin. Untuk mengetahui petunjuknya, lihat Membuat kredensial akses.
Password
Buat nama pengguna dan sandi di konsol Google Admin. Untuk mengetahui petunjuknya, lihat Membuat kredensial akses.
Base DN
Nama domain Anda dalam format DN. (misalnya, dc=example,dc=com untuk example.com)
Additional User DN
Optional. “ou=Users”
Additional Group DN
Optional. “ou=Groups”
LDAP Permissions
Read only
Advanced Settings
Tidak Diubah
User Schema Settings >
User Name AttributegoogleUid
User Schema Settings >
User Name RDN Attributeuid
Group Schema Settings >
Group Object ClassgroupOfNames
Group Schema Settings >
Group Object Filter(objectClass=groupOfNames)
Membership Schema Settings >
Group Members Attributemember
Membership Schema Settings >
Use the User Membership AttributeDicentang - Berikan peran ke grup.
Sebelum diizinkan login oleh Atlassian Jira, pengguna harus menjadi anggota grup yang diberi akses ke Jira.
Untuk memberikan peran ke grup:- Buka Settings > Applications > Application access.
- Di kotak teks Select group, masukkan nama grup Google yang ingin diberi akses ke Jira.
Untuk mengetahui petunjuk tentang cara menghubungkan CloudBees Core ke layanan LDAP Aman, lihat Mengonfigurasi CloudBees Core dengan LDAP Aman Google Cloud Identity.
Ikuti langkah-langkah berikut:
- Instal dan konfigurasikan FreeRADIUS di /etc/freeradius/3.0/.
Setelah FreeRADIUS diinstal, Anda dapat menambahkan konfigurasi LDAP dengan menginstal plugin freeradius-ldap.
$ sudo apt-get install freeradius freeradius-ldap
- Salin file kunci dan sertifikat klien LDAP masing-masing ke /etc/freeradius/3.0/certs/ldap-client.key dan /etc/freeradius/3.0/certs/ldap-client.crt.
$ chown freeradius:freeradius
/etc/freeradius/3.0/certs/ldap-client.*
$ chmod 640 /etc/freeradius/3.0/certs/ldap-client.*
- Aktifkan modul LDAP.
$ cd /etc/freeradius/3.0/mods-enabled/
$ ln -s ../mods-available/ldap ldap
- Edit /etc/freeradius/3.0/mods-available/ldap.
- ldap->server = 'ldaps://ldap.google.com:636'
- identity = nama pengguna dari kredensial aplikasi
- password = sandi dari kredensial aplikasi
- base_dn = ‘dc=domain,dc=com’
- tls->start_tls = no
- tls->certificate_file = /etc/freeradius/3.0/certs/ldap-client.cer
- tls->private_key_file = /etc/freeradius/3.0/certs/ldap-client.key
- tls->require_cert = ‘allow’
- Beri komentar semua kolom di breadcrumb yang mewakili bagian 'ldap -> post-auth -> update'
- Edit /etc/freeradius/3.0/sites-available/default.
Tindakan ini akan mengubah sambungan klien FreeRadius. Jika tidak menggunakan klien default, pastikan Anda memperbarui klien terkait (inner-tunnel atau klien kustom apa pun) yang telah dikonfigurasi.
- Ubah bagian authorize untuk menambahkan blok berikut di bagian bawah setelah pernyataan protokol autentikasi sandi (PAP):
if (User-Password) {
update control {
Auth-Type := ldap
}
}
- Di bagian authorize, aktifkan LDAP dengan menghapus tanda ‘-’ di depannya.
#
# Modul ldap membaca sandi dari database LDAP.
ldap
- Ubah bagian authenticate dengan mengedit blok Auth-Type LDAP sebagai berikut:
# Auth-Type LDAP {
ldap
# }
- Ubah bagian authenticate dengan mengedit blok Auth-Type PAP sebagai berikut:
Auth-Type PAP {
# pap
ldap
}
- Ubah bagian authorize untuk menambahkan blok berikut di bagian bawah setelah pernyataan protokol autentikasi sandi (PAP):
Untuk mengetahui petunjuk tentang cara menghubungkan GitLab ke layanan LDAP Aman, lihat Mengonfigurasi Google Secure LDAP untuk GitLab.
Untuk mengetahui petunjuk tentang cara menghubungkan Itopia/Ubuntu ke layanan LDAP Aman, lihat Mengonfigurasi LDAP Google Cloud Identity di Ubuntu 16.04 untuk login pengguna.
Ikuti langkah-langkah berikut:
- Di server Web Ivanti, buka OpenLDAPAuthenticationConfiguration.xml atau OpenLDAPSSLAuthenticationConfiguration.xml dalam editor teks di kedua folder berikut:
C:\ProgramData\LANDesk\ServiceDesk\servicedesk.Framework dan C:\ProgramData\LANDesk\ServiceDesk\servicedesk.WebAccess (ganti servicedesk dengan nama instance) - Perbarui nilai <Server> menjadi ldap.google.com.
- Perbarui nilai <Port> menjadi port 3268 untuk teks biasa dengan StartTLS diaktifkan dan 3269 untuk Port SSL/TLS (defaultnya adalah 389 untuk port teks biasa atau 636 untuk port SSL/TLS).
- Setel nilai <TestDN> menjadi nama domain Anda dalam format DN. (misalnya, dc=example,dc=com untuk example.com).
- Untuk ..ProgramData\LANDesk\ServiceDesk\ServiceDesk.Framework\tps.config, dan ..ProgramData\LANDesk\ServiceDesk\WebAccess\tps.config, tambahkan baris:
<add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPLogon.OpenLDAPAuthenticationProvider" />
atau baris:
<add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPSSLLogon.OpenLDAPSSLAuthenticationProvider" />
- Di Configuration Center Ivanti, buka instance yang diperlukan.
- Di samping aplikasi Service Desk Framework, klik Edit.
Dialog Edit Application untuk Service Desk Framework akan muncul. - Di grup Configuration parameters, pilih Explicit only dalam daftar Logon policy, lalu klik OK.
- Di samping aplikasi Web Access, klik Edit.
Dialog Edit Application untuk Web Access akan muncul. - Di grup Configuration parameters, pilih Explicit only dalam daftar Logon policy, lalu klik OK.
Saat login, gunakan sandi jaringan milik pengguna domain terkait.
Logging pengecualian untuk autentikasi server LDAP
Jika mengalami masalah saat mengonfigurasi autentikasi server LDAP, Anda dapat mengaktifkan logging pengecualian untuk membantu Anda mengidentifikasi masalah. Secara default, opsi ini dinonaktifkan, jadi sebaiknya Anda menonaktifkan lagi logging pengecualian setelah menyelesaikan penyelidikan.
Untuk mengaktifkan logging pengecualian untuk autentikasi Server LDAP:
- Buka file XML konfigurasi autentikasi yang sesuai dalam editor teks:
DirectoryServiceAuthenticationConfiguration.xml, OpenLDAPAuthenticationConfiguration.xml, atau OpenLDAPSSLAuthenticationConfiguration.xml - Ubah baris:
<ShowExceptions>false</ShowExceptions>
menjadi
<ShowExceptions>true</ShowExceptions>
- Simpan perubahan.
Ikuti langkah-langkah berikut:
- Konversikan file sertifikat dan kunci menjadi satu file berformat PKCS12. Di command prompt, masukkan perintah berikut:
Jika Anda menjalankan macOS atau Linux, gunakan perintah berikut:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Masukkan sandi untuk mengenkripsi file output.
Jika Anda menjalankan Windows, gunakan perintah berikut:
$ certutil -mergepfx ldap-client.crt ldap-client.p12
Penting: Kedua file (<CERT_FILE>.crt dan <CERT_FILE>.key) harus berada di direktori yang sama. Selain itu, pastikan key dan crt memiliki nama identik (dengan ekstensi yang berbeda). Dalam contoh ini, kami menggunakan nama ldap-client.crt dan ldap-client.key. - Buka Control Panel.
- Di kotak penelusuran, telusuri “certificate", lalu klik Manage user certificates.
- Buka Action > All Tasks > Import…
- Pilih Current User, lalu klik Next.
- Klik Browse…
- Pada menu drop-down file type di pojok kanan bawah kotak dialog, pilih Personal Information Exchange (*.pfx;*.p12).
- Pilih file ldap-client.p12 dari langkah 2, klik Open, lalu klik Next.
- Masukkan sandi dari langkah 2, lalu klik Next.
- Pilih penyimpanan sertifikat Personal, klik Next, lalu klik Finish.
- Jalankan Ldp.exe.
- Buka Connection > Connect...
- Masukkan detail koneksi berikut:
Server: ldap.google.com
Port: 636
Connectionless: Tidak dicentang
SSL: Dicentang
- Klik OK.
- Buka View > Tree.
- Masukkan base DN. Ini adalah nama domain Anda dalam format DN. (misalnya, dc=example,dc=com untuk example.com).
- Klik OK.
- Jika konektivitas berhasil, LDP.exe akan menampilkan konten Active Directory—seperti semua atribut yang ada di base DN—di panel sebelah kanan.
Untuk mengetahui petunjuk tentang cara menghubungkan Netgate/pfSense ke layanan LDAP Aman, lihat Mengonfigurasi Google Cloud Identity sebagai Sumber Autentikasi.
Untuk mengakses direktori LDAP dari command line, Anda dapat menggunakan perintah OpenLDAP ldapsearch.
Dengan asumsi bahwa nama file sertifikat dan kunci klien adalah ldap-client.crt dan ldap-client.key, domain Anda adalah example.com, serta nama pengguna adalah jajang:
$ LDAPTLS_CERT=ldap-client.crt LDAPTLS_KEY=ldap-client.key ldapsearch -H ldaps://ldap.google.com -b dc=example,dc=com '(uid=jajang)'
Tindakan ini menetapkan variabel lingkungan yang relevan untuk diarahkan ke kunci klien. Anda dapat mengganti opsi ldapsearch lainnya dengan filter yang diinginkan, atribut yang diminta, dan sebagainya. Untuk mengetahui detail lainnya, lihat halaman man ldapsearch (“man ldapsearch”).
Ikuti langkah-langkah berikut:
- Konversikan file sertifikat dan kunci menjadi satu file berformat PKCS12. Di command prompt, masukkan perintah berikut:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Masukkan sandi Anda untuk mengenkripsi file output.
- Klik di pojok kanan atas panel menu, lalu ketik Keychain Access.
- Buka aplikasi Keychain Access, dan dari daftar di sebelah kiri, klik System.
- Klik opsi File pada panel menu di kiri atas, lalu pilih Import Items.
- Jelajahi lokasi dengan ldap-client.p12 yang dihasilkan, pilih ldap-client.p12, lalu klik Open.
Jika diminta, masukkan sandi Anda.
Sertifikat dengan nama LDAP Client kini akan muncul di daftar sertifikat System Keychain. - Klik tanda panah di sebelah sertifikat LDAP Client. Kunci pribadi akan muncul di bawahnya.
- Klik dua kali kunci pribadi.
- Dari kotak dialog, pilih tab Access Control, lalu klik + di pojok kiri bawah.
-
Dari jendela yang terbuka, tekan Command+Shift+G untuk membuka jendela baru, lalu ganti teks yang ada dengan /usr/bin/ldapsearch.
-
Klik Go.
Tindakan ini akan membuka jendela dengan menyorot ldapsearch. -
Klik Add.
-
Klik Save Changes, lalu masukkan sandi jika diminta.
Sekarang Anda siap mengakses direktori LDAP dari command line menggunakan perintah OpenLDAP ldapsearch.
-
Dengan asumsi bahwa file ldap-client.p12 yang Anda impor ke keychain sebelumnya memiliki nama LDAP Client, domain Anda adalah example.com, serta nama pengguna adalah jajang, masukkan perintah berikut:
$ LDAPTLS_IDENTITY="LDAP Client" ldapsearch -H ldaps://ldap.google.com:636 -b dc=example,dc=com '(uid=jajang)'
Tindakan ini menetapkan variabel lingkungan yang relevan untuk diarahkan ke sertifikat klien yang diimpor. Anda dapat mengganti opsi ldapsearch lainnya dengan filter yang diinginkan, atribut yang diminta, dan sebagainya. Untuk mengetahui detail lainnya, lihat halaman man ldapsearch (man ldapsearch).
Ikuti langkah-langkah berikut:
- Jika diperlukan, instal dan konfigurasikan OpenVPN, atau jika sudah melakukannya, buka halaman setelan di OpenVPN.
Konfigurasi VPN umum tidak termasuk dalam cakupan artikel bantuan ini. Setelah VPN dikonfigurasi, Anda dapat menambahkan autentikasi dan otorisasi pengguna melalui LDAP. Khususnya, Anda harus menginstal plugin openvpn-auth-ldap.
$ sudo apt-get install openvpn openvpn-auth-ldap
- Salin file kunci dan sertifikat klien LDAP ke /etc/openvpn/ldap-client.key serta /etc/openvpn/ldap-client.crt.
- Buat file, /etc/openvpn/auth-ldap.conf, berisi yang berikut ini (dengan asumsi nama domain adalah example.com):
<LDAP>
URL ldaps://ldap.google.com:636 #
Timeout 15
TLSEnable false
TLSCACertDir /etc/ssl/certs
TLSCertFile /etc/openvpn/ldap-client.crt
TLSKeyFile /etc/openvpn/ldap-client.key
</LDAP>
<Authorization>
BaseDN "dc=example,dc=com"
SearchFilter "(uid=%u)" # (or choose your own LDAP filter for users)
RequireGroup false
</Authorization>
- Edit file konfigurasi OpenVPN, biasanya bernama /etc/openvpn/server.conf, atau yang serupa. Di bagian bawah file, tambahkan yang berikut ini:
plugin /usr/lib/openvpn/openvpn-auth-ldap.so /etc/openvpn/auth-ldap.conf
verify-client-cert optional
- Mulai ulang server OpenVPN.
$ sudo systemctl restart openvpn@server
- Konfigurasikan klien VPN agar menggunakan nama pengguna dan sandi milik pengguna tersebut. Misalnya, di konfigurasi klien OpenVPN, tambahkan auth-user-pass di akhir file konfigurasi klien OpenVPN, lalu mulai klien OpenVPN:
$ openvpn --config /path/to/client.conf
- Ikuti petunjuk untuk menggunakan stunnel sebagai proxy.
Untuk mengetahui petunjuk tentang cara menghubungkan OpenVPN Access Server ke layanan LDAP Aman, lihat Mengonfigurasi Google Secure LDAP dengan OpenVPN Access Server.
Untuk mengetahui petunjuk tentang cara menghubungkan PaperCut ke layanan LDAP Aman, lihat Cara menyinkronkan serta mengautentikasi pengguna Google Workspace dan Google Cloud Identity di PaperCut.
Untuk mengetahui petunjuk tentang cara menghubungkan Puppet Enterprise ke layanan LDAP Aman, lihat Google Cloud Directory untuk PE.
Penting: Sebelum memulai, pastikan Anda telah menginstal Softerra LDAP Browser dengan nomor versi 4.5 (4.5.19808.0) atau yang lebih baru. Lihat LDAP Browser 4.5.
Ikuti langkah-langkah berikut:
- Konversikan file sertifikat dan kunci menjadi satu file berformat PKCS12. Di command prompt, masukkan perintah berikut:
Jika Anda menjalankan macOS atau Linux, gunakan perintah berikut:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Masukkan sandi untuk mengenkripsi file output.
Jika Anda menjalankan Windows, gunakan perintah berikut:
$ certutil -mergepfx ldap-client.crt ldap-client.p12
Penting: Kedua file (<CERT_FILE>.crt dan <CERT_FILE>.key) harus berada di direktori yang sama. Selain itu, pastikan key dan crt memiliki nama identik (dengan ekstensi yang berbeda). Dalam contoh ini, kami menggunakan nama ldap-client.crt dan ldap-client.key. - Di Softerra LDAP Browser, instal pasangan kunci.
- Buka Tools > Certificate Manager.
- Klik Import…
- Klik Next.
- Klik Browse…
- Pada menu drop-down File type di pojok kanan bawah kotak dialog, pilih Personal Information Exchange (*.pfx;*.p12).
- Pilih file ldap-client.p12 dari langkah 2 di atas.
- Klik Open, lalu klik Next.
- Masukkan sandi dari langkah 2 di atas, lalu klik Next.
- Pilih penyimpanan sertifikat Personal.
- Klik Next.
- Klik Finish.
- Tambahkan profil server.
- Buka File > New > New Profile…
- Masukkan nama untuk profil, seperti Google LDAP.
- Klik Next.
Masukkan detail berikut:
Host: ldap.google.com
Port: 636
Base DN: Nama domain Anda dalam format DN. (misalnya, dc=example,dc=com untuk example.com)
Use secure connection (SSL): Dicentang
- Klik Next.
- Pilih External (SSL Certificate).
- Klik Next.
- Klik Finish.
Untuk mengetahui petunjuk tentang cara menghubungkan Sophos Mobile ke layanan LDAP Aman, lihat Menghubungkan Sophos Mobile ke Google Cloud Identity/Google Cloud Directory menggunakan LDAP Aman.
Saat menghubungkan Splunk ke layanan LDAP aman, pastikan Anda menggunakan Splunk versi 8.1.4 atau versi yang lebih baru. Jika menggunakan Splunk versi lama seperti versi 8.1.3, server LDAP mungkin menerima kueri LDAP berlebih, yang dapat menyebabkan kuota LDAP Anda cepat habis. Untuk informasi lebih lanjut tentang masalah dengan Splunk versi 8.1.3, lihat Masalah umum Splunk.
Ikuti langkah-langkah berikut:
- Salin file kunci dan sertifikat klien LDAP ke /home/splunk/splunkadmin/etc/openldap/certs/ldap-client.key dan /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.crt.
$ cat /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.crt /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.key > /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
$ sudo chown $(splunkuser):$(splunkuser) /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.*
$ sudo chmod 644 /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.*
- Edit file ldap.conf untuk menambahkan konfigurasi berikut:
ssl start_tls
TLS_REQCERT never
TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap.pem
TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap.pem - Tambahkan konfigurasi berikut id file /home/splunkadmin/.ldaprc pengguna:
TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
- Tambahkan strategi LDAP menggunakan UI web Splunk. Masukkan detail berikut, lalu klik Save:
Name |
Google Secure LDAP |
Host |
ldap.google.com |
Port |
636 |
SSL enabled |
Dicentang |
Connection order |
1 |
Bind DN |
Masukkan kredensial akses yang Anda buat di konsol Google Admin. |
Bind DN password |
Masukkan kredensial akses yang Anda buat di konsol Google Admin. |
Base DN |
Nama domain Anda dalam format DN (misalnya, dc=example,dc=com untuk domain, example.com) |
User base filter |
Masukkan User base filter untuk kelas objek tempat Anda ingin memfilter pengguna. |
User name attribute |
uid |
Real name attribute |
displayname |
Email attribute |
|
Group mapping attribute |
dn |
Group base DN |
Nama domain Anda dalam format DN (misalnya, ou=Groups,dc=example,dc=com untuk domain, example.com) |
Static group search filter |
Masukkan Static group search filter untuk kelas objek tempat Anda ingin memfilter grup statis. |
Group name attribute |
cn |
Static member attribute |
member |
SSSD melakukan pencarian untuk mendapatkan informasi lainnya tentang pengguna selama autentikasi. Guna memastikan autentikasi pengguna berfungsi dengan benar untuk klien LDAP ini, Anda perlu mengaktifkan izin Membaca informasi pengguna dan Membaca informasi grup untuk semua unit organisasi yang mengaktifkan izin Memverifikasi kredensial pengguna. (Untuk mengetahui petunjuknya, lihat Mengonfigurasi izin akses.)
Untuk menghubungkan klien SSSD di Red Hat 8 atau CentOS 8 ke layanan LDAP Aman:
- Tambahkan klien SSSD ke layanan LDAP Aman:
- Dari konsol Google Admin, buka Aplikasi > LDAP > TAMBAHKAN KLIEN.
Pastikan Anda login menggunakan akun perusahaan, bukan akun Gmail pribadi. - Masukkan detail Klien, lalu klik LANJUTKAN.
- Konfigurasikan Izin akses:
Verifikasi kredensial pengguna—Seluruh domain
Baca informasi pengguna—Seluruh domain
Baca informasi grup—Aktif - Klik TAMBAHKAN KLIEN LDAP.
- Download sertifikat yang dibuat.
- Klik LANJUTKAN KE DETAIL KLIEN.
- Ubah status Layanan ke AKTIF.
- Dari konsol Google Admin, buka Aplikasi > LDAP > TAMBAHKAN KLIEN.
- Instal dependensi:
dnf install openldap-clients sssd-ldap
install -d --mode=700 --owner=sssd --group=root /etc/sssd/ldap
ekstrak file .zip sertifikat serta salin file .crt dan .key ke /etc/sssd/ldap
- (Opsional) Uji dengan ldapsearch:
LDAPTLS_REQCERT=never \
LDAPTLS_KEY=Google.key \
LDAPTLS_CERT=Google.crt \
ldapsearch -H ldaps://ldap.google.com:636/ \
-b dc=example,dc=com \
-D usertoverify@example.com \
-W \
'(mail=usertoverify@example.com)' \
mail dn
Masukkan sandi Google pengguna jika diminta.
Catatan: Lisensi Google Workspace Enterprise atau Cloud Identity Premium harus ditetapkan kepada pengguna. - Buat file
/etc/sssd/sssd.conf
dengan konten berikut:
[sssd]
services = nss, pam
domains = example.com[domain/example.com]
ldap_tls_cert = /etc/sssd/ldap/Google.crt
ldap_tls_key = /etc/sssd/ldap/Google.key
ldap_tls_reqcert = never
ldap_uri = ldaps://ldap.google.com
ldap_search_base = dc=example,dc=com
id_provider = ldap
auth_provider = ldap
ldap_schema = rfc2307bis
ldap_user_uuid = entryUUID - Perbarui izin dan label SELinux:
chown 0:0 /etc/sssd/sssd.conf /etc/sssd/ldap/*
chmod 600 /etc/sssd/sssd.conf /etc/sssd/ldap/*
restorecon -FRv /etc/sssd
- Mulai ulang SSSD:
systemctl restart sssd
- Uji:
ssh ke server:ssh -l user@example.com {HOSTNAME}
Pemecahan masalah
- Periksa versi SSSD (harus versi yang lebih baru atau setara dengan 1.15.2):
# sssd --version
2.2.3
-
Di RHEL/CentOS (atau distro apa pun dengan penerapan SELinux), file konfigurasi SSSD serta kunci dan file sertifikat harus dalam direktori yang dapat diakses oleh peran sssd_conf_t:
# egrep "object_r:sssd_conf_t" /etc/selinux/targeted/contexts/files/file_contexts
Periksa pesan /var/log/audit/audit.log untuk mendeteksi pesan penolakan AVC.
- Periksa apakah /etc/nsswitch.conf memiliki "sss" untuk entitas passwd, shadow, group, dan netgroup:
passwd: files sss
shadow: files sss
group: files sss
netgroup: files sss
Di sini, file lokal akan mengganti pengguna LDAP.
- Periksa /var/log/sssd.conf untuk mendeteksi error konfigurasi:
Contoh:
[sssd] [sss_ini_add_snippets] (0x0020): Config merge error: File /etc/sssd/sssd.conf did not pass access check. Skipping.Tindakan: Anda harus melakukan chmod 600 pada file .config.
Contoh:
[sssd] [sss_ini_call_validators] (0x0020): [rule/allowed_domain_options]: Attribute 'ldap_groups_use_matching_rule_in_chain' is not allowed in section 'domain/{DOMAIN}'. Check for typos.[sssd] [sss_ini_call_validators] (0x0020): [rule/allowed_domain_options]: Attribute 'ldap_initgroups_use_matching_rule_in_chain' is not allowed in section 'domain/{DOMAIN}'. Check for typos.
Tindakan: Hapus ekstensi LDAP pencocokan grup yang tidak didukung dari sssd.conf.
-
Periksa /var/log/sssd_{DOMAIN}.log untuk mendeteksi error LDAP/network/auth.
Contoh:[sssd[be[example.com]]] [sss_ldap_init_sys_connect_done] (0x0020): ldap_install_tls failed: [Connect error] [error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed (self signed certificate)]
Tindakan: Anda perlu menambahkan "ldap_tls_reqcert = never" ke sssd.conf.
Untuk meningkatkan verbositas error, tambahkan "debug_level = 9" di sssd.conf pada bagian domain, lalu mulai ulang sssd.
SSSD melakukan pencarian untuk mendapatkan informasi lainnya tentang pengguna selama autentikasi. Guna memastikan autentikasi pengguna berfungsi dengan benar untuk klien LDAP ini, Anda perlu mengaktifkan izin Membaca informasi pengguna dan Membaca informasi grup untuk semua unit organisasi yang mengaktifkan izin Memverifikasi kredensial pengguna. (Untuk mengetahui petunjuknya, lihat Mengonfigurasi izin akses.)
Untuk menghubungkan klien SSSD ke layanan LDAP Aman:
- Instal versi SSSD >= 1.15.2.
$ sudo apt-get install sssd
- Dengan asumsi file sertifikat dan kunci klien diberi nama /var/ldap-client.crt dan /var/ldap-client.key serta domain Anda adalah example.com, edit /etc/sssd/sssd.conf dengan konfigurasi seperti:
[sssd]
services = nss, pam
domains = example.com[domain/example.com]
ldap_tls_cert = /var/ldap-client.crt
ldap_tls_key = /var/ldap-client.key
ldap_uri = ldaps://ldap.google.com
ldap_search_base = dc=example,dc=com
id_provider = ldap
auth_provider = ldap
ldap_schema = rfc2307bis
ldap_user_uuid = entryUUID
ldap_groups_use_matching_rule_in_chain = true
ldap_initgroups_use_matching_rule_in_chain = true
-
Ubah kepemilikan dan izin file konfigurasi:
$ sudo chown root:root /etc/sssd/sssd.conf
$ sudo chmod 600 /etc/sssd/sssd.conf -
Mulai ulang SSSD:
$ sudo service sssd restart
Tips: Jika Anda menggunakan modul SSSD di komputer Linux tanpa alamat IP eksternal di Google Compute Engine, Anda tetap dapat terhubung ke layanan LDAP Aman asalkan akses internal ke layanan Google diaktifkan. Untuk mengetahui detailnya, lihat Mengonfigurasi Akses Google Pribadi.
Ikuti langkah-langkah di bawah untuk menghubungkan klien macOS untuk autentikasi akun pengguna menggunakan layanan LDAP Aman.
Persyaratan sistem
- macOS harus berupa Catalina Versi 10.15.4 atau yang lebih baru.
- ID pengguna admin super Google diperlukan untuk menyelesaikan langkah 1 pada tahap persiapan.
- Anda memerlukan izin admin lokal untuk melakukan konfigurasi ini.
Daftar Isi:
Tahap persiapan
Petunjuk di bagian ini berfokus pada cara menyiapkan dan menguji autentikasi macOS secara manual menggunakan layanan LDAP Aman.
Langkah 1: Aktifkan macOS sebagai klien LDAP di konsol Google Admin
Untuk mengetahui petunjuknya, lihat Menambahkan klien LDAP, atau tonton demo LDAP Aman ini. Anda juga akan mendownload sertifikat klien TLS yang dibuat otomatis selama proses ini.
Langkah 2: Impor sertifikat ke keychain sistem
- Salin sertifikat (file zip yang didownload pada langkah 1) dan kunci ke komputer macOS.
Tips: Ekstrak file untuk menemukan file kunci dan sertifikat. - Impor pasangan kunci ke keychain sistem:
-
Konversikan kunci dan sertifikat menjadi file PKCS 12 (p12). Jalankan perintah berikut di terminal:
openssl pkcs12 -export -out ldap-client.p12 -in ldap-client.crt -inkey ldap-client.key
Tips: Tulis nama file .p12.
Sistem akan meminta Anda untuk memasukkan sandi. Masukkan sandi yang digunakan untuk mengenkripsi file p12. -
Buka aplikasi Keychain Access.
-
Klik keychain System.
-
Klik File > Import Items.
-
Pilih file ldap-client.p12 yang dibuat di atas.
-
Jika diminta, masukkan sandi admin untuk mengizinkan modifikasi keychain sistem.
-
Masukkan sandi yang dibuat di atas untuk mendekripsi file .p12.
Catatan: Sertifikat baru dan kunci pribadi terkait akan muncul dalam daftar kunci. Sertifikat dan kunci tersebut dapat berupa LDAP Client. Tuliskan nama sertifikat untuk langkah berikutnya di bawah.
- Ikuti langkah 6 di bagian ldapsearch (macOS) dalam artikel ini untuk menyiapkan Access Control untuk kunci pribadi guna menambahkan aplikasi yang ditentukan di bawah. Jika kunci pribadi tidak muncul di bagian kategori All Items, coba beralih ke kategori My Certificates, lalu cari entri kunci pribadi yang benar dengan memperluas sertifikat yang sesuai.
Aplikasi ldapsearch, seperti yang ditentukan dalam petunjuk, hanya relevan jika pemecahan masalah diperlukan, dan bukan untuk tujuan lain. Kunci ini biasanya dihapus sebelum memberi pengguna akses ke macOS.
Tiga aplikasi berikut harus ditambahkan ke daftar Access Control:
/System/Library/CoreServices/Applications/Directory Utility
/usr/libexec/opendirectoryd
/usr/bin/dscl
-
-
Tambahkan baris ke file /etc/openldap/ldap.conf, untuk memastikan bahwa "LDAP Client" adalah nama sertifikat yang sama persis dengan yang ditampilkan di aplikasi macOS Keychain Access setelah mengimpor file .p12 (nama tersebut berasal dari Nama Umum Subjek X.509 dari sertifikat yang dibuat):
sudo bash -c 'echo -e "TLS_IDENTITY\tLDAP Client" >> /etc/openldap/ldap.conf'
Langkah 3: Arahkan perangkat ke direktori Google untuk autentikasi
Buka aplikasi Directory Utility untuk membuat node direktori LDAP baru.
- Klik kunci untuk melakukan perubahan, lalu masukkan sandi.
- Pilih LDAPv3, lalu klik ikon pensil untuk mengedit setelan.
- Klik New…
- Untuk nama server, masukkan ldap.google.com, pilih Encrypt using SSL, lalu klik Manual.
- Klik nama server baru, lalu klik Edit…
- Ketik nama deskriptif seperti Google Secure LDAP sebagai nama konfigurasi.
- Pilih Encrypt using SSL dan pastikan port disetel ke 636.
- Buka tab Search & Mappings.
- Pilih RFC2307 dari menu drop-down Access this LDAPv3 server using.
- Jika diminta, masukkan informasi terkait domain ke Search Base Suffix. Misalnya, masukkan
dc=zomato,dc=com
untuk nama domain zomato.com. - Klik OK.
- Konfigurasikan atribut di jenis data Users:
- Di bagian Record Types and Attributes, pilih Users, lalu klik tombol “+”.
- Di jendela pop-up, pilih Attribute Types, pilih GeneratedUID , lalu klik OK untuk menutup jendela pop-up.
GeneratedUID akan ditampilkan di bagian Users setelah diperluas.
- Klik GeneratedUID, lalu klik ikon “+” dalam kotak di sebelah kanan.
- Masukkan apple-generateduid dalam kotak teks, lalu klik Enter.
- Pada node Users, klik atribut NFSHomeDirectory.
- Pada layar di sebelah kanan, ubah nilai untuk atribut ini menjadi
#/Users/$uid$
- Klik OK dan masukkan sandi untuk menyimpan perubahan.
- Dari jendela Directory Utility, konfigurasikan konfigurasi LDAP baru:
- Buka tab Search Policy.
- Klik ikon gembok untuk melakukan perubahan, lalu masukkan sandi pengguna saat ini jika diminta.
- Ubah opsi drop-down dari Search Path ke Custom path.
- Buka tab Authentication, lalu klik ikon “+”.
- Pilih
/LDAPv3/ldap.google.com
dari daftar Directory Domains, lalu klik Add. - Klik tombol Apply, lalu masukkan sandi admin Anda jika diminta.
- Jalankan empat perintah berikut untuk menonaktifkan mekanisme autentikasi DIGEST-MD5, CRAM-MD5, NTLM, dan GSSAPI SASL. macOS akan menggunakan Simple Bind untuk melakukan autentikasi menggunakan layanan LDAP Aman Google:
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string DIGEST-MD5" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string CRAM-MD5" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string NTLM" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string GSSAPI" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
- Mulai ulang untuk memuat ulang konfigurasi OpenDirectory.
Langkah 4: Buat akun seluler (mengizinkan login offline)
Setiap pengguna Google Workspace atau Cloud Identity dapat login menggunakan akun jaringan (Akun Google) menggunakan nama pengguna dan sandi mereka. Proses login ini memerlukan konektivitas jaringan. Jika pengguna harus login dengan atau tanpa koneksi ke jaringan, akun seluler dapat dibuat. Akun seluler memungkinkan Anda menggunakan nama pengguna dan sandi akun jaringan (Akun Google) untuk login, baik Anda terhubung ke jaringan atau tidak. Untuk mengetahui detail selengkapnya, lihat Membuat dan mengonfigurasi akun seluler di Mac.
Untuk membuat akun seluler bagi pengguna LDAP Aman:
-
Jalankan perintah berikut untuk terhubung ke server LDAP Aman serta menyiapkan jalur utama dan akun seluler:
sudo /System/Library/CoreServices/ManagedClient.app/Contents/Resources/createmobileaccount -n $uid -v
Tips: Ganti $uid dengan bagian nama pengguna dari alamat email yang terkait dengan Akun Google pengguna. Misalnya, jajang adalah bagian nama pengguna untuk jajang@solarmora.com. -
Jika dimintai nama pengguna admin SecureToken, masukkan nama pengguna admin Anda, lalu masukkan sandi pada perintah berikutnya. Tindakan ini akan menambahkan $uid ke FileVault. Hal ini diperlukan jika disk macOS dienkripsi.
Langkah 5: (Opsional) Setel preferensi layar login
- Buka System preferences > Users & Groups > Login Options di kiri bawah.
- Buka kunci dengan memasukkan kredensial admin.
- Ubah Display login window as menjadi Name and password.
Langkah 6: Mulai ulang dan login ke perangkat
- Pastikan perangkat terhubung ke Internet. Jika Anda tidak memiliki koneksi internet, proses login untuk pengguna LDAP Aman tidak akan berfungsi.
Catatan: Koneksi internet hanya diperlukan untuk login pertama. Login berikutnya dapat dilakukan tanpa akses Internet. - Login ke perangkat dengan akun pengguna yang dikonfigurasi untuk menggunakan LDAP Aman untuk autentikasi.
Tahap deployment
Petunjuk pada bagian ini berfokus pada otomatisasi konfigurasi perangkat untuk pengguna Anda. Lakukan langkah 1 dan 2 di bawah di perangkat macOS yang sama tempat Anda menyelesaikan konfigurasi manual selama tahap persiapan.
Langkah 1: Buat Profil Mac dengan sertifikat menggunakan Apple Configurator 2
- Instal Apple Configurator 2 di komputer tempat Anda mengonfigurasi autentikasi macOS secara manual dengan LDAP Aman.
- Buka Apple Configurator 2, buat profil baru dan di bagian Certificate, klik Configure, lalu impor file .p12 yang dibuat sebelumnya.
Catatan: Pastikan file .p12 ini memiliki sandi. Masukkan sandi ini di bagian Password pada Certificate. - Simpan Profil ini.
- Buka profil ini dalam editor teks apa pun dan tambahkan baris berikut di tag <dict> pertama:
<key>PayloadScope</key>
<string>System</string>
Baris ini ditambahkan karena Apple Configurator belum mendukung profil untuk macOS.
- Di tag <dict> kedua, yang sejajar dengan data sertifikat, tambahkan baris berikut:
<key>AllowAllAppsAccess</key>
<true/>
Tindakan ini akan memastikan bahwa sertifikat ini dapat diakses oleh semua aplikasi.
Langkah 2: Konversikan file konfigurasi Directory (plist) ke xml
Pada langkah ini, Anda akan mengekstrak semua konfigurasi manual yang telah diselesaikan dalam tahap persiapan pada langkah 3 menjadi file XML. Anda dapat menggunakan file ini dan profil Mac yang dibuat pada langkah 1 di atas untuk otomatis mengonfigurasi perangkat macOS lainnya.
- Salin /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist ke desktop atau di tempat lain.
- Konversikan ke XML agar Anda dapat memeriksanya di editor teks apa pun. Jalankan perintah berikut di Terminal:
sudo plutil -convert xml1 <path>/ldap.google.com.plist
Anda dapat mengakses file sebagai<path>/ldap.google.com.plist
.
- Ubah izin file di atas agar file XML dapat dibuka. Pastikan tidak kosong.
Langkah 3: Buat skrip python untuk mengotomatiskan konfigurasi di perangkat pengguna akhir Anda
Salin skrip python di bawah, lalu simpan sebagai file python (file .py).
Catatan: Contoh skrip ini diberikan sebagaimana adanya. Dukungan Google tidak akan memberikan dukungan untuk contoh skrip.
Ldap_pythong_config.py
#!/usr/bin/python
from OpenDirectory import ODNode, ODSession, kODNodeTypeConfigure
from Foundation import NSMutableData, NSData
import os
import sys
# Reading plist
GOOGLELDAPCONFIGFILE = open(sys.argv[1], "r")
CONFIG = GOOGLELDAPCONFIGFILE.read()
GOOGLELDAPCONFIGFILE.close()
# Write the plist
od_session = ODSession.defaultSession()
od_conf_node, err = ODNode.nodeWithSession_type_error_(od_session, kODNodeTypeConfigure, None)
request = NSMutableData.dataWithBytes_length_(b'\x00'*32, 32)
request.appendData_(NSData.dataWithBytes_length_(CONFIG, len(CONFIG)))
response, err = od_conf_node.customCall_sendData_error_(99991, request, None)
# Edit the default search path and append the new node to allow for login
os.system("dscl -q localhost -append /Search CSPSearchPath /LDAPv3/ldap.google.com")
os.system("bash -c 'echo -e \"TLS_IDENTITY\tLDAP Client\" >> /etc/openldap/ldap.conf' ")
Langkah 4: Konfigurasikan otomatis perangkat pengguna akhir
Buka perangkat macOS lain yang ingin dikonfigurasi dan ikuti langkah-langkah berikut:
- Salin file Mac Profile yang dibuat pada langkah 1, file konfigurasi XML pada langkah 2, dan skrip python dari langkah 3 ke perangkat.
- Jalankan perintah berikut:
sudo
python </path/to/saved_python_script> </path/to/ldap.google.com.plist generated in step 2>
- Untuk mengimpor sertifikat ke keychain sistem macOS, klik dua kali file profil Mac yang dibuat pada langkah 1, dan jika diminta, berikan kredensial admin lokal macOS. Kemudian, Anda akan diminta untuk memasukkan sandi .p12 yang ditetapkan selama tahap persiapan.
- Mulai ulang komputer macOS.
- Buat akun seluler seperti yang dijelaskan di tahap persiapan pada langkah 4, dan setel preferensi tambahan seperti yang dijelaskan di tahap persiapan pada langkah 5 (opsional).
Batasan dan panduan
- Setelah pengguna mulai login ke macOS menggunakan kredensial Google, pengelolaan sandi pengguna (reset atau pemulihan) harus dilakukan di situs Google (misalnya, di myaccount.google.com atau di konsol Google Admin). Jika Anda memilih untuk melakukan pengelolaan sandi menggunakan solusi pihak ketiga, pastikan sandi terbaru disinkronkan dengan Google.
- Jika admin membuat pengguna baru atau mereset sandi pengguna yang ada dengan setelan Minta perubahan sandi saat login berikutnya diaktifkan, pengguna tidak akan dapat login ke Mac menggunakan sandi sementara yang disetel oleh admin.
Solusi: Pengguna harus login ke Google menggunakan perangkat lain (misalnya, perangkat seluler atau perangkat desktop lainnya), menyetel sandi permanen, lalu login ke macOS menggunakan sandi baru. - Mac harus terhubung ke koneksi internet yang berfungsi agar ldap.google.com dapat diakses selama proses login pertama setelah konfigurasi di atas. Saat login berikutnya, akses internet tidak akan diperlukan asalkan Anda sudah menyiapkan akun seluler.
- Integrasi LDAP Aman Google dengan macOS diuji di macOS Catalina dan Big Sur.
Pemecahan masalah
Jika Anda mengalami masalah saat menghubungkan ke layanan LDAP Aman, ikuti petunjuk di bawah ini.
Langkah 1: Verifikasi koneksi.
Memverifikasi sambungan menggunakan odutil.
Jalankan perintah odutil show nodenames di terminal.
Pastikan status /LDAPv3/ldap.google.com
online. Jika tidak online, coba opsi telnet.
Memverifikasi sambungan menggunakan nc.
Jalankan perintah berikut di terminal: nc -zv ldap.google.com 636
Jika Anda tidak dapat terhubung ke Google menggunakan pendekatan ini, coba hubungkan menggunakan IPv4.
Memverifikasi sambungan dengan IPv4.
Anda dapat mengubah perangkat untuk menggunakan IPv4 dengan mengikuti langkah berikut:
- Buka System Preferences > Network > Wi-Fi > Advanced.
- Di menu Advanced, buka tab TCP/IP.
- Ubah pilihan drop-down dari Configure IPv6 ke Link-local only.
- Klik OK, lalu klik Apply untuk menyimpan perubahan.
- Periksa autentikasi layanan melalui konektivitas ldapsearch dan penelusuran yang valid.
Langkah 2: Periksa apakah Anda dapat melihat objek direktori.
- Buka Directory Utility, lalu buka tab Directory Editor.
- Pilih node /LDAPv3/ldap.google.com di menu drop-down.
- Verifikasi apakah Anda dapat melihat pengguna dan grup dari domain Google.
Petunjuk konfigurasi untuk aplikasi Java
Sebagian besar aplikasi berbasis Java yang menawarkan fungsi LDAP dapat dikonfigurasi untuk diautentikasikan dengan sertifikat klien, yaitu dengan menginstal sertifikat klien di keystore aplikasi. File konfigurasi yang tepat mungkin berbeda di tiap aplikasi, tetapi secara umum prosesnya serupa. Penyiapan memerlukan penginstalan OpenSSL dan Java Runtime Environment.
-
Konversikan sertifikat dan kunci ke format keystore Java. Anda akan diminta untuk memberikan sandi sepanjang proses ini. Pilih sandi yang aman dan gunakan sandi yang sama untuk semua perintah. Dengan asumsi bahwa nama file kunci klien Anda adalah ldap-client.key:
Jika Anda menjalankan macOS atau Linux, gunakan perintah berikut:
$ openssl pkcs12 -export -out java-application-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.key
Jika Anda menjalankan Windows, gunakan perintah berikut:$ certutil -mergepfx ldap-client.crt java-application-ldap.pkcs12
Penting: Kedua file (<CERT_FILE>.crt dan <CERT_FILE>.key) harus berada dalam direktori yang sama. Selain itu, pastikan key dan crt memiliki nama identik (dengan dua ekstensi yang berbeda). Dalam contoh ini, kami menggunakan nama ldap-client.crt dan ldap-client.key.
- Impor sertifikat ke keystore:
$ keytool -v -importkeystore -srckeystore java-application-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore java-application-ldap.jks -deststoretype JKS
- Properti Java dapat dikonfigurasi dengan beragam cara bergantung pada aplikasi. Sering kali, Anda dapat menetapkan properti dengan opsi -D di command line "java" yang digunakan untuk memulainya. Setel properti Java untuk aplikasi Anda:
javax.net.ssl.keyStore = /<path-to>/java-application-ldap.jks
javax.net.ssl.keyStorePassword = <password selected above>
- Konfigurasikan setelan sambungan LDAP aplikasi menggunakan informasi dalam Petunjuk konfigurasi dasar.
Opsional: Menggunakan stunnel sebagai proxy
Untuk klien yang tidak menawarkan cara untuk mengautentikasi LDAP dengan sertifikat klien, gunakan stunnel sebagai proxy.
Konfigurasikan stunnel untuk memberikan sertifikat klien ke server LDAP dan mengonfigurasi klien Anda agar terhubung ke stunnel. Idealnya, Anda menjalankan stunnel di server yang sama dengan aplikasi dan hanya menerima sambungan secara lokal sehingga direktori LDAP tidak terekspos ke luar server tersebut.
Ikuti langkah-langkah berikut:
- Instal stunnel. Misalnya, pada Ubuntu:
$ sudo apt-get install stunnel4
- Buat file konfigurasi /etc/stunnel/google-ldap.conf dengan konten berikut (dengan asumsi bahwa ldap-client.crt adalah sertifikat, dan ldap-client.key adalah kunci):
[ldap]
client = yes
accept = 127.0.0.1:1636
connect = ldap.google.com:636
cert = ldap-client.crt
key = ldap-client.key
- Untuk mengaktifkan stunnel, edit /etc/default/stunnel4 dan setel ENABLED=1.
- Mulai ulang stunnel.
$ sudo /etc/init.d/stunnel4 restart
- Konfigurasikan aplikasi Anda agar mengarah ke ldap://127.0.0.1:1636.
Anda dapat mengganti “1636” dengan port apa pun yang tidak terpakai jika baris accept dalam file konfigurasi di atas juga diganti. Anda harus menggunakan LDAP teks biasa tanpa mengaktifkan StartTLS/SSL/TLS antara klien dan stunnel, karena keduanya berkomunikasi secara lokal.
Catatan: Jika memilih menjalankan stunnel di server terpisah, Anda harus mengonfigurasi firewall sehingga hanya aplikasi yang diperlukan yang dapat mengakses server stunnel Anda. Anda juga dapat mengonfigurasi stunnel agar menerima koneksi dengan TLS, sehingga data antara aplikasi dan server stunnel Anda dienkripsi. Detail kedua konfigurasi ini bergantung pada lingkungan Anda.
Langkah berikutnya
Setelah menghubungkan klien LDAP ke layanan LDAP Aman, Anda harus mengubah status layanan menjadi Aktif untuk klien LDAP.
Untuk langkah berikutnya, lihat 5. Mengalihkan klien LDAP ke Aktif.
Catatan: Jika diperlukan, Anda dapat menggunakan alat sederhana seperti ldapsearch, ADSI, atau ldp.exe untuk memecahkan masalah jika terjadi error saat mencoba menghubungkan klien LDAP Anda ke layanan. Untuk mengetahui petunjuknya, lihat Pengujian dan pemecahan masalah konektivitas.