htpasswd:创建了错误的凭据

问题描述:

我试图在运行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

语法

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散列时,每次都会有所不同,因为它使用随机盐。