前言
根据AdGuardHome文档中的说明,修改密码需要安装apache2然后执行htpasswd命令来生成密码,但是大多数的环境根本用不到apache2,特别是OpenWrt软路由的环境,因此我分享一个不需要安装apache2的方法。
原理说明
既然是用htpasswd生成密码,那么我们使用网页版的htpasswd生成密码不就可以了,但是遗憾的是我找遍了所有网页版htpasswd使用的算法与AdGuardHome都不一样。后来我找到了AdGuardHome密码的加密算法是Bcrypt,既然如此我们找到个网页版的Bcrypt工具试一下,经测试完全可以用于AdGuardHome密码算法。
Bcrypt加密工具
我这里使用的下面这个工具,理论上百度或谷歌一个Bcrypt在线加密工具都是没问题的。
修改AdGuardHome密码
每个平台上的AdGuardHome安装路径可能有所区别,我用的是OpenWrt环境,AdGuardHome配置文件在 /etc/AdGuardHome/AdGuardHome.yaml
,如果你不清楚可以全盘搜索一下 AdGuardHome.yaml
文件。
vi /etc/AdGuardHome/AdGuardHome.yaml
打开 AdGuardHome.yaml
文件,找到以下内容:
users:
- name: root
password: $2y$05$NXsf6fEZbU4eFmXOAmFSXe0Cdywzt6VPsk0vMJn/PLyGBfLXoIOVW
将root
替换成你想要的用户名,password:
后面的密文替换成上面Bcrypt加密工具生成的结果。
保存文件,并且重启AdGuardHome,再次登录就可以使用新设定的用户名和密码了。