Linux下堡壘機認證,使用者名稱密碼

2021-09-25 02:16:58 字數 1928 閱讀 3819

linux下堡壘機認證,使用者名稱密碼

加進自己的驗證機制來控制ssh到某台linux機的使用者。

目的是在使用者輸入linux使用者名稱密碼後,多加一輪驗證。

比如,給三個使用者登進該linux主機的許可權,存到特定檔案裡。

1.使用者名稱密碼正確才可登陸

使用者名稱和密碼 如下。

lucy:123

ben:456

jerry:789

2.如果某個使用者輸入密碼錯誤達到三次,則將該使用者賬戶鎖住。

指令碼如下

accountfile=自行定義。

首先輸入accountfile內容,可以自己建立或者用vi, 下面是從螢幕輸入,使用eof。

if [ ! -e $accountfile ];then

cat >$accountfile<123:0>

ben:456:0

jerry:789:0

eoffi 如果檔案不存在,使用預設

while true;do

echo -e "\033[32m welcome to linux club\033[0m" 輸出歡迎選單

read -p "please input your username: " username 讀使用者的鍵盤輸入,並且儲存在username變數裡

accountuser=`awk -f: '' $accountfile` awk獲取檔案的第一列,得到使用者名稱

# echo account user is $accountuser 此行僅僅用來測試是否成功讀出了accountuser使用者名稱

for name in $accountuser;do 在檔案的使用者名稱中遍歷查詢與使用者輸入一致的

if [ x$name == x$username ];then

pass=$(grep $username $accountfile|awk -f: '') 從accountfile讀出密碼

count=$(grep $username $accountfile|awk -f: '') count記錄錯誤次數

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

fielse

echo your account has been locked

exit 5

fifi

done

done

將該指令碼加進/etc/profile裡。

sh /root/xcui/account.sh

之後再ssh進來的執行結果如下:

輸入正確密碼進入bash

輸入錯誤密碼,大於三次時鎖賬戶。

在這裡插入描述

linux下更改使用者名稱

root 下更改 vi etc passwd vi etc shadow 這兩個檔案必須要保持一致。每乙個檔案都具有 擁有者和使用者組 屬性,每個登入的使用者至少會取得兩個id,乙個是使用者id user id 即uid 乙個是使用者組id group id 即gid 帳號管理最重要的兩個檔案就是 ...

Linux下修改使用者名稱

suse作業系統 1.修改 etc hostname 檔案 其內容為計算機名。輸入命令 vi etc hostname 使用鍵盤上的 x 鍵乙個乙個刪除所有內容 然後使用鍵盤上的 i 鍵進入可編輯狀態 輸入計算機名字 不必加網域名稱 修改完成後,輸入命令 wq 儲存退出 2.修改 etc hosts...

remoting 安全認證,密碼,使用者名稱

的回覆 伺服器端 namespace remoteserver public string getthescoop string name 配製檔案 type remoteserver.scoop,remoteserver objecturi scoop.soap 客戶端 static void m...