2016-06-10 1 views
0

최근 LDAP 서버 (DSM 6을 실행하는 Synology NAS에서 Directory Server v2.1-2428, 최신 서브 버전 사용)의 최근 업데이트로 인해 암호를 변경할 수 없거나 새 사용자 암호를 포함하고 있습니다).암호를 변경하거나 PHP로 LDAP에 사용자 추가

업데이트 전에는 PHP ldap_add 또는 ldap_mod를 userPassword 속성과 함께 사용했습니다. 그러나 이제 새 userPassword를 만들려고 할 때 Warning: ldap_add(): Add: Constraint violation이라는 오류 메시지가 나타납니다. 데이터베이스가 SSHA을 받아 {crypt}$6$e49q9SvU$.pSl1C8Ew6WTu24yipUI8kjx7qv2GxWhKAUOBmuAVeRmJ1JV/WvWriVYZJeDDtBxekeepatdaKl0ulQdjsmCP.

이 의미 :

NAS의 관리자 GUI를 통해 새로운 사용자를 생성, 나는 (약간의 개인 정보 보호에 대한 수정) 다음과 같이 데이터베이스에 표시되는 userPassword에 항목을 찾아 볼 수 있습니다 -512 암호 항목이 맞습니까? > 제약 조건 위반 오류

  • 에 암호 알고리즘을 찾기 위해 노력 - userPassword에 과 같이 위에 표시로

    1. 정확히 같은 암호 해시를 추가 :

      것 나는 새로운 암호를 추가하려고했습니다 NAS의 소스 코드. 이로 인해 다음 줄이 나타납니다 : rootpw {CRYPT}$1$CL$0fRYicA9KsmHaiV1SRj5q/. 새 암호를 입력해도 작동하지 않습니다.

    2. 리눅스 명령 ldappasswd와 같은 다른 PHP 함수를 찾으십시오. 그러나 이것은 PHP에서는 존재하지 않습니다.

    물론 SSH-512와 같은 적절한 해싱/암호화 메커니즘을 사용하고 싶지만 Directory Server에서 지원되지 않는 기능과 지원되지 않는 기능을 잘 알고 있습니다.

    나는 누군가가 나에게 한발 더 나아갈 수 있기를 바란다. 더 명확히해야 할 일이 있으면 알려주세요.

  • 답변

    0

    결국 해결책은 솔루션을 찾는 데있어 Synology에 계속해서 도움을 요청하는 것이 었습니다. 그들은 v2.1-2428로 업데이트하기 전에 암호 정책을 다시 버전으로 변경했습니다. 이제 다시 작동합니다.

    최신 버전의 OpenLDAP와 호환되는 다른 솔루션을 사용할 수있게되면 공유 기능이 크게 향상 될 것입니다.

    0

    암호를 변경하려고 할 때의 제약 조건 위반이 Directory Server 암호 정책 시행처럼 보입니다. Directory Server 로그에는 오류에 대한 자세한 내용이 포함되어야하지만 이미 사용 된 암호 (마지막 3 개의 암호와 같은)를 거부하도록 정책이 설정되었을 수 있습니다. Directory Server 암호 정책은 길이, 재사용 안 함, 문자 집합의 변형, 단순한 단어 등 암호에 대한 많은 검사 및 제한을 적용 할 수 있습니다. 자세한 내용을 보려면 Synology Directory Server 설명서 또는 릴리스 정보를 확인해야 할 수 있습니다 디폴트의 ​​패스워드 정책.

    +0

    답변 해 주셔서 감사합니다. Directory Server의 고급 설정에는 비밀번호 정책을 설정하는 다양한 옵션이 있습니다. 그러나, 나는 그들 중 아무도 활성화되어 있지 않으므로 암호 선택에 아무런 제한이 없습니다. 로그 (/var/log/slapd.log)는 'Jun 10 21:12:33 IFMSA-NL slapd [29121] : DIGEST-MD5 공용 매크 프리 Jun 10 21:13:05 IFMSA-NL slapd [10237] : [main.c : 736] @ (#) $ OpenLDAP : slapd 2.4.40 (May 25 2016 17:16:08) $ root @ build1 : /source/openldap-2.4.x/servers/slapd' 그러나 userPassword를 추가하려고 시도한 순간부터 로그 항목이 없습니다. 이유는 없습니다 – SJDS

    +0

    Synology DSM 6.0 메모를 보면 비밀번호 강도 규칙이 추가되어 사용자가 사용할 수 있습니다. https://www.synology.com/en-global/knowledgebase/DSM/help/DirectoryServer/ldap_user. 내 NAS에서이 기능을 사용할 수 없으며 OpenLDAP에서도 작동하지 않습니다 ... 그러나 로그인 실패시 더 나은 진단을 받으려면 DSM에 옵션이있는 것으로 보입니다. 시도해 볼 수도 있습니다. –

    +0

    그래,하지만 내가 말한대로 아무 규칙도 활성화되어 있지 않다. 그래서 Synology가 후드 아래에서 뭔가를 바꿀 가능성을 제외하고 이것은 작동하도록 변경할 수있는 것으로 이끌지 않는다. "로그인 실패시 더 많은 정보 표시"옵션을 의미합니까? 즉, DSM에 로그인 할 때 오류 메시지가 표시됩니다. 그건 내가 말하고있는 문제가 아니야. userPassword 속성을 추가하고 PHP에서 Constraint 위반 오류가 발생했다. – SJDS

    관련 문제