基於sshpass批量實現主機間的key驗證指令碼

2022-07-19 12:33:17 字數 1089 閱讀 7658

指令碼1:for實現(不需要ip清單檔案)

#!/bin/sh

iplist="

10.0.0.58

10.0.0.68"

color="echo -e \\e[1;32m"

color1="echo -e \\e[1;31m"

end="\\e[0m"

pass=123456

#判斷軟體是否安裝,如未安裝則安裝

rpm -q sshpass &> /dev/null || yum -y install sshpass

#判斷金鑰檔案是否存在,如不存在則生成

[ -f /root/.ssh/id_rsa ] || ssh-keygen -f /root/.ssh/id_rsa -p ''

#基於key認證

for ip in $iplist;do

sshpass -p$pass ssh-copy-id -o stricthostkeychecking=no $ip && $$基於key認證配置成功!$ || $$基於key認證配置失敗!$

done

指令碼2:while實現(需要ip清單檔案)

[root@centos8 ~]# cat hosts.list

10.0.0.18

10.0.0.28

[root@centos8 ~]# cat push_ssh_key.sh

#!/bin/sh

#判斷軟體是否安裝,如未安裝則安裝

rpm -q sshpass &> /dev/null || yum -y install sshpass

#判斷金鑰檔案是否存在,如不存在則建立

[ -f /root/.ssh/id_rsa ] || ssh-keygen -f /root/.ssh/id_rsa -p ''

#定義變數

export sshpass=123456

while read ip;do

sshpass -e ssh-copy-id -o stricthostkeychecking=no $ip

done < hosts.list

sshpass實現批量散發公鑰

在安裝ansible之後,需要批量散發公鑰,這裡小小的寫了乙個指令碼去散發公鑰 關閉ssh的連線詢問 在ansible機上編輯ssh的配置檔案 sudo vim etc ssh ssh config stricthostkeychecking ask stricthostkeychecking no...

基於ThinkPHP實現批量刪除

廢話不多說,先上效果圖 html布局 基於bootstrap 留言列表 j ascript window.history.back 返回 j ascript 刪除 id名稱 郵箱內容 日期時間 操作js指令碼處理 使用ajax技術 首先判斷有沒有選中的值,如果沒有則提示 如果有,則傳遞到伺服器端處理...

python指令碼實現批量遠端部署主機

本指令碼通過填寫位置引數來實現批量部署遠端主機的功能,位置引數1填寫主機ip列表,位置引數2填寫執行命令 執行命令寫在 內 root bin python import paramiko import sys import getpass import threading defrcmd host,...