2013-04-24 6 views
0

Linux Fedora 18을 실행하는 시스템에서 svn을 설정하려고했습니다. htpasswd를 사용하여 새 사용자를 만들고 추가했습니다. 기본적으로 내가 한 일은 다음과 같습니다.htpasswd : 잘못된 자격 증명이 생성되었습니다.

$ htpasswd -c passwd admin. 

여기서 passwd는 사용자 이름/암호 쌍을 포함하는 파일입니다. 기본적으로 htpasswd는 md5를 사용하여 암호를 암호화합니다. 그래서, 나중에 로그인을 시도 할 때 올바른 사용자 이름과 암호를 제공 했더라도 할 수 없었습니다. 다른 것들을 시도한 후에 같은 암호를 입력 한 일부 온라인 md5 생성기로갔습니다. 결과 문자열은 htpasswd에 의해 생성 된 문자열과 다릅니다. 수동으로 passwd 파일을 편집하고 md5 암호를 웹 사이트에서 가져 와서 성공적으로 로그인했습니다. htpasswd에 문제가 있습니까? 아니면 수정해야 할 시스템 설정이 있습니까?

+0

'-m''htpasswd'에 대해 암호 (기본값) .'' 옵션을 강제로 MD5 암호화하도록 제안합니다. 비록 그것이 기본적으로 사용해야한다고 생각. –

+0

-m을 사용해 보았습니다. 아무런 의미가 없었습니다. (( –

+0

'htpasswd'에 의해 생성 된 해시는 소금에 절인 것입니다. 물론 다른 암호를 얻습니다.) – mata

답변

2

구문은

htpasswd -c passwdfile username 

또는

htpasswd -cb passwdfile username yourpassword 

기본 해시 알고리즘은 아파치의 버전 2.2.18 (당신이 $의 apr1의 $ 접두사에 의해 식별 할 수)부터 MD5입니다. 그 전에 기본 해시는 unix crypt (접두사 없음)였습니다. 아파치 버전 < 2.2.18 경우 , 당신은 더 나은 당신이 (이렇게하면 havec 권한 등) 당신의 passwdfile에이 제대로 생성되는지 확인해야합니다 후 아마

htpasswd -cm passwdfile username 
htpasswd -cbm passwdfile username yourpassword 

와 MD5를 강제 것입니다.

온라인 도구 또는 htpasswd 명령 줄을 사용하여 MD5 해시를 생성하면 임의의 소금을 사용하기 때문에 매번 다릅니다.

관련 문제