htpasswd生成器
为HTTP基本认证创建安全的.htpasswd条目
htpasswd工具为Apache HTTP服务器的基本认证生成密码条目(.htpasswd文件)。这些文件包含保护Web目录、管理面板和开发环境的用户名:密码对。
什么是.htpasswd?
.htpasswd文件存储Apache mod_auth_basic模块使用的用户名和哈希密码。当用户尝试访问受保护目录时,Apache会请求凭据并验证。
✅ 支持的算法
- • bcrypt ($2y$):自适应成本因子,最安全的选项。推荐所有新设置使用
- • APR1 MD5 ($apr1$):Apache专用MD5变体。与旧版Apache兼容性好
- • SHA-1 ({SHA}):Base64编码的SHA-1哈希。简单的基本安全
- • crypt():传统Unix DES加密。最多支持8字符密码
📊 使用场景
- • 管理面板:保护wp-admin、phpMyAdmin或自定义管理区域
- • 预发布站点:保持开发和预发布环境私密
- • API端点:为REST API添加基本认证层
- • 静态文件:限制对敏感文档和下载的访问
⚠️ 安全提示
新htpasswd条目请始终使用bcrypt。APR1和SHA-1为向后兼容而支持,但安全性较弱。
🔄 算法比较
🔵
bcrypt ($2y$)
自适应成本,最难破解
新设置的最佳选择
🟢
APR1 MD5 ($apr1$)
带盐的1000次MD5迭代
Apache专用,兼容性好
🟡
SHA-1 / crypt
单次哈希
仅用于旧系统,不推荐
常见问题 ❓
如何使用生成的htpasswd条目?
在Web根目录外创建.htpasswd文件并粘贴条目。然后添加AuthType Basic、AuthName、AuthUserFile和Require valid-user指令。
应该选择哪个算法?
新设置请始终选择bcrypt。仅在Apache版本不支持bcrypt时(2.4之前)使用APR1。
一个文件可以有多个用户吗?
可以。每行添加一个条目。每个用户可以使用不同的算法。