SSH 开启二次身份验证具体方法

目前来说,二次验证(这里就不做过多解释了)是比较常用的安全手段,通过设置二次验证(谷歌或其他工具),就可以有效的避免账户密码的泄露导致的安全问题。因为,每次登陆前都需要获取一次性验证码,如果没有验证码的话就无法成功登陆。

1安装 PAM 模块

# 时间与客户端进行校验

$ ntpdate pool.ntp.org  
# Ubuntu  
$ sudo apt install -y libpam-google-authenticator  
# CentOS7  
$ yum install -y epel-release  
$ yum install -y google-authenticator
1.2.3.4.5.6.

2生成二次验证代码

# 生成验证码  # 哪个账号需要动态验证码,请切换到该账号下操作  # -t: 使用 TOTP 验证  # -f: 将配置保存到 ~/.google_authenticator 文件里面  # -d: 不允许重复使用以前使用的令牌  # -w 3: 使用令牌进行身份验证以进行时钟偏移  # -e 10: 生成 10 个紧急备用代码  # -r 3 -R 30: 限速 - 每 30 秒允许 3 次登录  
$ google-authenticator -t -f -d -w 3 -e 10 -r 3 -R 30  
Warning: pasting the following URL into your browser exposes the OTP secret to Google:
 https://www.google.com/chart?chs=200x200&chld=M|0&cht=qr&chl=otpauth://totp/vagrant@vagrant%3Fsecret%3DKZ7QPA11115XTQJQGBFWAIUJBY%26issuer%3Dvagrant  
Your new secret key is: KZ7xxx7EI5123xxx123  
Your verification code is 90xx71  
Your emergency scratch codes are:  
 1571xx03  
 9968xx56  
 2319xx89  
 8321xx97  
 9730xx15  
 3424xx23  
 5667xx03  
 9408xx86  
 7502xx41  
 4677xx14
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.

3配置 SSH 服务启用两步验证

# 启用两步验证  
$ sudo vim /etc/pam.d/sshd  
# @include common-auth  # 将禁用密码身份验证  
auth required pam_google_authenticator.so  # 禁用密码验证  # 修改SSH配置文件  
$ sudo vim /etc/ssh/sshd_config  
Port 1090  
ChallengeResponseAuthentication yes  
PubkeyAuthentication yes  
PasswordAuthentication no  
AuthenticationMethods publickey,keyboard-interactive  
# 重启SSH服务  
$ sudo systemctl restart ssh.service
1.2.3.4.5.6.7.8.9.10.11.12.13.

4配置 sudo 二次验证

# 保存并退出  
$ sudo vim /etc/pam.d/common-auth  
auth required pam_google_authenticator.so  
# 重启SSH服务  
$ sudo systemctl restart ssh.service  
1.2.3.4.5.

5手机安装 Google 身份验证器

1. 通过此工具扫描上一步生成的二维码图形,获取动态验证码  
2. 之后,就可以使用手机进行二次认证了,才能登陆服务器了  
1.2.

6使用 Fail2ban 去屏蔽多次尝试密码的 IP

# 安装软件  
$ sudo apt install -y fail2ban  
# 配置文件  
$ vim /etc/fail2ban/jail.local  
[DEFAULT]  
ignoreip = 127.0.0.1/8  
bantime  = 86400  
findtime = 600  
maxretry = 5  
banaction = firewallcmd-ipset  
action = %(action_mwl)s  
[sshd]  
enabled = true  
filter  = sshd  
port    = 1090  
action = %(action_mwl)s  
logpath = /var/log/secure  
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.
# 重启服务  
$ systemctl restart fail2ban
1.2.

7从二次验证锁定中恢复

# 禁用特定用户的二步验证(无法访问身份验证器应用程序)  
$ sudo vim /etc/ssh/sshd_config  
AuthenticationMethods publickey,keyboard-interactive  
AuthenticationMethods publickey  
# 重启SSH服务  
$ sudo systemctl restart ssh.service  

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/221018.html<

(0)
运维的头像运维
上一篇2025-04-14 20:23
下一篇 2025-04-14 20:24

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注