1. 程式人生 > >配置Linux的SSH雙重認證

配置Linux的SSH雙重認證

enc tps 信息 ins con vim spa conf mage

  背景:雙因子認證(簡稱:2FA,以下簡稱2FA),在這裏其為SSH的第二重認證。2FA指的是密碼以及實物(信用卡、SMS手機、令牌或指紋等生物標誌)兩種條件對用戶進行認證的方法。通過兩種不同的認證程序,可以降低密碼泄露帶來的風險,大大提高了linux系統的安全!

一、配置前準備

  1、 準備一臺運行著的OpenSSH服務的linux終端。

  2、 安卓手機一臺。

二、linux上安裝Google身份驗證器

  1、 ubuntu上安裝Google身份認證器:

$ sudo apt-get install libpam-google-authenticator -y

  

  2、 CentOS上安裝Google身份認證器

#安裝EPEL軟件庫
$ sudo yum install epel-release -y

#安裝google-authenticator
$ sudo yum install -y google-authenticator

  

  3、 linux主機上運行Google身份驗證器

$ google-authenticator

技術分享

  Google身份驗證器會問一些問題,一直答 Y即可。圖中的應急備用驗證碼(圖中顯示為: emergency scratch codes)可以在你丟失了綁定的安卓設備的情況下恢復訪問。所以,一定要將應急備用驗證碼保存好!

三、為SSH服務器用Google身份驗證器

  1、 修改PAM配置文件

$ sudo vim /etc/pam.d/sshd


# Disallow non-root logins when /etc/nologin exists.
account    required     pam_nologin.so

# 添加這一行
auth       required     pam_google_authenticator.so

  

  2、 在SSH配置文件裏啟用 ChallengeResponseAuthentication

$ sudo vim /etc/ssh/sshd_config


ChallengeResponseAuthentication      yes

  

  3、 重啟SSH服務

$ sudo service ssh restart

  

四、在安卓設備上運行Google身份驗證器

  1、 在安卓應用市場搜索並安裝Google身份驗證器。

技術分享

  2、 在配置菜單輸入剛剛的配置信息

技術分享

  3、 添加完成後會得到6位數動態碼

技術分享

到此,雙因子認證配置完成!

配置參考鏈接:https://linux.cn/article-3725-1.html

配置Linux的SSH雙重認證