• 用******户 使用了工具 Base64编解码
  • 开******发 使用了工具 MD5加密
  • 工******程 使用了工具 时间戳转换
  • 程******序 使用了工具 JSON格式化
  • 设******计 使用了工具 图片压缩
  • 产******品 使用了工具 URL编解码
  • 测******试 使用了工具 正则表达式
  • 运******维 使用了工具 密码生成器

HTpasswd在线密码生成器

编码加密
在线HTpasswd密码生成器,支持 SHA1/SHA256/MD5/bcrypt/crypt五种算法兼容,实时生成Apache/Nginx认证密码,快速获取标准化认证格式,所有处理在浏览器本地完成
HTpasswd密码生成SHA1SHA256MD5bcryptApacheApache认证Nginx认证
HTpasswd密码生成
显示模式:
使用说明

工具介绍

HTpasswd是Apache HTTP Server的用户认证密码文件工具,用于生成和管理HTTP基本认证(Basic Authentication)的用户密码。本工具支持bcrypt、SHA-256、SHA-1、Apache MD5(APR1)、标准MD5、crypt六种哈希算法,可实时生成符合标准的HTpasswd密码文件。所有生成操作均在浏览器本地完成,不上传任何数据,安全可靠。适用于Apache、Nginx等Web服务器的用户认证配置。

六种算法对比

算法安全性速度ApacheNginx说明
bcrypt最高支持支持最安全,推荐用于生产环境
SHA-256需模块支持SHA-2家族算法,安全性高
SHA-1原生支持支持Apache原生支持,兼容性好
Apache MD5(APR1)原生支持支持Apache默认格式,带盐值
标准MD5需模块支持标准MD5,$1$前缀
crypt支持支持传统Unix格式,兼容性最好

算法格式说明

bcrypt(推荐)username:$2y$10$salt+hash
最安全的算法,计算速度慢,抗暴力破解能力强
SHA-256username:{SHA256}base64hash
SHA-256哈希算法,安全性高,Nginx兼容
SHA-1username:{SHA}base64hash
SHA-1哈希算法,Apache原生支持
MD5username:$1$hash
标准MD5哈希,兼容性好
MD5 (Apache APR1)username:$apr1$salt$hash
Apache默认格式,带盐值的MD5变种
cryptusername:salthash
传统Unix crypt格式,兼容性最好

使用步骤

输入用户名和密码
在输入框中填写用户名和密码
选择算法
选择显示全部算法或单种算法
生成HTpasswd
点击「生成HTpasswd」按钮生成结果
4
复制或下载
点击复制按钮复制结果,或下载为 .htpasswd 文件

Apache配置示例

# 启用基本认证
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /path/to/.htpasswd
Require valid-user

# 只允许特定用户
Require user admin

Nginx配置示例

location /protected/ {
    auth_basic "Restricted Area";
    auth_basic_user_file /path/to/.htpasswd;
}

使用技巧

常见问题

Q1: 什么是HTpasswd?它有什么用?

HTpasswd是Apache HTTP Server提供的用户认证密码文件工具,用于生成和管理HTTP基本认证(Basic Authentication)的用户名和密码。当用户访问受保护的网页时,浏览器会弹出登录框,用户输入用户名和密码后,服务器会将其与.htpasswd文件中的记录进行比对验证。常用于保护网站后台、管理页面、私密文件等敏感资源的访问。

Q2: 为什么推荐使用bcrypt算法?

bcrypt算法是目前最安全的密码哈希算法之一,它具有以下优势:1) 计算速度慢,故意增加破解难度;2) 带有盐值,防止彩虹表攻击;3) 可调节计算强度(工作因子),随着硬件性能提升可增加计算量;4) 经过广泛的安全审查和验证。虽然bcrypt计算速度较慢,但对于密码认证这种低频操作来说,性能影响可以忽略不计,安全性却大大提高。

Q3: HTpasswd和HTdigest有什么区别?

HTpasswd使用基本认证(Basic Authentication),密码通过Base64编码传输,容易被拦截破解,需配合HTTPS使用。HTdigest使用摘要认证(Digest Authentication),密码通过MD5哈希后传输,不传输明文密码,安全性更高。但摘要认证在现代浏览器和服务器中的支持不如基本认证广泛,且配置更复杂。建议使用基本认证配合HTTPS,这是目前最常见的做法。

Q4: .htpasswd文件应该放在哪里?

.htpasswd文件应该放在网站根目录之外的位置,不能被用户通过URL直接访问到。例如,如果网站根目录是/var/www/html,那么.htpasswd可以放在/var/www/.htpasswd。这样即使服务器配置出现问题,用户也无法直接下载密码文件。同时要确保文件权限正确,只有Web服务器进程能够读取该文件。

Q5: 如何添加多个用户?

在.htpasswd文件中,每行代表一个用户,格式为username:password_hash。你可以使用本工具生成多个用户的密码,然后逐行添加到同一个.htpasswd文件中。每个用户可以使用不同的哈希算法,但建议统一使用同一种算法以便管理。点击「下载文件」按钮可以将所有结果保存为.htpasswd文件。

Q6: 我的密码会被上传到服务器吗?

不会。本HTpasswd密码生成器所有计算全程在浏览器本地独立完成,无需联网操作,全程不产生网络传输。用户名、密码和生成结果都不会发送、记录或缓存到任何服务器,全程严格保护隐私。关闭页面后所有数据即刻彻底清空消失。

应用场景

应用场景说明
网站后台保护保护网站管理后台、CMS系统等敏感页面
私密文件访问保护下载目录、文档库等私密文件
开发测试环境防止测试环境被搜索引擎或无关人员访问
API接口认证简单的API接口用户认证
内部系统企业内部系统的快速访问控制
客户专区为客户提供专属内容访问权限
临时保护网站维护期间的临时访问控制
Nginx认证Nginx服务器的auth_basic认证配置