htpasswd生成器

生成Apache .htpasswd条目 — 保护Web目录

分享:

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。

一个文件可以有多个用户吗?

可以。每行添加一个条目。每个用户可以使用不同的算法。