7

我在 5 或 6 台服务器上安装了 Webmin,但几个月前决定安装两因素身份验证,以便使用手机上的 Google Authenticator 应用程序登录 Webmin。

令我惊讶的是,当我更换手机时,我丢失了 Google Authenticator 应用程序中的所有令牌。这实际上发生在我身上两次。我已经在其他地方重建了所有东西,但无法再在这台服务器上登录 Webmin。

我试图搜索谷歌,但没有答案。我尝试卸载 Webmin 并使用 RPM 重新安装。

重新安装 Webmin 后,它只保留相同的设置,这意味着我仍然需要不再在我的手机上的 Google Auth 令牌。

有任何想法吗?

我是否应该尝试打破我认为它需要工作的 Oauth 模块,或者这会给我带来更多问题?

4

5 回答 5

22

喜欢这里:http: //sourceforge.net/p/webadmin/discussion/600155/thread/512d81e9/

进入这个文件/etc/webmin/miniserv.conf,删除这一行:twofactor_provider=totp

而且,在 /etc/webmin/miniserv.users 中有这一行。根:x:0:::::::0:0: totp :HBL7W4RTG8T6FG8W:

我刚刚删除了 totp,所以该行显示为:root:x:0:::::::0:0::HBL7W4RTG8T6FG8W:

保存文件并重启 webmin:service webmin restart。

然后我可以使用 un/pw 重新登录并生成我的二维码。

于 2014-03-27T01:36:35.163 回答
8

更简单的修复:

0:0:totp:HBL7W4RTG8T6FG8W:

冒号之间的“HBL7W4RTG8T6FG8W”是您进行 Google Auth 的 KEY!

使用 Google 身份验证器时,您可以输入 KEY 或使用 QR 码。只需创建一个新的 Google 身份验证帐户并使用 THAT KEY。

完毕!无需重新启动任何东西。

享受!二氧化碳。P。

于 2016-06-06T13:19:44.307 回答
5

运行以下命令以删除两因素身份验证:

sed -i 's/totp//g' /etc/webmin/miniserv.users
sed -i '/twofactor_provider=totp/d' /etc/webmin/miniserv.conf
/etc/init.d/webmin restart
于 2017-02-10T18:59:07.213 回答
1

我意识到这有点晚了,但我想我还是会把它发布给任何有兴趣的人。

/etc/webmin/miniserv.users 中的条目应该是 Base32 格式的 TOTP 机密。

所以登录只需运行:

oathtool --totp -b 'SECRET' -v

引号之间的代码在哪里SECRET,它将吐出您的双因素令牌,使您可以登录。

-b 表示你在 Base32 中给它SECRET(十六进制是默认值)。

然后转到“Webmin->webmin 用户”以禁用 TFA 并以正常方式重新启用它。

或者,如果您愿意,您可以使用“qrencode”重新创建您的 google-authenticator 设置,而无需更改密码(如果一个组共享相同的 SECRET ...坏主意!!但这将节省您的培根,如果你们中的一个人被锁定了)。

$ qrencode -o ~/.totp-key.png "otpauth://totp/?secret=BASE 32 SECRET&issuer=Your name, etc."

注意。使用 -v 选项的“oathtool”允许您在 Base32 和 HEX 中查看 SECRET,因此您可以根据需要使用其中任何一个来设置任何 TFA 应用程序。还要确保您使用的机器的时间同步正确!

QED。

于 2017-02-17T16:16:55.297 回答
0

我禁用了 2FA,然后我无法登录,不仅来自 ssh 的 webmin 以及密码。

我应用了@Todd 的建议,重新启动 webmin 后,我完全看不到主登录页面。

幸运的是,我已经打开了一些其他会话。我使用下面的命令更改了root用户的密码,重新启动了webmin,一切正常。

/usr/share/webmin/changepass.pl /etc/webmin root myNewPassword

注意:申请风险自负。我有备份,所以我不必担心。我的服务器操作系统是 Ubuntu 14.04

于 2015-06-29T15:50:42.530 回答