2022年8月2日 星期二

【IT Notes】Ubuntu ssh登入+Google authenticator密碼雙認證


之前在設定VPN登入雙認證的時候用過Google authenticator,相較上一次,這次的需求相對比較單純,要在一台Linux主機上建立登入密碼的雙認證工具,使用者要登入該主機時,必須輸入本機密碼,然後再輸入OTP才能登入,會有此需求是因為原本的雙認證方式得用本機密碼+YubiKey,雖然YubiKey是很安全的東西,它是實體金鑰,對一台電腦來說,很難有人可以複製別人的一把實體金鑰,但缺點就是非常不方便、金鑰設定很麻煩,且除了會有耗損而發生感應不良的情況,一把小鑰匙弄掉了也很難找(之前就有離職同事搞丟讓我們都找不到),我自己使用的MacBook又發生讀取金鑰後無法出現輸入密碼的視窗,甚至公司AD和防毒軟體都有鎖定USB讀取的政策,每次還要特地為能夠讀取YubiKey而且查詢智慧卡的硬體識別碼,種種因素導致我們必須找到安全又迅速的雙認證方式,於是Google authenticator又再次成為首選。

一.安裝Google authenticator套件
$ sudo apt install libpam-google-authenticator


二.變更pam設定值

$ sudo vim /etc/pam.d/sshd
在最下方加入
auth required pam_google_authenticator.so

三.變更ssh設定值
$ sudo vim /etc/ssh/sshd_config
將ChallengeResponseAuthentication值修改為yes,UsePAM也確定一下是不是 yes
#ChallengeResponseAuthentication no
ChallengeResponseAuthentication yes

設定完後要先重啟sshd服務
$ service sshd restart

四.輸入指令產生雙認證金鑰

$ google-authenticator
產生QR Code後,後面的選項要按「y」

每個選項都按「y」

登出主機再登入後,就可以再登入時出現主機密碼和OTP的雙認證要求

雙認證做好之後,這台Linux主機就算是完成架設跳板機的第一步,接下來還有設定ssh tunnel的需求,本來想要寫在同一篇文章內,後來發現篇幅不小,所以還是留到下一篇再繼續。










沒有留言:

張貼留言

【IT Notes】透過api移轉Gmail到Exchange

 在雲端裡面串接api不是一件很好學的技術,第一次有機會學習到將GWS的Gmail信件全部轉移到M365的Exchange,其實方法很多種,像以前用的pst檔匯出轉移的方式等,但透過api串接,可以批次和排程轉移,是非常方便且準確的作法。唯一讓人感到困難的是學習成本不小,通常需要...