htpasswd 是做什么的
htpasswd 是 Apache httpd 自带的命令行工具,用来生成 HTTP Basic 认证用的密码文件——每行一个 用户名:密码哈希,配合服务器配置就能给目录加上账号密码保护。如果你用的是 Nginx 或手头没装 Apache,没有这个命令时就可以在这里直接算出对应的密码串。
四种算法怎么选
MD5:Apache 自有的 MD5 变体,跨平台通用,是大多数情况下的推荐选项。crypt:传统 Unix crypt(),仅取密码前 8 位,安全性较弱,只在老式 Unix 服务器上需要。SHA-1:为兼容 Netscape/LDAP(ldif)而设计。plain:明文不做任何处理,仅 Windows、Netware、TPF 下的 httpd 支持,除非必须否则不要用。
这几种都不是为抵抗暴力破解设计的强哈希,htpasswd 文件务必放在 Web 根目录之外、避免被公开访问。