Soru Bir LDAP hesabı nasıl devre dışı bırakılır?


LDAP posixAccount şemasını ve ilgili öznitelikleri kullanır ve bir hesabı devre dışı bırakmak için standart bir yol olup olmadığını merak ediyorum. Hesabın yeniden etkinleştirilmesi, eski şifreyi açıkça tekrar etkinleştirmelidir.

bunu biliyorum passwd --lock içindeki şifreli şifrenin önüne bir ünlem işareti ekler /etc/passwd. Aynı sözleşme LDAP girişinin userPasswd alanıyla çalışıyor mu?

Güncelleme: Altında PAM / NSS'yi biliyorum, sorumu özellikle LDAP sunucusunda hedeflendi. Hesap kilitlendikten sonra, kullanıcının LDAP sunucusuna (kendi kimlik bilgileriyle) kimliği doğrulanmış bir bağlantı açmasını istemiyorum. Bunun nedeni, çeşitli hizmetlerin LDAP için bu işlem için PAM kullanmadan basit kimlik doğrulama mekanizması olarak başarılı bir şekilde doğrulanmış bir bağlantı kullanmasıdır (bu, web arabirimleri ile ortaktır).


6
2017-09-01 08:17


Menşei




Cevaplar:


Heh.

Unix / Linux ve bir şeyler yapmak için standart bir yol. Komik delikanlısın. Biliyorum, biliyorum, birçok durumda standart bir şeyler yapmanın yolları var, ama LDAP kesinlikle bunlardan biri değil. LDAP Perl sloganıyla, "Bunu yapmak için birden fazla yol var" diye teker teker.

Aynı sözleşmeden / Etc / passwd (veya, içinde / Etc / gölge kesin olmak için) çalışacaktır. Sisteminizin yokluğu, hesap bilgilerini çözmek için PAM (kimlik doğrulaması için) ve NSS kitaplıklarını (ad arama için) ve kullanıcı uygulamaları için pam_ldap, pam_mysql, nss_files, nss_bdb, nss_mysql, nss_ldap veya başka bir kaynaktan geldiyse şeffaftır. Standart formda olduğu sürece.

Yani, LDAP söz konusu olduğunda ...

  • Bazıları kendi betiklerini yazmayı sever ldapmodify
  • Diğerleri gibi grafik müşterileri kullanır gq veya Luma
  • Diğerleri Perl ve Net :: LDAP veya diğer betik dillerini ve LDAP bağlantılarını kullanır
  • Diğerleri kullanın PHPMyAdmin ve benzer web arayüzleri

Tercih ettiğin yol ne? Passwd komutunu kullanırsanız, sisteminizi pam_ldap ve nss_ldap ile bağlamanız yeterlidir. Sonra tüm tanıdık programlar her zamanki gibi çalışmaya devam edecek.


3
2017-09-01 08:40



Bu, LDAP'de belirli hesapların devre dışı bırakılması sorununu nasıl çözer? Böylece PAM bunları devre dışı olarak tanır? - Fladi
"/ Etc / passwd (veya / etc / shadow in hassas olması için) 'den aynı sözleşme işe yarayacaktır." yardımcı olan çizgi. Eğer Raphaël'in eski şifreleri önek için bir yöntemi zaten varsa, o zaman onun sorusunu cevapladım. Yorumunuz ona nasıl yardımcı oluyor? :-) - Janne Pikkarainen
Teşekkürler ama ben LDAP sunucusunun kendisi PAM olmadan kendisiyle bağlantı için kimlik doğrulamasını yöneten bir kongre var mı diye merak ediyordum. PHP'de kod yazıyorum, böylece LDAP'yi değiştirmek için php_lpad bağlantısını kullanıyorum. - Raphaël Hertzog


Standart bir yol yoktur, ancak bunu gerçekleştirmenin birkaç yolu vardır: herbiri ldap.conf dosyasında bir yapılandırma seçeneği (veya dağıtımınıza bağlı olarak pam-ldap.conf ve pam_ldap oluşturma zamanı ayarları):

pam_filter: Etkin olmayan bir hesabı ifade eden LDAP özelliğiyle birlikte özel bir filtre kullanın.

pam_check_host_attr: pam_ldap, kullanıcı nesnesinde eşleşen "ana bilgisayar" özelliği olup olmadığını kontrol edecektir. Eğer bu şekilde uygularsanız, kullanıcı giriş yapabilmesi gerekiyorsa, ana makine adını bu özniteliğe eklemeniz / kaldırabilirsiniz. Bu onun şifresine dokunmazdı.

pam_check_service_attr: Bunu henüz kullanmadım ancak pam_check_host_attr gibi benzer bir şekilde çalışmalı.


3
2017-09-01 09:29



Teşekkürler ama ben LDAP sunucusunun kendisi PAM olmadan kendisine bağlantı için kimlik doğrulaması yöneten beri bir sözleşme vardı merak ediyordum ... - Raphaël Hertzog
Güncellemenizle ilgili olarak: İsterseniz, Janne Pikkarainen’in userPassword özniteliğini "!" Bu, kullanıcının şifreyi atmadan LDAP'ye doğrulanmış bir bağlantı yapmasını sağlayamaz. - Fladi


Denemekle ilgilenebilirsin slapo-pPolicy Önerildiği gibi (Şifre Politikası yerleşimi) İşte. Bu gerçekten bir çeşit standartAncak, yapmaya çalıştığınız şey için biraz fazla olabilir. Özellikle, ilginç özellik

pwdAccountLockedTime

   This attribute contains the time that the user's  account  was  locked.
   If  the  account has been locked, the password may no longer be used to
   authenticate the user to the directory.  If pwdAccountLockedTime is set
   to  000001010000Z,  the  user's account has been permanently locked and
   may only be unlocked by an administrator.

3
2017-10-19 14:27