Linux下堡壘機認證
Linux下堡壘機認證
加進自己的驗證機制來控制ssh到某臺Linux機的用戶。
比如,給三個用戶登進該Linux主機的權限。
用戶名和密碼 如下。
Lucy:123
Ben:456
Jerry:789
如果某個用戶輸入密碼錯誤達到三次,則將該用戶賬戶鎖住。
也就是在ssh 登錄之前進行驗證。
腳本如下
AccountFile=自行定義。
# pre
if [ ! -e $AccountFile ];then
cat >$AccountFile<<EOF
Lucy:123:0
Ben:456:0
Jerry:789:0
EOF
fi 如果文件不存在,使用默認
# main process
while true;do
echo -e "\033[32m Welcome to Linux Club\033[0m" 輸出歡迎菜單
read -p "Please input your username: " username
AccountUser=`awk -F: ‘{print $1}‘ $AccountFile` awk獲取文件的第一列,得到用戶名
# echo Account user is $AccountUser
for Name in $AccountUser;do 在文件的用戶名中遍歷查找與用戶輸入一致的
if [ x$Name == x$username ];then
Pass=$(grep $username $AccountFile|awk -F: ‘{print $2}‘)
Count=$(grep $username $AccountFile|awk -F: ‘{print $3}‘)
if [ $Count -lt 3 ];then 驗證密碼已經 錯誤的次數是否小於三次
read -s -p "Please input your passwd: " passwd
echo ""
if [ x$Pass == x$passwd ];then
sed -i "/$username/s/:[0-9]$/:0/" $AccountFile密碼正確,將錯誤次數置零
echo welcome
bash
else
echo wrong pass
let Count=$Count+1
sed -i "/$username/s/:[0-9]$/:$Count/" $AccountFile 將錯誤次數寫回文件
break
fi
else
echo Your account has been locked
exit 5
fi
fi
done
done
將該腳本加進/etc/profile裏。
sh /root/xcui/account.sh
之後再ssh進來的運行結果如下:
輸入正確密碼進入bash
輸入錯誤密碼,大於三次時鎖賬戶。
Linux下堡壘機認證