一、背景
很多時候運維或安全工作人員需要維護大量的伺服器,其中就包括判斷是否存在root弱口令,
如果伺服器數量很多一一修改的話的確是要好花費不少時間精力的。如果通過指令碼來實現密碼更改,
再做乙個定期任務的話,會節省很多人力。
二、設計思路
1. 配置伺服器使用公鑰登入
2. 編寫遠端密碼更改指令碼
3. 配置定時任務執行
三、具體步驟
1.1 配置伺服器使用公鑰登入
# ssh-keygen -t rsa1.2 將本地生成的公鑰scp到遠端要更改密碼的所有伺服器主機上(如果遠端伺服器上沒有/root/.ssh目錄的話需要手動新建)
scp /root/.ssh/id_rsa.pub [email protected]:/root/.ssh/authorized_keys2.1 建立遠端密碼更改指令碼/root/test.sh
(密碼:abc123456,要更改的遠端主機:192.168.1.1,如果主機很多可以加在ip_array列表裡)
#!/bin/bash3. 配置定時任務執行(每天16:36分執行密碼更改,可使用crontab -e -u user來編輯,以下命令來檢視)remote_cmd="
echo abc123456 | passwd --stdin root
"ip_array=(
"192.168.1.1")
for ip in $
dossh root@$ip $remote_cmd
done
#crontab -l -u root需要注意的是,所謂「定期」其實還是需要借助人工的,因為密碼的更改每次都需要不一樣,而每次更改為什麼型別的強密碼還是需要管理員自行判斷,變更的時候只需要變更指令碼裡的「abc123456」密碼部分即可。3616 * * * /root/test.sh
伺服器修改遠端埠
伺服器修改遠端埠 將 x埠修改為80埠的方法如下 第一步 在遠端計算機 即被訪問的計算機 上通過工作列的 開始 執行 輸入regedit 開啟註冊 表編輯器。第二步 在登錄檔中找到 hkey local machine system currentcontrolset control termina...
ansible批量修改伺服器密碼
看了一下網上 大多數是ansible playbook實現的,需要寫乙個指令碼,或者手動傳遞變數進去。以前用python tcp模組寫過客戶端主動上報修改密碼指令碼 今天寫乙個ansible主控客戶端修改密碼 shell版本 bin bash 展示所有定義的主機 allhost egrep v et...
使用ansible批量管理遠端伺服器
本地需要管理遠端的一批伺服器,主要執行以下任務 1 將本地的檔案複製到遠端所有伺服器 2 需要在遠端伺服器中執行乙個個命令 使用copy模組,可以將本地檔案一鍵複製到遠端伺服器 a後跟上引數,引數中指定本地檔案和遠端路徑 ansible通過ssh登入到遠端伺服器後,並不執行.bash profile...