4. LDAP istemcilerini Güvenli LDAP hizmetine bağlama

LDAP istemcinizi Güvenli LDAP hizmetine bağlamak için bu makaledeki talimatları kullanın.

Önemli:

  • Tedarikçi firma tarafından sağlanan dokümanları mutlaka okuyun
    LDAP istemcinizi Güvenli LDAP hizmetine bağlama ile ilgili bu makaledeki ayrıntılar yalnızca referans amaçlıdır ve değişebilir. İstemcinizi Güvenli LDAP hizmetine bağlama ile ilgili en güncel adımlar için bu yardım talimatlarına ek olarak tedarikçi firma tarafından sağlanan dokümanları da mutlaka okuyun.
  • Başlamadan önce
    Bu talimatları kullanmadan önce istemciyi Güvenli LDAP hizmetine eklediğinizden, erişim izinlerini yapılandırdığınızdan, istemci sertifikası ve anahtarı indirdiğinizden ve isteğe bağlı olarak erişim kimlik bilgileri oluşturduğunuzdan emin olun.
  • Bağlantı testi
    İsteğe bağlı olarak, bu adımlara başlamadan önce ldapsearch, ADSI ve ldp.exe gibi basit araçları kullanarak hızlı bir bağlantı testi yapabilirsiniz. LDAP istemcinizi hizmete bağlamaya çalışırken hatalarla karşılaşırsanız sorunları gidermek için de bu araçları kullanabilirsiniz. Talimatlar için Güvenli LDAP bağlantı testi başlıklı makaleyi inceleyin.
  • Kurulum adımlarınızı tamamlama
    Bu sayfadaki talimatları uygulayarak LDAP istemcisini bağladıktan sonra, Google Yönetici Konsolu'nda hizmet durumunu Açık olarak değiştirerek LDAP istemcinizin kurulumunu tamamlamanız gerekir. Talimatlar için 5. LDAP istemcilerini Açık olarak değiştirin.

Bu makale neleri içerir?

Bu makale aşağıdaki bölümleri içerir:

Bu talimatlarda, indirdiğiniz istemci anahtarı ve sertifika dosyalarının ldap-client.key ve ldap-client.crt olarak adlandırıldığı varsayılır.

Temel yapılandırma talimatları

Bu bölümde, LDAP istemcinizi Güvenli LDAP hizmetine bağlamayla ilgili genel talimatlar yer almaktadır. LDAP istemciniz aşağıdaki talimatlarda listelenmiyorsa söz konusu uygulamanın belgelerine mutlaka göz atın.

Not: Atlassian Jira ve SSSD gibi belirli LDAP istemcileri, kullanıcı kimlik doğrulaması sırasında kullanıcı hakkında daha fazla bilgi edinmek için kullanıcı araması yapar. Kullanıcı kimlik doğrulamasının bu tür LDAP istemcilerinde doğru şekilde çalıştığından emin olmak için Kullanıcı kimlik bilgilerini doğrulama seçeneğinin etkin olduğu tüm kuruluş birimlerinde Kullanıcı bilgilerini okuma seçeneğini etkinleştirmeniz gerekir. (Talimatlar için Erişim izinlerini yapılandırma başlıklı makaleye bakın.)

LDAP istemcisini Güvenli LDAP hizmetine bağlamak için:

  1. LDAP istemcinizi Cloud Directory'de LDAP sunucunuz olarak yapılandırın.
  2. LDAP istemcinize sertifikayı yükleyin.

    Güvenli LDAP hizmeti, birincil kimlik doğrulama mekanizması olarak TLS istemci sertifikalarını kullanır. Sertifikayı LDAP istemcisine yükleme işlemine başlamak için LDAP istemcisinin kimlik doğrulama veya dizin ayarlarını açın ve aşağıdaki tablodaki ayrıntıları girin.

    Not: TLS sertifikalarını nasıl ve nereye yükleyeceğinizle ilgili ayrıntılı bilgi için lütfen tedarikçi dokümanlarınıza bakın.

Temel bağlantı bilgileri için aşağıdaki tabloyu kullanın:

Hostname (Ana makine adı)

ldap.google.com

Bağlantı noktaları

StartTLS'nin etkin olduğu LDAP için 389
LDAPS için 636 (SSL/TLS etkin)

Base DN (Ana DN)

DN biçiminde alanınız. Örneğin:

example.com için dc=example,dc=com

Kullanıcı adı ve şifre

Bazı LDAP istemcileri, sertifikayla kimlik doğrulamaya ek olarak bir kullanıcı adı ve şifre girmenizi gerektirir. Kullanıcı adı ve şifre alanlarının doldurulması zorunlu değilse bu adımı atlayabilirsiniz.

Google Yönetici konsolunda bir kullanıcı adı ve şifre oluşturun. Talimatlar için Erişim kimlik bilgileri oluşturma başlıklı makaleye bakın.

İstemci sertifikası ve anahtar dosyaları

Google Yönetici konsolundan indirilen sertifika ve anahtar dosyasını kullanın. LDAP istemcisi, istemci sertifikasıyla kimlik doğrulama yöntemi sağlamıyorsa stunnel'ı proxy olarak kullanma başlıklı makaleyi inceleyin.

ÖNEMLİ: Apache Directory Studio gibi bazı LDAP istemcileri, dijital sertifikaların yüklenmesini desteklemez. Bu senaryoyu ele almak için Stunnel'ı proxy olarak kullanma bölümüne bakın.

Belirli LDAP istemcileri için yapılandırma talimatları

ADSI Edit (Windows)

Aşağıdaki adımları uygulayın:

  1. İstemci sertifikalarını yüklemek için ldp.exe (Windows) bölümündeki 1-11 arasındaki adımları uygulayın.
  2. Action > Connect to… (Eylem > Bağlan) seçeneğine gidin.
  3. Aşağıdaki bağlantı ayarlarını girin:

    Ad: Bağlantınız için bir ad yazın (ör. Google LDAP).
    Bağlantı Noktası: "Ayırt Edici Ad veya Adlandırma Bağlamı seçin ya da yazın"
    Alan adınızı DN biçiminde girin (örneğin, example.com için dc=example,dc=com).

    Bilgisayar: "Bir alan veya sunucu seçin ya da yazın"
    ldap.google.com

    SSL tabanlı şifreleme kullan: İşaretli
  4. Gelişmiş... seçeneğini tıklayın ve aşağıdaki ayrıntıları girin:

    Kimlik bilgilerini belirtin: İşaretli
    Kullanıcı adı: Yönetici Konsolu'ndaki erişim kimlik bilgisi kullanıcı adı
    Şifre: Yönetici Konsolu'ndaki erişim kimlik bilgisi şifresi
    Bağlantı noktası numarası: 636
    Protokol: LDAP
    Basit bağlama kimlik doğrulaması: İşaretli
  5. OK (Tamam) düğmesini tıklayın; sonra yine OK düğmesini tıklayın.
  6. Bağlantı başarılı olursa sağ bölmede ana DN'deki etkin dizin içerikleri görüntülenir.

Apache Directory Studio

Apache Directory Studio'yu kullanmak için stunnel üzerinden bağlanın ve Google Yönetici Konsolu'nda oluşturulan bir erişim kimliği (kullanıcı adı ve şifre) kullanın. Kimlik bilgilerinin mevcut olduğunu ve stunnel'ın localhost bağlantı noktası 1389'da dinlediğini varsayarak aşağıdaki adımları uygulayın:

  1. File > New… (Dosya > Yeni) seçeneğini tıklayın.
  2. LDAP Browser > LDAP Connection (LDAP Tarayıcısı > LDAP Bağlantısı) öğesini seçin.
  3. İleri'yi tıklayın.
  4. Bağlantı parametrelerini girin:

    Bağlantı adı: Google LDAP gibi bir ad seçin.
    Ana makine adı: localhost
    Bağlantı noktası: 1389 (veya stunnel dinleme/kabul bağlantı noktası)
    Şifreleme yöntemi: Şifreleme yok (Not: Stunnel uzaktan çalışıyorsa stunnel ile istemci arasındaki şifreleme önerilir.)
  5. İleri'yi tıklayın.
  6. Kimlik doğrulama parametrelerini girin:

    Kimlik Doğrulama Yöntemi: Basit Kimlik Doğrulama
    Bağlama DN'si veya kullanıcı: Yönetici Konsolu'ndaki erişim kimlik bilgisi kullanıcı adı
    Bağlama şifresi: Yönetici Konsolu'ndaki erişim kimlik bilgisi şifresi
  7. İleri'yi tıklayın.
  8. Ana DN'yi girin.
    Bu, DN biçimindeki alan adınızdır (example.com için dc=example,dc=com).
  9. Son'u tıklayın.

Atlassian Jira

Atlassian Jira, kullanıcı kimlik doğrulaması sırasında kullanıcı hakkında daha fazla bilgi edinmek için kullanıcı araması yapar. Bu LDAP istemcisinde kullanıcı kimlik doğrulamasının doğru şekilde çalıştığından emin olmak için Kullanıcı kimlik bilgilerini doğrula seçeneğinin etkin olduğu tüm kuruluş birimlerinde Kullanıcı bilgilerini oku ve Grup bilgilerini oku seçeneklerini etkinleştirmeniz gerekir. (Talimatlar için Erişim izinlerini yapılandırma başlıklı makaleye bakın.)

Önemli: Aşağıdaki talimatları kullandığınızda, keystorePassword kullanıcılara gösterilebilir ve günlük dosyalarında görünebilir. Yerel kabuğa, günlük dosyasına ve Google Yönetici Konsolu'na yetkisiz erişimi önlemek için önlemler alın. Aşağıdaki talimatlara alternatif olarak stunnel4 yöntemini kullanın (bkz. İsteğe bağlı: Proxy olarak stunnel kullanma).

Not: Aşağıdaki talimatlarda Jira'nın /opt/atlassian/jira konumuna yüklendiği varsayılmaktadır.

Bir Atlassian Jira istemcisini Güvenli LDAP hizmetine bağlamak için:

  1. Sertifikayı ve anahtarı kopyalayıp Jira sunucularınıza yapıştırın. (Bu, LDAP istemcisi Güvenli LDAP hizmetine eklenirken Google Yönetici Konsolu'nda oluşturulan sertifikadır.)

    Örneğin:
    $ scp ldap-client.key user@jira-server:
  2. Sertifikayı ve anahtarları Java anahtar deposu biçimine dönüştürün. Bu işlem boyunca şifre girmeniz istenecektir. İşinizi kolaylaştırmak için güvenli bir şifre seçin ve tüm şifre sorgularında aynı şifreyi kullanın.

    $ 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

  3. Jira'yı yeni oluşturulan anahtar deposunu kullanacak şekilde yapılandırın. Seçenek eklemek için buradaki talimatları uygulayın:

    "-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password"

    Linux'ta:
    1. /opt/atlassian/jira/bin/setenv.sh dosyasını düzenleyin.
    2. JVM_SUPPORT_RECOMMENDED_ARGS ayarını bulun.
    3. "-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password" ifadesini ekleyin. "password" kısmını yukarıda seçtiğiniz şifreyle değiştirin.
  4. Jira'yı yeniden başlatın.

    $ /opt/atlassian/jira/bin/stop-jira.sh
    $ /opt/atlassian/jira/bin/start-jira.sh

  5. Jira web arayüzünde yönetici olarak oturum açın.
    1. Ayarlar > Kullanıcı yönetimi'ne gidin. (Ayarlar için sağ üstteki dişli simgesine gidin.)
    2. User Directories'i (Kullanıcı Dizinleri) tıklayın.
    3. Dizin ekle'yi tıklayın.
    4. Tür olarak LDAP'ı seçin.
    5. İleri'yi tıklayın.
  6. Aşağıdakileri girin:

    Ad

    Google Secure LDAP

    Directory type (Dizin türü)

    OpenLDAP

    Hostname (Ana makine adı)

    ldap.google.com

    Port (Bağlantı noktası)

    636

    Use SSL (SSL Kullan)

    İşaretli

    Kullanıcı Adı

    Google Yönetici konsolunda bir kullanıcı adı ve şifre oluşturun. Talimatlar için Erişim kimlik bilgileri oluşturma başlıklı makaleye bakın.

    Şifre

    Google Yönetici konsolunda bir kullanıcı adı ve şifre oluşturun. Talimatlar için Erişim kimlik bilgileri oluşturma başlıklı makaleye bakın.

    Base DN (Ana DN)

    DN biçimindeki alan adınız (örneğin, example.com için dc=example,dc=com)

    Additional User DN (Ek Kullanıcı DN)

    İsteğe bağlı. "ou=Users"

    Additional Group DN (Ek Grup DN)

    İsteğe bağlı. "ou=Groups"

    LDAP Permissions (LDAP İzinleri)

    Read only (Salt okunur)

    Advanced Settings (Gelişmiş Ayarlar)

    Değiştirilmedi

    User Schema Settings (Kullanıcı Şeması Ayarları) >
    User Name Attribute (Kullanıcı Adı Özelliği)

    googleUid

    User Schema Settings (Kullanıcı Şeması Ayarları) >
    User Name RDN Attribute (Kullanıcı Adı RDN Özelliği)

    uid

    Group Schema Settings (Grup Şeması Ayarları) >
    Group Object Class (Grup Nesnesi Sınıfı)

    groupOfNames

    Group Schema Settings (Grup Şeması Ayarları) >
    Group Object Filter (Grup Nesnesi Filtresi)

    (objectClass=groupOfNames)

    Membership Schema Settings (Üyelik Şeması Ayarları) >
    Group Members Attribute (Grup Üyeleri Özelliği)

    üye

    Membership Schema Settings (Grup Üyeleri Özelliği) >
    Use the User Membership Attribute (Kullanıcı Üyelik Özelliğini Kullan)

    İşaretli
  7. Gruba bir rol verin.

    Atlassian Jira'nın bir kullanıcının giriş yapmasına izin verebilmesi için kullanıcının Jira'ya erişim izni verilen bir grubun üyesi olması gerekir.

    Bir gruba rol vermek için:
    1. Settings (Ayarlar) > Applications (Uygulamalar) > Application access (Uygulama erişimi) konumuna gidin.
    2. Grup seçin metin kutusuna, Jira'ya erişim izni vermek istediğiniz Google grubunun adını girin.

CloudBees Core/Jenkins

CloudBees Core'u Güvenli LDAP hizmetine bağlama talimatları için Configure CloudBees Core with Google's Cloud Identity Secure LDAP (CloudBees Core'u Google Cloud Identity Güvenli LADP ile yapılandırma) sayfasına bakın.

FreeRadius

Aşağıdaki adımları uygulayın:

  1. FreeRADIUS'u /etc/freeradius/3.0/ konumuna yükleyip yapılandırın.

    FreeRADIUS yüklendikten sonra, freeradius-ldap eklentisini yükleyerek LDAP yapılandırmasını ekleyebilirsiniz.

    $ sudo apt-get install freeradius freeradius-ldap
  2. LDAP istemci anahtarını ve sertifika dosyalarını sırasıyla /etc/freeradius/3.0/certs/ldap-client.key ve /etc/freeradius/3.0/certs/ldap-client.crt konumlarına kopyalayın.

    $ chown freeradius:freeradius
    /etc/freeradius/3.0/certs/ldap-client.*
    $ chmod 640 /etc/freeradius/3.0/certs/ldap-client.*

  3. LDAP modülünü etkinleştirin.

    $ cd /etc/freeradius/3.0/mods-enabled/
    $ ln -s ../mods-available/ldap ldap

  4. /etc/freeradius/3.0/mods-available/ldap konumunu düzenleyin.
    1. ldap->server = 'ldaps://ldap.google.com:636'
    2. identity = uygulama kimlik bilgilerinden alınan kullanıcı adı
    3. şifre = uygulama kimlik bilgilerinden alınan şifre
    4. base_dn = 'dc=domain,dc=com'
    5. tls->start_tls = no
    6. tls->certificate_file = /etc/freeradius/3.0/certs/ldap-client.cer
    7. tls->private_key_file = /etc/freeradius/3.0/certs/ldap-client.key
    8. tls->require_cert = 'allow'
    9. İçerik haritasında "ldap -> post-auth -> update" bölümünü temsil eden tüm alanlara açıklama satırı yapın.
  5. /etc/freeradius/3.0/sites-available/default dosyasını düzenleyin.
    Bu işlem FreeRadius istemci bağlantısını değiştirir. Varsayılan istemciyi kullanmıyorsanız yapılandırdığınız ilgili istemciyi (iç tünel veya özel istemci) güncellediğinizden emin olun.
    1. Yetkilendirme bölümünü, şifre kimlik doğrulama protokolü (PAP) ifadesinden sonra aşağıdaki bloğu ekleyecek şekilde değiştirin:

      if (User-Password) {
      update control {
      Auth-Type := ldap
      }
      }

    2. authorize (yetkilendir) bölümünde, LDAP'yi etkinleştirmek için önündeki "-" işaretini kaldırın.

      #
      # The ldap module reads passwords from the LDAP database.
      ldap
    3. authenticate bölümünü, Auth-Type LDAP bloğunu aşağıdaki gibi düzenleyerek değiştirin:

      # Auth-Type LDAP {
      ldap
      # }

    4. authenticate bölümünü, Auth-Type PAP bloğunu aşağıdaki şekilde düzenleyerek değiştirin:

      Auth-Type PAP {
      # pap
      ldap
      }

GitLab

GitLab'i Güvenli LDAP hizmetine bağlamaya ilişkin talimatlar için Configure Google Secure LDAP for GitLab (Google Güvenli LDAP hizmetini GitLab için yapılandırma) başlıklı dokümana göz atın.

Itopia/Ubuntu

Itopia/Ubuntu'yu Güvenli LDAP hizmetine bağlama talimatları için Configuring Google Cloud Identity LDAP on Ubuntu 16.04 for user logins (Kullanıcı girişleri için Ubuntu 16.04 sürümünde Google Cloud Identity LDAP'yi yapılandırma) sayfasına bakın.

Ivanti/LanDesk

Aşağıdaki adımları uygulayın:

  1. Ivanti web sunucunuzda, aşağıdaki iki klasördeki bir metin düzenleyicide OpenLDAPAuthenticationConfiguration.xml veya OpenLDAPSSLAuthenticationConfiguration.xml dosyasını açın:

    C:\ProgramData\LANDesk\ServiceDesk\servicedesk.Framework ve C:\ProgramData\LANDesk\ServiceDesk\servicedesk.WebAccess (burada servicedesk, örnek adıdır)
  2. <Server> değerini ldap.google.com olarak güncelleyin.
  3. StartTLS etkin durumdayken şifresiz metin için <Port> değerini 3268 bağlantı noktası olarak, SSL/TLS bağlantı noktası için ise 3269 olarak güncelleyin (varsayılan değerler şifresiz metin bağlantı noktası için 389 veya SSL/TLS bağlantı noktası için 636'dır).
  4. <TestDN> değerini DN biçimindeki alan adınız olarak ayarlayın. (örneğin, example.com için dc=example,dc=com).
  5. Hem ..ProgramData\LANDesk\ServiceDesk\ServiceDesk.Framework\tps.config hem de ..ProgramData\LANDesk\ServiceDesk\WebAccess\tps.config dosyalarına şu satırı ekleyin:

    <add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPLogon.OpenLDAPAuthenticationProvider" />

    veya şu satırı ekleyin:

    <add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPSSLLogon.OpenLDAPSSLAuthenticationProvider" />
  6. Ivanti Configuration Center'da gerekli örneği açın.
  7. Service Desk Framework uygulamasının yanındaki Edit (Düzenle) seçeneğini tıklayın.
    Service Desk Framework için Edit Application (Uygulamayı Düzenle) iletişim kutusu görünür.
  8. Configuration parameters (Yapılandırma parametreleri) grubundaki Logon policy (Giriş politikası) listesinde Explicit only (Yalnızca özel) seçeneğini belirtin ve OK (Tamam) seçeneğini tıklayın.
  9. Web Erişimi uygulamasının yanında Düzenle'yi tıklayın.
    Web Access (Web Erişimi) için Edit Application (Uygulamayı Düzenle) iletişim kutusu görünür.
  10. Yapılandırma parametreleri grubunda, Oturum açma politikası listesinde Yalnızca açık'ı seçin ve Tamam'ı tıklayın.

Giriş yaparken, ilişkili alan kullanıcısının ağ şifresini kullanın.

LDAP sunucusu kimlik doğrulaması için istisna günlüğü

LDAP sunucusu kimlik doğrulamasını yapılandırmayla ilgili sorun yaşıyorsanız sorunu belirlemenize yardımcı olması için istisna günlüğünü etkinleştirebilirsiniz. İstisna günlüğü varsayılan olarak devre dışıdır ve incelemenizi tamamladığınızda tekrar devre dışı bırakmanızı öneririz.

LDAP sunucusu kimlik doğrulaması için istisna günlüğünü etkinleştirmek üzere:

  1. Bir metin düzenleyicide ilgili kimlik doğrulama yapılandırması XML dosyasını açın:

    DirectoryServiceAuthenticationConfiguration.xml, OpenLDAPAuthenticationConfiguration.xml veya OpenLDAPSSLAuthenticationConfiguration.xml
  2. Şu satırı değiştirin:

    <ShowExceptions>false</ShowExceptions>
    ile
    <ShowExceptions>true</ShowExceptions>
  3. Değişiklikleri kaydedin.

Ldp.exe (Windows)

Aşağıdaki adımları uygulayın:

  1. Sertifika ve anahtar dosyalarını PKCS12 biçimli bir dosyaya dönüştürün. Komut isteminde aşağıdakileri girin:

    macOS veya Linux kullanıyorsanız aşağıdaki komutları kullanın:

    openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12

    Çıkış dosyasını şifrelemek için bir şifre girin.

    Windows'da ise aşağıdaki komutları kullanın:

    $ certutil -mergepfx ldap-client.crt ldap-client.p12

    Önemli: İki dosya (<CERT_FILE>.crt ve <CERT_FILE>.key) aynı dizinde bulunmalıdır. Ayrıca hem key hem de crt dosyasının aynı ada (farklı bir uzantıyla) sahip olduğundan emin olun. Bu örnekte ldap-client.crt ve ldap-client.key adlarını kullanıyoruz.

  2. Denetim Masası'na gidin.
  3. Arama kutusuna "sertifika" yazın ve Kullanıcı sertifikalarını yönet'i tıklayın.
  4. Eylem > Tüm Görevler > İçe Aktar… seçeneğine gidin.
  5. Geçerli Kullanıcı'yı seçin ve İleri'yi tıklayın.
  6. Browse… (Göz At) seçeneğini tıklayın.
  7. İletişim kutusunun sağ alt köşesindeki dosya türü açılır menüsünde Kişisel Bilgi Değişimi (*.pfx;*.p12) seçeneğini belirleyin.
  8. 2. adımda ldap-client.p12 dosyasını seçin, Aç'ı ve ardından İleri'yi tıklayın.
  9. 2. adımdaki şifreyi girin ve İleri'yi tıklayın.
  10. Kişisel sertifika deposunu seçin, İleri'yi ve ardından Bitir'i tıklayın.
  11. Ldp.exe'yi çalıştırın.
  12. Bağlantı > Bağlan...'a gidin.
  13. Aşağıdaki bağlantı ayrıntılarını girin:

    Sunucu: ldap.google.com
    Bağlantı noktası: 636
    Bağlantısız: İşaretlenmemiş
    SSL: İşaretli
  14. Tamam'ı tıklayın.
  15. Görünüm > Ağaç'a gidin.
  16. Ana DN'i girin. Bu, DN biçimindeki alan adınızdır (örneğin, example.com için dc=example,dc=com).
  17. Tamam'ı tıklayın.
  18. Bağlantı başarılı olursa LDP.exe, Active Directory içeriklerini (ör. temel DN'de bulunan tüm özellikler) sağ bölmede gösterir.

Netgate/pfSense

Netgate/pfSense'i Güvenli LDAP hizmetine bağlama talimatları için Configuring Google Cloud Identity as an Authentication Source (Google Cloud Identity'yi kimlik doğrulama kaynağı olarak yapılandırma) başlıklı makaleyi inceleyin.

OpenLDAP / ldapsearch (Linux)

LDAP dizininize komut satırından erişmek için OpenLDAP ldapsearch komutunu kullanabilirsiniz.

İstemci sertifikanızın ve anahtar dosyalarınızın ldap-client.crt ve ldap-client.key olduğunu, alanınızın example.com ve kullanıcı adının jsmith olduğunu varsayarsak:

$ LDAPTLS_CERT=ldap-client.crt LDAPTLS_KEY=ldap-client.key ldapsearch -H ldaps://ldap.google.com -b dc=example,dc=com '(uid=jsmith)'

Bu işlem, ilgili ortam değişkenlerini istemci anahtarlarını gösterecek şekilde ayarlar. Diğer ldapsearch seçeneklerini istediğiniz filtreler, istenen özellikler vb. ile değiştirebilirsiniz. Diğer ayrıntılar için lütfen ldapsearch kılavuz sayfalarına ("man ldapsearch") bakın.

ldapsearch (macOS)

Aşağıdaki adımları uygulayın:

  1. Sertifika ve anahtar dosyalarını PKCS12 biçimli bir dosyaya dönüştürün. Komut isteminde aşağıdakileri girin:

    openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12

    Çıkış dosyasını şifrelemek için şifrenizi girin.
  2. Menü çubuğunun sağ üst köşesindeki simgesini tıklayın ve Anahtar Zinciri Erişimi yazın.
  3. Anahtar Zinciri Erişimi uygulamasını açın ve sol taraftaki listeden Sistem'i tıklayın.
  4. Sol üstteki menü çubuğunda Dosya seçeneğini tıklayın ve Öğeleri İçe Aktar'ı seçin.
  5. Oluşturulan ldap-client.p12 dosyasının bulunduğu konuma gidin, ldap-client.p12 dosyasını seçin ve Aç'ı tıklayın.
    İstenirse şifrenizi girin.
    LDAP Client adlı bir sertifika, Sistem Anahtar Zinciri sertifikaları listesinde görünür.
  6. LDAP İstemcisi sertifikasının yanındaki oku tıklayın. Bunun altında özel anahtar görünür.
    1. Özel anahtarı çift tıklayın.
    2. İletişim kutusunda Access Control (Erişim Denetimi) sekmesini seçin ve sol alt köşedeki + simgesini tıklayın.
    3. Açılan pencerede Command+Shift+G yazarak yeni bir pencere açın ve mevcut metni /usr/bin/ldapsearch ile değiştirin.

    4. Git'i tıklayın.

      ldapsearch vurgulanmış olarak bir pencere açılır.

    5. Ekle'yi tıklayın.

    6. Değişiklikleri Kaydet'i tıklayın ve istenirse şifrenizi girin.

      Artık LDAP dizininize, komut satırından OpenLDAP ldapsearch komutunu kullanarak erişmeye hazırsınız.

  7. Daha önce anahtar zincirine aktardığınız ldap-client.p12 dosyasının adının LDAP Client, alanınızın example.com ve kullanıcı adının jsmith olduğunu varsayarsak aşağıdakileri girin:

    $ LDAPTLS_IDENTITY="LDAP Client" ldapsearch -H ldaps://ldap.google.com:636 -b dc=example,dc=com '(uid=jsmith)'

Bu yapılandırma, ilgili ortam değişkenlerini içe aktarılan istemci sertifikasına işaret edecek şekilde ayarlar. Diğer ldapsearch seçeneklerini istediğiniz filtreler, istenen özellikler vb. ile değiştirebilirsiniz. Diğer ayrıntılar için ldapsearch man sayfalarına (man ldapsearch) bakın.

OpenVPN (topluluk sürümü)

Aşağıdaki adımları uygulayın:

  1. Gerekirse OpenVPN'i yükleyin ve yapılandırın. Daha önce zaten yükleyip yapılandırdıysanız OpenVPN'de ayarlar sayfasını açın.

    Genel VPN yapılandırması bu yardım makalesinin kapsamı dışındadır. Bir VPN yapılandırıldığında, LDAP aracılığıyla kullanıcı kimlik doğrulaması ve yetkilendirme ekleyebilirsiniz. Özellikle openvpn-auth-ldap eklentisini yüklemeniz gerekir. Özellikle openvpn-auth-ldap eklentisini yüklemeniz gerekir.

    $ sudo apt-get install openvpn openvpn-auth-ldap
  2. LDAP istemci anahtarını ve sertifika dosyalarını /etc/openvpn/ldap-client.key ve /etc/openvpn/ldap-client.crt konumlarına kopyalayın.
  3. Aşağıdakileri içeren bir dosya (/etc/openvpn/auth-ldap.conf) oluşturun (example.com'un alan adı olduğu varsayılır):

    <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>

  4. Genellikle /etc/openvpn/server.conf veya benzeri bir ada sahip OpenVPN yapılandırma dosyasını düzenleyin. Dosyanın en altına şunları ekleyin:

    plugin /usr/lib/openvpn/openvpn-auth-ldap.so /etc/openvpn/auth-ldap.conf
    verify-client-cert optional

  5. OpenVPN sunucusunu yeniden başlatın.

    $ sudo systemctl restart openvpn@server
  6. VPN istemcilerini, kullanıcıların kullanıcı adlarını ve şifrelerini kullanacak şekilde yapılandırın. Örneğin, bir OpenVPN istemci yapılandırmasında OpenVPN istemci yapılandırma dosyasının sonuna auth-user-pass komutunu ekleyin ve OpenVPN istemcisini başlatın:

    $ openvpn --config /path/to/client.conf
  7. Stunnel'ı proxy olarak kullanma talimatlarını uygulayın.

OpenVPN Erişim Sunucusu (ticari sürüm)

OpenVPN Access Server'ı Güvenli LDAP hizmetine bağlama talimatları için Configuring Google Secure LDAP with OpenVPN Access Server (Google Güvenli LDAP'yi OpenVPN Access Server ile yapılandırma) başlıklı makaleyi inceleyin.

PaperCut MF ve NG

PaperCut'ı Güvenli LDAP hizmetine bağlama talimatları için How to sync and authenticate Google Workspace and Google Cloud Identity users in PaperCut (PaperCut'ta Google Workspace ve Google Cloud Identity kullanıcılarını senkronize etme ve kimliklerini doğrulama) başlıklı makaleyi inceleyin.

Puppet Enteprise

Puppet Enterprise'ı Güvenli LDAP hizmetine bağlama talimatları için Google Cloud Directory for PE (PE için Google Cloud Directory) sayfasına bakın.

Softerra LDAP Browser

Önemli: Başlamadan önce Softerra LDAP Browser'ın 4.5 (4.5.19808.0) veya sonraki bir sürümünü yüklediğinizden emin olun. LDAP Browser 4.5'e bakın.

Aşağıdaki adımları uygulayın:

  1. Sertifika ve anahtar dosyalarını PKCS12 biçimli bir dosyaya dönüştürün. Komut isteminde aşağıdakileri girin:

    macOS veya Linux kullanıyorsanız aşağıdaki komutları kullanın:

    openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12

    Çıkış dosyasını şifrelemek için bir şifre girin.

    Windows'da ise aşağıdaki komutları kullanın:

    $ certutil -mergepfx ldap-client.crt ldap-client.p12

    Önemli: İki dosya (<CERT_FILE>.crt ve <CERT_FILE>.key) aynı dizinde bulunmalıdır. Ayrıca hem key hem de crt dosyasının aynı ada (farklı bir uzantıyla) sahip olduğundan emin olun. Bu örnekte ldap-client.crt ve ldap-client.key adlarını kullanıyoruz.

  2. Softerra LDAP Browser'a anahtar çiftini yükleyin.
    1. Tools > Certificate Manager (Araçlar > Sertifika Yöneticisi) seçeneğine gidin.
    2. Import… (İçe aktar) seçeneğini tıklayın.
    3. Next'i (Sonraki) tıklayın.
    4. Browse… (Göz At) seçeneğini tıklayın.
    5. İletişim kutusunun sağ alt köşesindeki Dosya türü açılır listesinde Kişisel Bilgi Alışverişi (*.pfx;*.p12) seçeneğini belirleyin.
    6. Yukarıdaki 2. adımda oluşturduğunuz ldap-client.p12 dosyasını seçin.
    7. Open'ı (Aç) ve ardından Next'i (İleri) tıklayın.
    8. Yukarıdaki 2. adımda belirlediğiniz şifreyi girin ve Next'i (İleri) tıklayın.
    9. Kişisel sertifika deposunu seçin.
    10. İleri'yi tıklayın.
    11. Son'u tıklayın.
  3. Bir sunucu profili ekleyin.
    1. Dosya > Yeni > Yeni Profil…'e gidin.
    2. Profil için Google LDAP gibi bir ad girin.
    3. İleri'yi tıklayın.

      Aşağıdakileri girin:

      Ana makine: ldap.google.com
      Bağlantı noktası:
      636
      Ana DN: DN biçimindeki alan adınız. (ör. example.com için dc=example,dc=com)
      Güvenli bağlantı (SSL) kullan: İşaretli
    4. İleri'yi tıklayın.
    5. External (SSL Certificate) [Harici (SSL sertifikası)] seçin.
    6. İleri'yi tıklayın.
    7. Son'u tıklayın.

Sophos Mobile

Sophos Mobile'ı Güvenli LDAP hizmetine bağlama talimatları için Connecting Sophos Mobile to Google Cloud Identity / Google Cloud Directory using Secure LDAP (Sophos Mobile'ı Güvenli LDAP kullanarak Google Cloud Identity/Google Cloud Directory'ye bağlama) başlıklı makaleyi inceleyin.

Splunk

Splunk'ı Güvenli LDAP hizmetine bağlarken Splunk 8.1.4 veya sonraki bir sürümü kullandığınızdan emin olun. Splunk 8.1.3 sürümü gibi eski Splunk sürümleri kullanılırken LDAP sunucusuna aşırı sayıda LDAP sorgusu gönderilebilir. Bu durum, LDAP kotanızın hızlı bir şekilde tükenmesine neden olabilir. Splunk 8.1.3 sürümüyle ilgili sorunlar hakkında daha fazla bilgi için Splunk'taki bilinen sorunlar başlıklı makaleyi inceleyin.

Aşağıdaki adımları uygulayın:

  1. LDAP istemci anahtarı ve sertifika dosyalarını /home/splunk/splunkadmin/etc/openldap/certs/ldap-client.key ve /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.cert konumlarına kopyalayın.

    $ 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.*

  2. Aşağıdaki yapılandırmaları eklemek için ldap.conf dosyasını düzenleyin:

    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

  3. Kullanıcının /home/splunkadmin/.ldaprc dosyasına aşağıdaki yapılandırmaları ekleyin:

    TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
    TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem

  4. Splunk web kullanıcı arayüzünü kullanarak LDAP stratejisini ekleyin. Aşağıdaki ayrıntıları girip Kaydet'i tıklayın:

Ad

Google Secure LDAP

Düzenleyen

ldap.google.com

Port (Bağlantı noktası)

636

SSL etkin

İşaretli

Bağlantı sırası

1

Bind DN

Google Yönetici konsolunda oluşturduğunuz erişim bilgilerini girin.

Bind DN şifresi

Google Yönetici konsolunda oluşturduğunuz erişim bilgilerini girin.

Base DN (Ana DN)

DN biçiminde alan adınız (örneğin, example.com alanı için dc=example,dc=com)

Kullanıcı tabanı filtresi

Kullanıcılarınızı filtrelemek istediğiniz nesne sınıfının Kullanıcı tabanı filtresini girin.

Kullanıcı adı özelliği

uid

Gerçek ad özelliği

displayname

E-posta özelliği

posta

Grup eşleme özelliği

dn

Grup temel DN'si

DN biçiminde alan adınız (örneğin, example.com alan adı için ou=Groups,dc=example,dc=com)

Statik grup arama filtresi

Statik gruplarınızı filtrelemek istediğiniz nesne sınıfının Statik grup arama filtresini girin.

Grup adı özelliği

cn

Statik üye özelliği

üye

SSSD (Red Hat Enterprise ve CentOS)

SSSD, kullanıcı kimlik doğrulaması sırasında kullanıcı hakkında daha fazla bilgi almak için bir kullanıcı araması gerçekleştirir. Bu LDAP istemcisinde kullanıcı kimlik doğrulamasının doğru şekilde çalıştığından emin olmak için Kullanıcı kimlik bilgilerini doğrula seçeneğinin etkin olduğu tüm kuruluş birimlerinde Kullanıcı bilgilerini oku ve Grup bilgilerini oku seçeneklerini etkinleştirmeniz gerekir. (Talimatlar için Erişim izinlerini yapılandırma başlıklı makaleye bakın.)

Red Hat 8 veya CentOS 8'deki bir SSSD istemcisini Güvenli LDAP hizmetine bağlamak için:

  1. SSSD istemcisini Güvenli LDAP hizmetine ekleyin:
    1. Google Yönetici konsolunda, Uygulamalar > LDAP > İSTEMCİ EKLE'ye gidin.
      Şirket hesabınızla (kişisel Gmail hesabınızla değil) oturum açtığınızdan emin olun.
    2. İstemci ayrıntılarını girip DEVAM'ı tıklayın.
    3. Erişim izinleri'ni yapılandırın:
      Kullanıcı kimlik bilgilerini doğrulama - Tüm alan
      Kullanıcı bilgilerini okuma - Tüm alan
      Grup bilgilerini okuma - Açık
    4. LDAP İSTEMCİSİ EKLE'yi tıklayın.
    5. Oluşturulan sertifikayı indirme başlıklı makaleyi inceleyin.
    6. İSTEMCİ AYRINTILARINA GİT'i tıklayın.
    7. Hizmet durumunu AÇIK olarak değiştirin.
  2. Bağımlılıkları yükleyin:

    dnf install openldap-clients sssd-ldap
    install -d --mode=700 --owner=sssd --group=root /etc/sssd/ldap


    Sertifika .zip dosyasının sıkıştırmasını açın ve .crt ile .key dosyalarını /etc/sssd/ldap'a kopyalayın.
  3. (İsteğe bağlı) ldapsearch ile test edin:

    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


    İstendiğinde kullanıcının Google şifresini girin.

    Not: Kullanıcıya Google Workspace Enterprise veya Cloud Identity Premium lisansı atanmış olmalıdır.

  4. Aşağıdaki içeriklerle /etc/sssd/sssd.conf dosyasını oluşturun:

    [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

  5. İzinleri ve SELinux etiketlerini güncelleyin:

    chown 0:0 /etc/sssd/sssd.conf /etc/sssd/ldap/*
    chmod 600 /etc/sssd/sssd.conf /etc/sssd/ldap/*
    restorecon -FRv /etc/sssd

  6. SSSD'yi yeniden başlatın:

    systemctl restart sssd
  7. Test edin:

    ssh'den sunucuya:

    ssh -l user@example.com {HOSTNAME}

Sorun giderme

  1. SSSD sürümünü kontrol edin (1.15.2 veya daha yeni olmalıdır):

    # sssd --version
    2.2.3

  2. RHEL/CentOS'te (veya SELinux'un uygulanmasına sahip herhangi bir dağıtımda), SSSD yapılandırma dosyaları, sertifika dosyası ve anahtarın, sssd_conf_t rolü tarafından erişilebilen bir dizinde olması gerekir:

    # egrep "object_r:sssd_conf_t" /etc/selinux/targeted/contexts/files/file_contexts

    /var/log/audit/audit.log dosyasında AVC reddetme mesajları olup olmadığına bakın.

  3. /etc/nsswitch.conf dosyasında passwd, shadow, group ve netgroup varlıkları için "sss" olup olmadığını kontrol edin:

    passwd: files sss
    shadow: files sss
    group: files sss
    netgroup: files sss


    Burada, yerel dosyalar LDAP kullanıcılarını geçersiz kılar.
  4. Yapılandırma hataları için /var/log/sssd.conf dosyasını kontrol edin:

    Örnek:
    [sssd] [sss_ini_add_snippets] (0x0020): Config merge error: File /etc/sssd/sssd.conf did not pass access check. (Yapılandırma birleştirme hatası: /etc/sssd/sssd.conf dosyası, erişim kontrolünden geçemedi.) Skipping. (Atlanıyor.)

    İşlem: .conf dosyasını chmod 600 yapmanız gerekir.

    Örnek:
    [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}'. ("domain/{DOMAIN}" bölümünde "ldap_groups_use_matching_rule_in_chain" özelliğine izin verilmiyor.) Check for typos. (Yazım hatası olup olmadığını denetleyin.)

    [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}'. ("domain_{DOMAIN}" bölümünde "ldap_initgroups_use_matching_rule_in_chain" özelliğine izin verilmiyor.) Check for typos. (Yazım hatası olup olmadığını denetleyin.)

    Yapılacak İşlem: Desteklenmeyen grup eşleşmesiyle ilişkili LDAP uzantılarını sssd.conf dosyasından kaldırın.

  5. Check /var/log/sssd_{DOMAIN}.log for LDAP/network/auth errors. (Check /var/log/sssd_{DOMAIN}.log dosyasında LDAP/ağ/kimlik doğrulama hataları olup olmadığını kontrol edin.)

    Örnek:

    [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)]

    Yapılacak İşlem: ssd.conf dosyasına "ldap_tls_reqcert = never" değerini eklemeniz gerekir.

    Hataların ayrıntı düzeyini artırmak için domain bölümü altındaki ssd.conf öğesine "debug_level = 9" değerini ekleyin ve sssd'yi yeniden başlatın.

SSSD (diğer Linux dağıtımları)

SSSD, kullanıcı kimlik doğrulaması sırasında kullanıcı hakkında daha fazla bilgi almak için bir kullanıcı araması gerçekleştirir. Bu LDAP istemcisinde kullanıcı kimlik doğrulamasının doğru şekilde çalıştığından emin olmak için Kullanıcı kimlik bilgilerini doğrula seçeneğinin etkin olduğu tüm kuruluş birimlerinde Kullanıcı bilgilerini oku ve Grup bilgilerini oku seçeneklerini etkinleştirmeniz gerekir. (Talimatlar için Erişim izinlerini yapılandırma başlıklı makaleye bakın.)

Bir SSSD istemcisini Güvenli LDAP hizmetine bağlamak için:

  1. SSSD'nin 1.15.2 veya daha yeni bir sürümünü yükleyin.

    $ sudo apt-get install sssd
  2. İstemci sertifikası ve anahtar dosyalarınızın /var/ldap-client.crt ve /var/ldap-client.key olarak adlandırıldığını ve alanınızın example.com olduğunu varsayarsak /etc/sssd/sssd.conf dosyasını aşağıdaki gibi bir yapılandırmayla düzenleyin:


    [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

  3. Yapılandırma dosyasının sahipliğini ve iznini değiştirin:

    $ sudo chown root:root /etc/sssd/sssd.conf
    $ sudo chmod 600 /etc/sssd/sssd.conf

  4. SSSD'yi yeniden başlatın:

    $ sudo service sssd restart

İpucu: Google Compute Engine'de harici IP adresi olmayan Linux bilgisayarlarda SSSD modülünü kullanıyorsanız Google hizmetlerine dahili erişiminiz etkin olduğu sürece Secure LDAP hizmetine bağlanmaya devam edebilirsiniz. Ayrıntılı bilgi için Özel Google Erişimi'ni yapılandırma başlıklı makaleyi inceleyin.

macOS

macOS istemcisini, Güvenli LDAP hizmetini kullanarak kullanıcı hesabı kimlik doğrulaması için bağlamak üzere aşağıdaki adımları uygulayın.

Sistem gereksinimleri

  • macOS, Catalina Sürüm 10.15.4 veya daha yeni bir sürümde olmalıdır.
  • Hazırlık aşamasındaki 1. adımı tamamlamak için Google süper yönetici kullanıcı kimliği gerekir.
  • Bu yapılandırmayı gerçekleştirmek için yerel yönetici izinlerine ihtiyacınız vardır.

İçindekiler:

Hazırlık aşaması

Bu bölümdeki talimatlar, macOS kimlik doğrulamasının Güvenli LDAP hizmeti ile manuel olarak ayarlanmasına ve test edilmesine odaklanmaktadır.

1. adım: Google Yönetici Konsolu'nda macOS'i LDAP istemcisi olarak ekleyin

Talimatlar için LDAP istemcileri ekleme başlıklı makaleyi inceleyin veya bu Güvenli LDAP demosunu izleyin. Bu işlem sırasında otomatik olarak oluşturulan bir TLS istemci sertifikası da indirirsiniz.

2. adım: Sertifikayı sistem anahtarlığına aktarın

  1. Sertifikayı (1. adımda indirilen zip dosyası) ve anahtarı macOS makinesine kopyalayın.
    İpucu: Sertifika ve anahtar dosyalarını bulmak için dosyanın sıkıştırmasını açın.
  2. Anahtar çiftini sistem anahtar zincirine aktarın:
    1. Anahtarı ve sertifikayı bir PKCS 12 (p12) dosyasına dönüştürün. Terminalde aşağıdaki komutu çalıştırın:

      openssl pkcs12 -export -out ldap-client.p12 -in ldap-client.crt -inkey ldap-client.key

      İpucu: .p12 dosyasının adını not edin.

      Sistem sizden bir şifre girmenizi ister. p12 dosyasını şifrelemek için bir şifre girin.

    2. Anahtar Zinciri Erişimi uygulamasını açın.

    3. Sistem anahtarlığını tıklayın.

    4. Dosya > Öğeleri İçe Aktar seçeneğini tıklayın.

    5. Yukarıda oluşturulan ldap-client.p12 dosyasını seçin.

    6. İstenirse, sistem anahtar zincirinin değiştirilmesine izin vermek için yönetici şifresini girin.

    7. .p12 dosyasının şifresini çözmek için yukarıda oluşturduğunuz şifreyi girin.

      Not: Anahtar listesinde yeni bir sertifika ve ilişkili özel anahtarın görünmesini bekleyebilirsiniz. Bunun adı, LDAP Client (LDAP İstemcisi) olabilir. Aşağıdaki sonraki adım için sertifikanın adını yazın.
    8. Aşağıda belirtilen uygulamaları eklemek için özel anahtarın erişim denetimini ayarlamak üzere bu makaledeki ldapsearch (macOS) bölümünde 6. adımı uygulayın. Gizli anahtar Tüm Öğeler kategorisinde gösterilmiyorsa Sertifikalarım kategorisine geçmeyi deneyin ve ilgili sertifikayı genişleterek doğru gizli anahtar girişini bulun.

      Talimatlarda belirtildiği gibi, ldapsearch uygulaması yalnızca sorun giderme gerektiğinde geçerlidir ve başka amaçlarla kullanılamaz. Bu bölüm genellikle kullanıcılara macOS'e erişim izni verilmeden önce kaldırılır.

      Erişim Kontrolü listesine aşağıdaki üç uygulama eklenmelidir:

      /System/Library/CoreServices/Applications/Directory Utility
      /usr/libexec/opendirectoryd
      /usr/bin/dscl
  3. /etc/openldap/ldap.conf dosyasına bir satır ekleyin. "LDAP Client"ın, .p12 dosyası içe aktarıldıktan sonra macOS Anahtar Zinciri Erişimi uygulamasında gösterilen sertifika adıyla tam olarak aynı olduğundan emin olun (ad, oluşturulan sertifikanın X.509 Konu Ortak Adı'ndan gelir):

    sudo bash -c 'echo -e "TLS_IDENTITY\tLDAP Client" >> /etc/openldap/ldap.conf'

3. adım: Kimlik doğrulama için cihazı Google dizinine yönlendirin

Yeni bir LDAP dizin düğümü oluşturmak için Directory Utility uygulamasını açın:

  1. Kilit simgesini tıklayarak gerekli değişiklikleri yapın ve şifrenizi girin.
  2. LDAPv3'ü seçin ve ayarları düzenlemek için kalem simgesini tıklayın.
  3. Yeni… seçeneğini tıklayın.
  4. Sunucu adı olarak ldap.google.com yazın, SSL kullanarak şifrele'yi seçin ve Manuel'i tıklayın.
  5. Yeni sunucu adını seçin ve Düzenle… seçeneğini tıklayın.
  6. Yapılandırma adı için Google Secure LDAP gibi açıklayıcı bir ad girin.
  7. SSL kullanarak şifrele'yi seçin ve bağlantı noktasının 636 olarak ayarlandığından emin olun.
  8. Arama ve Eşlemeler sekmesine gidin.
    1. Bu LDAPv3 sunucusuna erişmek için açılır listesinden RFC2307'yi seçin.
    2. Sizden istendiğinde alanla ilgili bilgileri Arama Tabanı Son Eki bölümüne girin. Örneğin, zomato.com alan adı için dc=zomato,dc=com girin.
    3. Tamam'ı tıklayın.
    4. Kullanıcılar kayıt türü altında özellikleri yapılandırın:
      1. Kayıt Türleri ve Özellikler bölümünde Kullanıcılar'ı seçin ve "+" düğmesini tıklayın.
      2. Pop-up pencerede Özellik Türleri'ni seçin, GeneratedUID'yi belirleyin ve ardından Tamam'ı tıklayarak pop-up pencereyi kapatın.

        GeneratedUID, genişletildikten sonra Kullanıcılar altında gösterilmelidir.
      3. GeneratedUID'yi ve sağdaki kutuda "+" simgesini tıklayın.
      4. Metin kutusuna apple-generateduid yazıp Enter tuşuna basın.
      5. Kullanıcılar düğümünün altında NFSHomeDirectory özelliğini tıklayın.
      6. Sağdaki ekranda bu özelliğin değerini #/Users/$uid$ olarak güncelleyin.
      7. Değişiklikleri kaydetmek için Tamam'ı tıklayın ve şifrenizi girin.
  9. Directory Utility (Dizin Yardımcı Programı) penceresinde yeni LDAP yapılandırmasını ayarlayın:
    1. Arama Politikası sekmesine gidin.
    2. Değişiklik yapmak için kilit simgesini tıklayın ve istendiğinde geçerli kullanıcının şifresini girin.
    3. Açılır liste seçeneğini Arama Yolu'ndan Özel yol'a değiştirin.
    4. Kimlik Doğrulama sekmesini açıp "+" simgesini tıklayın.
    5. Dizin alanları listesinden /LDAPv3/ldap.google.com simgesini seçin ve Ekle'yi tıklayın.
    6. Uygula düğmesini tıklayın ve istenirse yönetici şifrenizi girin.
  10. DDIG-MD5, CRAM-MD5, NTLM ve GSSAPI SASL kimlik doğrulama mekanizmalarını devre dışı bırakmak için aşağıdaki dört komutu çalıştırın. macOS, Google Güvenli LDAP hizmetini kullanarak kimlik doğrulamak için Basit Bağlama'yı kullanır:

    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

  11. OpenDirectory yapılandırmasını yeniden yüklemek için bilgisayarı yeniden başlatın.

4. adım: Mobil hesap oluşturun (çevrimdışı oturum açmaya olanak tanır)

Herhangi bir Google Workspace veya Cloud Identity kullanıcısı, kullanıcı adı ve şifresi ile bir ağ hesabı (Google hesabı) kullanarak giriş yapabilir. Bu giriş işlemi için ağ bağlantısı gereklidir. Kullanıcının ağ bağlantısıyla veya ağ bağlantısı olmadan oturum açması gerekiyorsa taşınabilir hesap oluşturulabilir. Mobil hesap, ağa bağlı olsanız da olmasanız da oturum açmak için ağ hesabınızın (Google Hesabı) kullanıcı adını ve şifresini kullanmanıza olanak tanır. Daha fazla bilgi için Mac'te mobil hesap oluşturma ve yapılandırma başlıklı makaleyi inceleyin.

Güvenli LDAP kullanıcıları için taşınabilir hesap oluşturma:

  1. Güvenli LDAP sunucusuna bağlanmak ve bir ana yol ile mobil hesaplar ayarlamak için aşağıdaki komutu çalıştırın:

    sudo /System/Library/CoreServices/ManagedClient.app/Contents/Resources/createmobileaccount -n $uid -v

    İpucu: $uid yerine, kullanıcının Google Hesabı ile ilişkili e-posta adresinin kullanıcı adı kısmını girin. Örneğin, jsmith@solarmora.com adresinde jsmith kullanıcı adı kısmıdır.

  2. SecureToken yönetici kullanıcı adı istendiğinde yönetici kullanıcı adınızı girin ve bir sonraki istemde şifrenizi girin. Bu işlem, FileVault'a $uid değerini ekler. macOS diski şifrelenmişse bu işlem gereklidir.

5. adım: (İsteğe bağlı) Giriş ekranı tercihini ayarlayın

  1. Sol alttaki Sistem tercihleri > Kullanıcılar ve Gruplar > Giriş Seçenekleri'ne gidin.
  2. Yönetici kimlik bilgilerini sağlayarak kilidi açın.
  3. Giriş penceresini şu şekilde göster: seçeneğini Ad ve şifre olarak değiştirin.

6. adım: Cihazınızı yeniden başlatın ve oturum açın

  1. Cihazın internete bağlı olduğundan emin olun. İnternet bağlantınız yoksa güvenli LDAP kullanıcısı için oturum açma işlemi çalışmaz.
    Not: İnternet bağlantısı yalnızca ilk giriş için gereklidir. Sonraki girişler internet erişimi olmadan yapılabilir.
  2. Kimlik doğrulama için Secure LDAP kullanacak şekilde yapılandırılmış kullanıcı hesabıyla cihazda oturum açın.

Dağıtım aşaması

Bu bölümdeki talimatlar, kullanıcılarınızın cihaz yapılandırmasını otomatikleştirmeye odaklanmaktadır. Aşağıdaki 1. ve 2. adımları, hazırlık aşamasında manuel yapılandırmanızı tamamladığınız macOS cihazda uygulayın.

1. adım: Apple Configurator 2'yi kullanarak sertifikalı bir Mac profili oluşturun

  1. Apple Configurator 2 uygulamasını, macOS kimlik doğrulamasını Güvenli LDAP ile manuel olarak yapılandırdığınız makineye yükleyin.
  2. Apple Configurator 2'yi açın, yeni bir profil oluşturun ve Certificate (Sertifika) bölümünde Configure (Yapılandır) seçeneğini tıklayıp önceden oluşturulmuş .p12 dosyasını içe aktarın.

    Not: .p12 dosyasında şifre bulunduğundan emin olun. Bu şifreyi, Sertifikanın Password (Şifre) bölümüne girin.

  3. Bu profili kaydedin.
  4. (M1 veya M2 işlemci kullanan cihazlarda bu adımı atlayıp 5. adıma geçin. ) Bu profili herhangi bir metin düzenleyicide açın ve aşağıdaki satırları ilk <dict> etiketine ekleyin:

    <key>PayloadScope</key>
    <string>System</string>


    Apple Configurator henüz macOS profillerini de desteklemediği için bu ayar eklenmektedir.
  5. İkinci <dict> etiketine, sertifika verilerine paralel olarak şu satırları ekleyin:

    <key>AllowAllAppsAccess</key>
    <true/>


    Böylece, bu sertifikaya tüm uygulamalar tarafından erişilebilir.

2. adım: Directory yapılandırma dosyasını (plist) xml'ye dönüştürün

Bu adımda, hazırlık aşamasının 3. adımında tamamladığınız tüm manuel yapılandırmaları bir XML dosyasına ayıklarsınız. Bu dosyayı ve yukarıdaki 1. adımda oluşturulan Mac profilini kullanarak diğer macOS cihazlarını otomatik olarak yapılandırabilirsiniz.

  1. /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist dosyasını masaüstünüze veya başka bir yere kopyalayın.
  2. İstediğiniz metin düzenleyicide inceleyebilmek için XML'ye dönüştürün. Terminal'de aşağıdaki komutu çalıştırın:

    sudo plutil -convert xml1 <path>/ldap.google.com.plist

    Dosyaya <path>/ldap.google.com.plist olarak erişebilirsiniz.
  3. XML dosyasını açabilmek için yukarıdaki dosyanın iznini değiştirin. Boş bırakılmadığından emin olun.

3. adım: Son kullanıcı cihazlarınızdaki yapılandırmayı otomatikleştirmek için bir Python komut dosyası oluşturun

Aşağıdaki python komut dosyasını kopyalayın ve bir python dosyası (.py dosyası) olarak kaydedin.

Not: Bu örnek komut dosyası, Python 3.10.x sürümüyle uyumlu olacak şekilde tasarlanmıştır. Bu komut dosyası olduğu gibi sağlanmıştır. Google destek ekibi, örnek komut dosyaları için destek sağlamaz.

Ldap_python_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' '*32, 32)
request.appendData_(NSData.dataWithBytes_length_(str.encode(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' ")

4. adım: Son kullanıcı cihazlarını otomatik olarak yapılandırın

Yapılandırmak istediğiniz diğer macOS cihazlara gidin ve aşağıdaki adımları uygulayın:

  1. 1. adımda oluşturulan Mac Profili dosyasını, 2. adımda oluşturulan XML yapılandırma dosyasını ve 3. adımdaki python komut dosyasını cihaza kopyalayın.
  2. Komut dosyası için gerekli bağımlılığı yüklemek üzere aşağıdaki komutu çalıştırın:
    python3 -m pip install pyobjc-framework-opendirectory
  3. Aşağıdaki komutu çalıştırın:
    sudo python </path/to/saved_python_script> </path/to/ldap.google.com.plist generated in step 2>
  4. Sertifikaları macOS sistem anahtar zincirine aktarmak için 1. adımda oluşturduğunuz Mac profili dosyasını çift tıklayın ve istendiğinde macOS yerel yönetici kimlik bilgilerinizi sağlayın. Ardından, hazırlık aşamasında belirlediğiniz .p12 şifresini girmeniz istenir.
  5. macOS makinesini yeniden başlatın.
  6. Hazırlık aşamasının 4. adımında belirtildiği şekilde mobil hesaplar oluşturun ve isteğe bağlı olarak hazırlık aşamasının 5. adımında belirtilen ek tercihleri ayarlayın.

Sınırlamalar ve yönergeler

  • macOS'te Google kimlik bilgilerini kullanarak oturum açan kullanıcıların Workspace hesabı kullanıcı adı, macOS kullanıcı profili kullanıcı kimliğinden farklı olmalıdır. Aksi takdirde oturum açmaları engellenir.
  • Bir kullanıcı Google kimlik bilgilerini kullanarak macOS'te oturum açmaya başladığında, kullanıcı şifresi yönetimi (örneğin, şifre sıfırlama veya kurtarma işlemleri) Google web sitesinde (örneğin, myaccount.google.com sayfasında veya Google Yönetici Konsolu'nda) gerçekleşmelidir. Şifre yönetimini üçüncü taraf bir çözüm kullanarak yapmayı tercih ederseniz en son şifrenin Google ile senkronize edildiğinden emin olun.
  • Yönetici, Bir sonraki oturum açma işleminde şifre değişikliği iste ayarı etkin durumdayken yeni bir kullanıcı oluşturursa veya mevcut bir kullanıcının şifresini sıfırlarsa kullanıcı, yönetici tarafından ayarlanan geçici şifreyi kullanarak Mac'te oturum açamaz.
    Geçici çözüm: Kullanıcının başka bir cihaz (ör. mobil cihazı veya başka bir masaüstü cihaz) kullanarak Google'da oturum açması, kalıcı bir şifre belirlemesi ve ardından yeni şifreyi kullanarak macOS'te oturum açması gerekir.
  • Yukarıdaki yapılandırmadan sonra ilk oturum açma sırasında ldap.google.com adresine erişilebilmesi için Mac'in çalışan bir internet bağlantısı olmalıdır. Mobil hesap oluşturmayı tercih ettiğiniz sürece, sonraki oturum açma işlemlerinde internet erişimi gerekmez.
  • macOS ile Google Güvenli LDAP entegrasyonu, macOS Catalina, Big Sur ve Monterey'de test edilmiştir.

Sorun giderme

Güvenli LDAP hizmetine bağlanırken sorun yaşıyorsanız aşağıdaki talimatları uygulayın.

1. adım: Bağlantıyı doğrulayın.

odutil kullanarak bağlantıyı doğrulayın.
Terminalde odutil show nodenames komutunu çalıştırın.
/LDAPv3/ldap.google.com durumunun çevrimiçi olduğunu doğrulayın. Online değilse telnet seçeneğini deneyin.

nc'yi kullanarak bağlantıyı doğrulayın.
Terminalde aşağıdaki komutu çalıştırın: nc -zv ldap.google.com 636
Bu yaklaşımı kullanarak Google'a bağlanamıyorsanız IPv4 kullanarak bağlanmayı deneyin.

Bağlantıyı IP4 ile doğrulayın.
Aşağıdaki adımları uygulayarak cihazınızı IPv4 kullanacak şekilde değiştirebilirsiniz:

  1. Sistem Tercihleri > Ağ > Kablosuz > Gelişmiş'e gidin.
  2. Gelişmiş menüsü altında, TCP/IP sekmesine gidin.
  3. Açılır listedeki seçimi IPv6'yı yapılandır'dan Yalnızca bağlantı yerel olarak değiştirin.
  4. Değişiklikleri kaydetmek için Tamam'ı ve ardından Uygula'yı tıklayın.
  5. ldapsearch bağlantısı ve geçerli arama yoluyla hizmet kimlik doğrulamasını kontrol edin.

2.adım: Dizin nesnelerini görebiliyor musunuz?

  1. Dizin Hizmeti'ni ve ardından Dizin Düzenleyici sekmesini açın.
  2. Açılır listeden /LDAPv3/ldap.google.com düğümünü seçin.
  3. Google alanınızdaki kullanıcıları ve grupları görüp göremediğinizi doğrulayın.

Java uygulamaları için yapılandırma talimatları

LDAP işlevi sunan çoğu Java tabanlı uygulama, istemci sertifikalarınızı uygulamanın anahtar deposuna yükleyerek istemci sertifikalarıyla kimlik doğrulayacak şekilde yapılandırılabilir. Tam yapılandırma dosyaları uygulamalar arasında farklılık gösterse de süreç genellikle benzerdir. Kurulum için OpenSSL ve Java Runtime Environment'ın yüklü olması gerekir.

  1. Sertifikayı ve anahtarları Java anahtar deposu biçimine dönüştürün. Bu işlem sırasında şifreleriniz istenecektir. Güvenli bir şifre seçin ve tüm istemlerde aynı şifreyi kullanın. İstemci anahtarı dosyanızın ldap-client.key olarak adlandırıldığını varsayarsak:

    macOS veya Linux kullanıyorsanız aşağıdaki komutları kullanın:

    $  openssl pkcs12 -export -out java-application-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.key
    

    Windows'da ise aşağıdaki komutları kullanın:

    $  certutil -mergepfx ldap-client.crt java-application-ldap.pkcs12
    

    Önemli: İki dosya (<CERT_FILE>.crt ve <CERT_FILE>.key) aynı dizinde bulunmalıdır. Ayrıca, hem key hem de crt'nin aynı ada (iki farklı uzantıyla) sahip olduğundan emin olun. Bu örnekte, ldap-client.crt ve ldap-client.key adları kullanılmıştır.

  2. Sertifikayı anahtar deposuna aktarın:

    $  keytool -v -importkeystore -srckeystore java-application-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore java-application-ldap.jks -deststoretype JKS
    
  3. Java özellikleri, uygulamaya bağlı olarak farklı şekillerde yapılandırılabilir. Bunları genellikle başlatmak için kullanılan "java" komut satırında -D seçeneğiyle ayarlayabilirsiniz. Uygulamanızla ilişkili Java özelliklerini ayarlayın:

    javax.net.ssl.keyStore = /<path-to>/java-application-ldap.jks
    javax.net.ssl.keyStorePassword = <password selected above>
    
  4. Temel yapılandırma talimatları bölümündeki bilgileri kullanarak uygulamanın LDAP bağlantı ayarlarını yapılandırın.

İsteğe bağlı: Proxy olarak stunnel kullanma

LDAP'de istemci sertifikasıyla kimlik doğrulama yöntemi sunmayan istemciler için proxy olarak stunnel'ı kullanın.

stunnel'i, istemci sertifikasını LDAP sunucusuna sağlayacak şekilde yapılandırın ve istemcinizi stunnel'e bağlanacak şekilde yapılandırın. İdeal olarak, stunnel'ı uygulamanızla aynı sunucularda çalıştırır ve yalnızca yerel olarak dinlersiniz. Böylece LDAP dizininizi bu sunucunun ötesinde kullanıma sunmazsınız.

Aşağıdaki adımları uygulayın:

  1. Stunnel'ı yükleyin. Örneğin, Ubuntu’da:

    $  sudo apt-get install stunnel4
    
  2. Aşağıdaki içeriklere sahip bir yapılandırma dosyası /etc/stunnel/google-ldap.conf oluşturun (ldap-client.crt'nin sertifika ve ldap-client.key'nin anahtar olduğu varsayılır):

    [ldap]
    client = yes
    accept = 127.0.0.1:1636
    connect = ldap.google.com:636
    cert = ldap-client.crt
    key =
    ldap-client.key

  3. Stunnel'ı etkinleştirmek için /etc/default/stunnel4 konumunu düzenleyerek ENABLED=1 ayarını yapın.

  4. Stunnel'ı yeniden başlatın.

    $  sudo /etc/init.d/stunnel4 restart
    
  5. Uygulamanızı ldap://127.0.0.1:1636'yı işaret edecek şekilde yapılandırın.

    Yukarıdaki yapılandırma dosyasında accept satırını da değiştirirseniz "1636"yı kullanılmayan herhangi bir bağlantı noktasıyla değiştirebilirsiniz. Yerel olarak iletişim kurdukları için istemci ile stunnel arasında StartTLS/SSL/TLS etkinleştirilmeden düz metin LDAP kullanmanız gerekir.

Not: Stunnel'ı ayrı bir sunucuda çalıştırmayı seçerseniz güvenlik duvarlarınızı yalnızca gerekli uygulamaların stunnel sunucunuza erişebileceği şekilde yapılandırmanız gerekir. Ayrıca, uygulamanız ile stunnel sunucuları arasındaki verilerin şifrelenmesi için stunnel'ı TLS ile dinleyecek şekilde de yapılandırabilirsiniz. Bu yapılandırmaların her ikisinin de ayrıntıları ortamınıza bağlıdır.

Sonraki adımlar

LDAP istemcisini Güvenli LDAP hizmetine bağladıktan sonra LDAP istemcisi için hizmet durumunu Açık olarak değiştirmeniz gerekir.

Sonraki adımlar için 5. LDAP istemcilerini Açık olarak değiştirin.

Not: Gerekirse LDAP istemcinizi hizmete bağlamaya çalışırken hatalarla karşılaşırsanız sorunları gidermek için ldapsearch, ADSI veya ldp.exe gibi basit araçları kullanabilirsiniz. Talimatlar için Bağlantı testi ve sorun giderme başlıklı makaleyi inceleyin.