首页 > 运维 > linux运维 > 正文

Linux如何实现用户登录双因素认证 Google Authenticator配置指南

P粉602998670
发布: 2025-07-18 08:26:01
原创
676人浏览过

linux系统可通过安装google authenticator实现ssh用户登录双因素认证(2fa)。一、安装工具包:在debian/ubuntu上使用sudo apt install libpam-google-authenticator,在centos/rhel上使用sudo yum install google-authenticator,并运行google-authenticator生成密钥和二维码。二、配置pam模块:在/etc/pam.d/sshd中添加auth required pam_google_authenticator.so以启用验证逻辑。三、调整ssh配置:在/etc/ssh/sshd_config中设置challengeresponseauthentication yes、usepam yes,并根据需求调整passwordauthentication,之后重启sshd服务。四、用户端配置:通过手机安装google authenticator应用并扫描二维码,获取动态验证码。五、测试登录流程:新开终端执行ssh命令测试,确保输入密钥或密码后还需输入验证码方可登录,以验证配置是否生效。

Linux如何实现用户登录双因素认证 Google Authenticator配置指南

Linux系统实现用户登录双因素认证(2FA)是一个提升安全性的有效方式,尤其适用于SSH远程登录等场景。使用Google Authenticator是一种常见且操作相对简单的方案。

Linux如何实现用户登录双因素认证 Google Authenticator配置指南

一、安装 Google Authenticator 工具包

要启用双因素认证,首先需要在你的 Linux 系统上安装 libpam-google-authenticator 包。大多数主流发行版的软件仓库中都有这个组件。

Linux如何实现用户登录双因素认证 Google Authenticator配置指南
  • Debian/Ubuntu:

    sudo apt update
    sudo apt install libpam-google-authenticator
    登录后复制
  • CentOS/RHEL:

    Linux如何实现用户登录双因素认证 Google Authenticator配置指南
    sudo yum install google-authenticator
    登录后复制

安装完成后,每个用户都需要单独运行一次初始化命令:

google-authenticator
登录后复制

它会生成一个二维码和密钥,并询问你是否启用一些可选设置,比如时间偏移、单次使用码等。建议都选择“Y”。


二、配置 PAM 模块支持验证逻辑

PAM(Pluggable Authentication Modules)是 Linux 中负责身份验证的核心模块之一。你需要修改 SSH 的 PAM 配置文件,使其调用 Google Authenticator 插件。

编辑文件:

sudo nano /etc/pam.d/sshd
登录后复制

在最上方添加一行:

auth required pam_google_authenticator.so
登录后复制

保存并退出。这一步表示 SSH 登录时将强制进行 Google Authenticator 验证。


三、配置 SSH 服务启用 ChallengeResponse 认证

为了让 SSH 支持一次性验证码输入,还需对 SSH 配置文件做调整。

Content at Scale
Content at Scale

SEO长内容自动化创作平台

Content at Scale 154
查看详情 Content at Scale

打开配置文件:

sudo nano /etc/ssh/sshd_config
登录后复制

确保以下几项被正确设置:

ChallengeResponseAuthentication yes
UsePAM yes
PasswordAuthentication no # 如果你希望只通过密钥+2FA登录
登录后复制

如果你使用 SSH 密钥登录,可以保留 PasswordAuthenticationyes,但推荐结合密钥与 2FA 使用以获得更高安全性。

最后重启 SSH 服务:

sudo systemctl restart sshd
登录后复制

四、用户端配置 Google Authenticator 应用

用户初次运行 google-authenticator 命令后,会输出一个二维码链接或直接显示二维码内容。此时可以在手机上下载并安装 Google Authenticator 应用:

  • Android 用户可在 Play 商店搜索安装。
  • iOS 用户可在 App Store 下载。

扫描二维码后,应用就会自动生成每30秒更新的一次性验证码。下次 SSH 登录时,除了正常的身份验证(如密码或密钥),还会提示输入当前的一次性验证码。


五、测试登录流程是否生效

建议先不要关闭原有的密码登录方式,而是新开一个终端窗口尝试登录,避免误操作导致无法进入系统。

你可以使用如下命令测试 SSH 登录:

ssh username@your_server_ip
登录后复制

如果一切正常,在输入密钥或密码之后,系统会提示你输入验证码。输入后即可成功登录。


基本上就这些步骤了。整个过程不复杂,但有些细节容易忽略,例如 PAM 和 SSH 的配置顺序、是否启用了 ChallengeResponse 等。只要一步步来,应该不会遇到太大问题。

以上就是Linux如何实现用户登录双因素认证 Google Authenticator配置指南的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号