您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關Linux Token 如何進行一次性密碼認證,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
Token(令牌)是一個身份認證標識,token還有一個特點,那就是存在過期時間的。也就是令牌不是長久有效的。
我們通常需要臨時或者一次性使用的身份認證
例如我們去餐廳就餐,向前臺獲取Wifi密碼,然后可以享受30分鐘的上網服務。30分鐘過后密碼將失效。
我們公司有很多服務器,密碼的管理非常麻煩,有時還會有人事變動,一旦人員發生變動,所有的服務器密碼都需要修改一次,非常麻煩,偶爾會有漏改情況,使用堡壘機可以更好的管理密碼,但成本非常昂貴。
于是我便想起了Token技術,但購買Token硬件成本也要花費不少錢。Token的原理我很清楚,通過對稱算法算出相同對等密鑰,我們可以不購買硬件設備,自己開發,手機設備隨身攜帶,所以開發移動版Token***不過。
我采用Token技術實現Linux指定用戶的密碼周期變化,以時間為基準,手機同步算出服務器上的密碼。為了防止密碼被窮舉,我增加了4個干擾字符。
如果對密碼算法強度感到不安全,你可以自行修改復雜度。
你還可以遠程修改密碼,不多講。
首先由管理員部署密碼修改程序 chpasswd.sh 然后加入到crontab 中定時運行。由于考慮到讀者的水平參差不齊,所以我使用shell完成,這樣絕大多數讀者都能看懂。
# cat chpasswd.sh #!/bin/bash datetime=`date +%Y-%m-%d" "%H":"%M` email="neo.chan@live.com" #password=$(cat /dev/urandom | tr -cd [:alnum:] | fold -w30 | head -n 1) string=$(date -u "+%Y$1%m$2%d$3%H$4%M") password=$(echo $string | md5sum | cut -c 2-9 | base64 | tr -d "=" | cut -c 1-32) echo $password > ~/.lastpasswd echo $password | passwd www --stdin > /dev/null
~/.lastpasswd 中保存***一次密碼
crontab 設置,每分鐘修改一次密碼。
# crontab -l */1 * * * * /root/chpasswd.sh a b c d
a b c d 自行設定,設定與手機端相同即可
至此服務器端配置完成
安裝Token.apk文件到你的手機
https://github.com/oscm/Token
6.1. 設置密碼
確認密碼
選擇環境
設置干擾碼
6.2. 查看服務器密碼
6.3. 設置刷新時間
默認1分鐘刷新一次,可能沒有來得及輸入完密碼就會更新密碼
如果修改此項,服務器端crontab中的設置同步更改即可。
看完上述內容,你們對Linux Token 如何進行一次性密碼認證有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。