Hello everyone,
I have mistake that i delete Google Authentication Discourse on Mobile so Now i can’t login to Discourse.
My question is … Can we disable Two Factor Authentication by command line SSH ?
Thank you!
What happened to your backup codes?
Yes, you can do this by updating the enforce_second_factor site setting to “no”. Enter the rails console and run:
SiteSetting.enforce_second_factor = "no"
The available options for that setting are “no”, “staff”, and “all”.
我是新手,也遇到了同样的问题。我在手机上删除了双重认证,但没有保存备份代码。
目前我无法登录管理员后台。现在没有其他员工可以从仪表板禁用它。
能否有人详细解释一下如何使用这个命令?:
谢谢
要继续进行,您需要访问运行 Discourse 的服务器的 SSH 终端。您有该权限吗?
是的,我有,但我不清楚如何使用该命令。需要进入 Rails 控制台吗?事实上,我不了解 Rails 是如何工作的。
要访问 Rails 控制台,请通过 SSH 登录到您的服务器。为此,请在您的计算机上打开终端并运行:
ssh root@<your_forum_ip_address>
将 <your_forum_ip_address> 替换为您的 Discourse 站点的 IP 地址。
如果该命令成功执行,您将看到一个类似以下的提示符。您的 IP 地址或 Droplet 名称将显示在 testeleven 的位置:
root@testeleven:~#
输入 cd /var/discourse 并按回车键。
现在输入 ./launcher enter app 并按回车键。
您应该看到一个以类似以下内容结尾的提示符:/var/www/discourse#
在该提示符下,输入 rails c 并按回车键。此时您应该看到一个类似以下的提示符:pry(main)>。这就是 Rails 控制台。
要禁用强制双因素认证,请输入 SiteSetting.enforce_second_factor="no" 并按回车键。
要退出 SSH 会话,您需要在终端中三次输入 exit。第一次用于退出 Rails 控制台,第二次用于退出 Docker 容器,第三次用于退出 SSH 会话。
谢谢,说明非常清晰详细。我按以下步骤操作,但登录时仍要求双因素认证。不知问题出在哪里?
root@hoi-dap:/var/discourse# ./launcher enter app
root@hoi-dap-app:/var/www/discourse# rails c
[1] pry(main)> SiteSetting.enforce_second_factor='no'
=> "no"
[2] pry(main)> exit
root@hoi-dap-app:/var/www/discourse# exit
logout
抱歉,设置 SiteSetting.enforce_second_factor = "no" 无法解决您的问题。您需要删除您的用户对应的双因素认证记录。
为此,请进入 Rails 控制台,然后查找您的用户 ID。运行以下命令:
id = User.find_by(username: '<your_username>').id
将 <your_username> 替换为您的 Discourse 用户名。请确保保留引号。运行该命令后,您应该会看到一个数字返回,这就是您的用户 ID,它已被赋值给变量 id。
接下来,您需要找到与您的用户关联的 UserSecondFactor 记录。以下命令使用了您在第一条命令中设置的 id 变量:
second_factor = UserSecondFactor.find_by(user_id: id)
运行该命令后,您应该在控制台中看到一些输出,显示您的双因素认证记录。
现在删除该记录:
second_factor.destroy
运行该命令后,您可以退出控制台。之后您应该能够登录到您的网站。
如果在此过程中遇到任何问题,请告诉我们。
非常感谢,效果很好。
不过,我没有使用 second_factor.destroy 命令。相反,我提取了数据字段,手动输入 Authenticator 以重新生成双因素认证代码。
是的,它完美运行。为了增加安全性,我将重新创建新的验证器。
谢谢您。
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.


