pam_ldap: getent 출력에서 ​​비밀번호 해시를 숨기는 방법

pam_ldap: getent 출력에서 ​​비밀번호 해시를 숨기는 방법

내 문제는 다음과 비슷합니다이것. 나는 사용한다pam_ldap사용자 인증을 위해. /etc/nsswitch.conf파일에는 다음이 포함됩니다.

passwd:         files ldap
group:          files ldap
shadow:         files ldap

getent passwd모든 것이 잘 작동하는 것 같지만 출력에서 ​​LDAP 사용자의 비밀번호 해시를 숨겨야 합니다 .

  1. 내가 읽고사람 5 pam_ldap그리고 유용한 /etc/ldap.conf파일 매개변수가 발견되지 않았습니다.
  2. 옵션을 읽고 찾았 sssd습니다 . 유용하지만 지금은 이러한 서비스를 설치하고 싶지 않습니다.nslcdenumerate

사용하면 비밀번호 해시를 숨길 수 있습니까?pam_ldap?


사용자 예 tester:

dn: cn=tester,ou=users,dc=example,dc=org
objectClass: inetOrgPerson
objectClass: person
objectClass: organizationalPerson
objectClass: top
objectClass: posixAccount
cn: tester
gidNumber: 10000
homeDirectory: /home/tester
sn: Tester
uid: tester
uidNumber: 10000
loginShell: /bin/bash
userPassword: {CRYPT}$1$......

내 openldap 액세스 구성:

access to attrs=userPassword
        by self write
        by anonymous auth
        by users none

access to * by * read

내 pam_ldap 구성:

uri     ldap://my_host
base    dc=example,dc=org
binddn  cn=admin,dc=example,dc=org
bindpw  myPass
ldap_version    3
port    389
scope   one
timelimit       30
bind_timelimit  10
bind_policy     soft
nss_connect_policy      persist
idle_timelimit  3600
nss_paged_results       yes
pagesize        1000
pam_filter      objectclass=posixAccount
pam_login_attribute     uid
pam_lookup_policy       yes
pam_password    md5
nss_initgroups_ignoreusers      root
nss_schema      rfc2307bis
nss_base_passwd ou=users,dc=example,dc=org?one
nss_base_shadow ou=users,dc=example,dc=org?one
nss_base_group  ou=groups,dc=example,dc=org?sub
ssl     no
TLS_REQCERT     allow

답변1

사용하지 마세요LDAP~을 위한그림자지도. 이는 전혀 필요하지 않습니다.pam_ldap사용자의 비밀번호는 LDAP 단순 바인딩 요청을 통해 확인할 수 있으므로 비밀번호 해시에 대한 읽기 권한이 필요하지 않습니다.

당신은 또한 사용을 고려할 수 있습니다SSD또는nss-pam-ldapd(또한 ~으로 알려진NSCD) 이는 PAM 스택을 사용하는 프로세스에서 LDAP 연결을 분리하기 때문입니다.

관련 정보