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?
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?
Yanıtlar:
ö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:
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.
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.
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.
Pdc.EXAMPLE.COM'da, Windows Server Destek Araçları'nı indirip yükleyin (özellikle ktpass.exe'ye ihtiyacınız olacak)
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ı.
Güvenli bir şekilde c: \ temp \ myhost.keytab dosyasını myhost dizinine kopyalayın ve pdc.EXAMPLE.COM dosyasından silin
Myhost'ta AD keytab'ı ana keytab'ınıza ekleyin:
ktutil kopyası /path/to/myhost.keytab /etc/kerberosV/krb5.keytab
/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
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
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.
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.
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:
login_krb5-or-pwd
için /usr/libexec/auth
- Ayrıca yapılandırma dosyaları ve şimdi keytab içinde /etc/heimdal
değil de /etc/kerberosV
önceki OpenBSD sürümlerde olduğu gibi.
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. heimdal
Ve login_krb5
paketlerini 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.conf
ve krb5.keytab
dosyalar /etc/heimdal
şimdi içine giriyor .