0

0

Linux如何启用双因素认证_Linux双因素认证的设置方法详解

爱谁谁

爱谁谁

发布时间:2025-10-10 14:31:01

|

739人浏览过

|

来源于php中文网

原创

在Linux中启用双因素认证可显著提升安全性,通过密码和动态验证码结合防止未授权访问。2. 安装Google Authenticator的PAM模块后,用户运行初始化命令配置基于时间的一次性密码,并使用手机App扫描二维码绑定账户。3. 编辑/etc/pam.d/sshd文件添加auth required pam_google_authenticator.so以启用PAM验证。4. 修改/etc/ssh/sshd_config配置ChallengeResponseAuthentication yes和UsePAM yes,可选设置AuthenticationMethods实现公钥与2FA组合认证。5. 重启SSH服务后测试登录,输入密码再提供动态验证码完成双重验证,失败时可通过/var/log/auth.log排查问题。

linux如何启用双因素认证_linux双因素认证的设置方法详解

在Linux系统中启用双因素认证(2FA)能显著提升账户安全性,尤其适用于远程登录或管理敏感数据的场景。通过结合“你知道的”(密码)和“你拥有的”(动态验证码),即使密码泄露,攻击者也难以登录系统。下面详细介绍如何在Linux上设置基于PAM的双因素认证,使用Google Authenticator作为示例。

安装Google Authenticator工具

大多数Linux发行版支持通过包管理器安装Google Authenticator的PAM模块。该模块允许用户在SSH登录时输入一次性密码(OTP)。

以Ubuntu/Debian为例:

sudo apt update
sudo apt install libpam-google-authenticator

对于CentOS/RHEL/Fedora:

sudo yum install google-authenticator # CentOS 7及更早版本
# 或
sudo dnf install google-authenticator # Fedora/CentOS 8+

为用户配置双因素认证

切换到需要启用2FA的用户(如普通用户或root),运行初始化命令:

google-authenticator

执行后会提示以下问题,建议按如下方式选择:

  • 是否创建基于时间的一次性密码? → 输入 Y
  • 是否限制每30秒只能使用一次令牌? → 输入 Y
  • 是否增加时间偏移容忍度? → 输入 N(除非设备时间不同步)
  • 是否生成紧急备用码? → 输入 Y,并妥善保存
  • 是否更新认证文件? → 输入 Y

完成后终端会显示一个二维码和密钥。使用Google Authenticator、Authy等手机App扫描二维码,即可绑定账户。

配置PAM启用2FA验证

编辑SSH服务的PAM配置文件,使系统在登录时调用Google Authenticator验证。

sudo nano /etc/pam.d/sshd

在文件开头添加以下行:

auth required pam_google_authenticator.so

注意:不要删除原有的auth行,此行用于加载2FA验证模块。

修改SSH配置以启用挑战响应

编辑SSH主配置文件:

OneAI
OneAI

将生成式AI技术打包为API,整合到企业产品和服务中

下载
sudo nano /etc/ssh/sshd_config

确保以下配置项已设置:

  • ChallengeResponseAuthentication yes
  • UsePAM yes
  • AuthenticationMethods publickey,keyboard-interactive(可选:实现公钥+2FA组合认证)

若只希望密码用户也需2FA,保留默认认证方式即可;若想强制使用密钥+2FA,请设置AuthenticationMethods。

保存后重启SSH服务:

sudo systemctl restart sshd

测试双因素登录

从另一台设备使用SSH登录:

ssh username@your-server-ip

输入密码后,系统会提示:

Verification code:

打开手机上的认证App,输入当前6位验证码即可完成登录。

如果配置了publickey,keyboard-interactive,则先验证SSH密钥,再输入动态验证码。

若登录失败,请检查系统日志:

sudo tail -f /var/log/auth.log

基本上就这些。只要步骤正确,Linux系统的SSH登录就能成功加上双层防护。安全性和便利性的平衡可以通过是否启用备用码、是否结合密钥等方式灵活调整。

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

1349

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

702

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

294

2023.06.30

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

776

2023.07.05

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

572

2023.07.06

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

545

2023.07.20

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

297

2023.07.20

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

381

2023.07.25

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

72

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Rust 教程
Rust 教程

共28课时 | 4.5万人学习

PHP自制框架
PHP自制框架

共8课时 | 0.6万人学习

简单聊聊mysql8与网络通信
简单聊聊mysql8与网络通信

共1课时 | 801人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

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