OpenBSD'yi Active Directory'ye Doğrulama


24

Düzenleme: Bu soru-cevap olarak yeniden biçimlendirildi. Herhangi biri bunu Topluluk Wiki'den tipik bir soruya değiştirebilirse, bu muhtemelen daha uygundur.

OpenBSD'yi Active Directory'ye karşı nasıl doğrulayabilirim?


Çok hoş! Bu çok ayrıntılı ve iyi yazılmış görünüyor. OpenBSD kullanmıyorum, ancak AD bölümleri yerinde görünüyor.
Evan Anderson,

Güzel bir rehber için +1, gerçekten bir soru olmasa da.
David Schmitt

Bunu bir Soru-Cevap formatına dönüştürmelisiniz.
Doug Luxem

Yine de Topluluk Wiki'sine rağmen değişti. Başka biri bunu değiştirebilirse, devam et.
sh-beta

Yanıtlar:


17

önsöz

Kerberos ile Active Directory'ye kimlik doğrulaması PAM kullanan sistemlerde oldukça basittir, ancak OpenBSD bunu yapmaz ve zorlaştırır. Bir tcpdump'tan, OpenBSD'nin bsd_auth sistemi tüm Kerberos kimlik doğrulama işlemini kullanırken, PAM sistemlerinin sadece ön kimlik doğrulama işlemini yaptığı görülüyor.

Her neyse, bu biraz zaman harcayacağınız bazı özlü talimatların size zaman kazandıracağını düşünmem biraz zaman aldı.

Başlamadan önce birkaç kısa not:

  • Giriş yapmadan önce kullanıcılar OpenBSD sisteminde bulunmalıdır. Kendiliğinden yaratılmadılar.
  • Kullanıcıların otomatik olarak oluşturulmasını istiyorsanız, Samba / Winbind sayfasına bakın. Sorundan (açıklanamayan çökmeler, ciddi günlük spamı, güvenilir olmayan kimlik doğrulaması) ondan başka bir şeyim olmadı, bu yüzden sadece mecbur kaldığımda kullanıyorum.
  • Bu OpenBSD 4.5 ve Windows Server 2003'te test edildi. Win2k ile çalışacağından ve YMMV ile çalışacağından eminim.
  • OpenBSD'nin bu sürümü Heimdal 0.7.2 kullanıyor. Yollar ve login.conf öğelerinin dışında kalan her şey muhtemelen aynı Heimdal'ı çalıştıran diğer * nix'lerde çalışacaktır, ancak yine YMMV.

Talimatlar

Bu adımlar, myuser@myhost.fqdn dosyasını EXAMPLE.COM etki alanına karşı doğrulamaya çalıştığınızı varsayar. Etki alanı denetleyicisi, pdc.EXAMPLE.COM'dir.

  1. Myhost adında bir Active Directory Kullanıcısı hesabı oluşturun (bu bir yazım hatası değildir, bu talimatlar bir Bilgisayar hesabıyla çalışmaz). Parola son kullanma tarihini devre dışı bırakın ve kullanıcının kendi şifresini değiştirmesine izin vermeyin. Şifreyi istediğiniz gibi ayarlayın - yakında değiştirilecektir.

  2. Kullanıcı hesabını yeni bir OU altında oluşturmak, Etki Alanı Kullanıcıları grubundan kaldırmak ve özel bir gruba eklemek iyi bir fikir olabilir. Bunların hepsi lezzet ve güvenlik planınızla ilgili.

  3. Pdc.EXAMPLE.COM'da, Windows Server Destek Araçları'nı indirip yükleyin (özellikle ktpass.exe'ye ihtiyacınız olacak)

  4. Pdc.EXAMPLE.COM’da şu komutu çalıştırın:

    ktpass -out c: \ temp \ myhost.keytab -princ host/myhost.fqdn@EXAMPLE.COM -mapuser myhost -pType KRB5 _NT_PRINCIPAL + rndpass

    Bu, myhost kullanıcısının parolasını rastgele bir şey (+ rndpass) olarak günceller, Kerberos ana "host/myhost.fqdn@EXAMPLE.COM" kullanıcısını Active Directory'deki "myhost" kullanıcısıyla eşleştirir ve ardından asıl ve özel anahtar bilgilerini -out keytab dosyası.

  5. Güvenli bir şekilde c: \ temp \ myhost.keytab dosyasını myhost dizinine kopyalayın ve pdc.EXAMPLE.COM dosyasından silin

  6. Myhost'ta AD keytab'ı ana keytab'ınıza ekleyin:

    ktutil kopyası /path/to/myhost.keytab /etc/kerberosV/krb5.keytab

  7. /Etc/krb5.conf dosyasını yapılandırın. İhtiyacınız olan çıplak minimum aşağıdadır. Mevcut birçok seçenek var, daha fazla ayrıntı için kılavuza bir göz atın. Bu sadece maksimum kabul edilebilir saati 5 dakikaya indirir, EXAMPLE.COM'u varsayılan bölge yapar ve Kerberos'a DNS ile Kerberos bölgeleri arasında nasıl çeviri yapılacağını söyler.

    [libdefaults]
    clockskew = 300
    default_realm = EXAMPLE.COM

    [realms]
    EXAMPLE.COM = {
    default_domain = EXAMPLE.COM
    }

    [domain_realm]
    .EXAMPLE.COM = EXAMPLE.COM

  8. Bir bilet alabileceğinizi doğrulayın:

    # kinit Administrator@EXAMPLE.COM
    Administrator@EXAMPLE.COM's Password:
    # klist
    Credentials cache: FILE:/tmp/krb5cc_0
    Principal: Administrator@EXAMPLE.COM

    Issued Expires Principal
    Jun 4 21:41:05 Jun 5 07:40:28 krbtgt/EXAMPLE.COM@EXAMPLE.COM

  9. Kerberos kimlik doğrulamasını kullanmak için /etc/login.conf dosyasını değiştirin. Login.conf yapılandırmanızın tamamı, sisteminizi nasıl kullandığınıza bağlı olarak değişir, ancak bir vanilya kurulumundan Kerberos'u kullanmaya gitmek için, bu satırı varsayılan giriş sınıfının altında düzenleyin ve yorumlayın:

    :tc=auth-defaults:\

    Ve üstüne ekleyin:

    :auth=krb5-or-pwd:\

    Bu, kullanıcı root olmadıkça ilk önce Kerberos'u kontrol eder. Kerberos başarısız olursa, yerel şifreleri kullanır.

  10. Doğrulamak istediğiniz kullanıcıları bu ana bilgisayarda ekleyin. Hem Active Directory'yi hem de yerel şifreleri kullanmalarını istemediğiniz sürece şifreleri boş bırakın (önerilmez).

    Mevcut kullanıcıların şifrelerini "chpass <user>" ve "Encrypted password:" değerlerini yıldız işaretiyle (*) değiştirerek boşaltabilirsiniz.

  11. SSH ve Sudo'yu test edin. Her ikisi de Active Directory kimlik bilgilerinizle kusursuz çalışmalıdır.

Hepsi bu kadar.

Bağlantılar

Birkaç faydalı site:


Görünüşe göre 2008 R2'de fırınlanmış ktpass.exe var. Belki 2008 de bu aşamada kesin olarak söyleyemiyor. Herhangi biri netleşebilirse, bu harika olurdu.
Aaron Mason,

Ayrıca, bunu 5.7'den sonra yapmak için Heimdal paketini kurmanız gerekir - 5.6'da tabandan kaldırıldı.
Aaron Mason

Önceki açıklamaya ek - ayrıca login_krb5 paketini yüklemek zorunda ve kopyalayacağımız login_krb5-or-pwdiçin /usr/libexec/auth- Ayrıca yapılandırma dosyaları ve şimdi keytab içinde /etc/heimdaldeğil de /etc/kerberosVönceki OpenBSD sürümlerde olduğu gibi.
Aaron Mason,

5

O zamandan bu yana birkaç şey değiştiği için yukarıdaki talimatlara yapılan güncelleme.

OpenBSD 5.6’da, kod kalitesi ile ilgili endişeler nedeniyle Heimdal’ı temel dağıtımdan çıkarmaya karar verildi ve hiç kimse denetimi yapmak için zaman harcamak istemiyordu. 5.7'de paket olarak kullanıma sunuldu (5.6 için, kaynaktan inşa etmeniz veya kaynağında nasıl yeniden etkinleştireceğinizi bulmanız gerekir). Bu nedenle, yukarıdaki talimatları izlemeden önce, aşağıdaki ek adımların tamamlanması gerekecektir:

-3. heimdalVe login_krb5paketlerini favori aynadan yükleyin .

-2. Kopya /usr/local/libexec/auth/login_krb5*için /usr/libexec/auth.

-1. Heimdal araçları çok kullanmayı düşünüyorsanız /usr/local/heimdal/bin, sistem yolunuza ekleyin . Aksi takdirde, takımları kullanırken tam yollarıyla referans gösterdiğinizden emin olun.

Ayrıca, krb5.confve krb5.keytabdosyalar /etc/heimdalşimdi içine giriyor .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.