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

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

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