2013-04-24 73 views
0

我試圖在運行Linux Fedora 18的計算機上安裝svn。我使用htpasswd創建並添加了新用戶。所以基本上我做的是:htpasswd:創建了錯誤的憑據

$ htpasswd -c passwd admin. 

其中passwd是包含用戶名/密碼對的文件。默認情況下,htpasswd應該使用md5來加密密碼。所以,後來當我嘗試登錄時,即使提供了正確的用戶名和密碼,我也無法登錄。 嘗試不同的事情後,我去了一些在線md5生成器,輸入相同的密碼。生成的字符串與htpasswd生成的字符串不同。我手動編輯passwd文件,輸入我從網站獲得的md5密碼併成功登錄。htpasswd是否有問題或者需要修復某些系統設置?

+0

我建議嘗試'-m強制MD5加密密碼(默認).'選項'htpasswd'。我認爲它應該默認使用,但。 – 2013-04-24 09:59:33

+0

我試着用-m。這是不行的(((( – 2013-04-24 10:02:49

+0

'htpasswd生成的哈希被鹽醃,當然你得到了不同的密碼,只有這個沒有說什麼 – mata 2013-04-24 14:33:57

回答

2

語法

htpasswd -c passwdfile username 

htpasswd -cb passwdfile username yourpassword 

默認的哈希算法是因爲Apache 2.2.18的版本(你可以通過$ APR1 $前綴標識它)MD5。在此之前,默認散列是unix crypt(沒有前綴)。 如果你的Apache的版本是2.2.18 <,你最好強制MD5與

htpasswd -cm passwdfile username 
htpasswd -cbm passwdfile username yourpassword 

也許你應該檢查你的passwdfile中正確地創建(你havec權限等)。

當您使用在線工具或使用htpasswd命令行生成MD5散列時,每次都會有所不同,因爲它使用隨機鹽。