shell腳本實(shí)現(xiàn)ssh-copy-id批量自動發(fā)送公鑰到遠(yuǎn)程主機(jī)
需求
批量實(shí)現(xiàn)自動發(fā)送公鑰到遠(yuǎn)程主機(jī)
環(huán)境
firewalld:關(guān)閉
selinux:關(guān)閉
實(shí)現(xiàn)方式
- sshpass命令
- shell調(diào)用expect命令
sshpass命令
#!/bin/bash
#
#********************************************************************
#Author: hechunping
#QQ: ×××
#Date: 2019-11-07
#FileName: ssh-sshpass.sh
#URL: hexiaoshuai.blog.51cto.com
#Description: The test script
#Copyright (C): 2019 All rights reserved
#********************************************************************
NET=172.20.200
USER=(root hechunping)
PASSWORD=123456
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa &> /dev/null
sed -i '/StrictHostKeyChecking/c StrictHostKeyChecking no' /etc/ssh/ssh_config
rpm -q sshpass &> /dev/null || yum -y install sshpass &> /dev/null
for i in {1..254} ; do
{
sshpass -p $PASSWORD ssh-copy-id -i ${USER[0]}@${NET}.${i} &> /dev/null
}&
done
wait
shell調(diào)用expect命令
#!/bin/bash
#
#********************************************************************
#Author: hechunping
#QQ: ×××
#Date: 2019-11-07
#FileName: ssh-expect.sh
#URL: hexiaoshuai.blog.51cto.com
#Description: The test script
#Copyright (C): 2019 All rights reserved
#********************************************************************
NET=172.20.200
USER=(root hechunping)
PASSWORD=123456
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa &> /dev/null
for i in {1..254} ; do
{
expect <<EOF
spawn ssh-copy-id -i ${USER[0]}@${NET}.${i}
expect {
"yes/no" { send "yes\n";exp_continue }
"password" { send "${PASSWORD}\n" }
}
expect eof
EOF
}&
done
wait
總結(jié)
以上所述是小編給大家介紹的shell腳本實(shí)現(xiàn)ssh-copy-id批量自動發(fā)送公鑰到遠(yuǎn)程主機(jī),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
Shell腳本中的位置變量參數(shù)(特殊字符)實(shí)例講解
這篇文章主要介紹了Shell腳本中的位置變量參數(shù)(特殊字符)實(shí)例講解,本文講解了$#、$* 、$$ 、$!、$@、$-、$?等特殊字符的作用,并給出使用實(shí)例,比較清晰和簡潔,需要的朋友可以參考下2015-05-05
用shell腳本監(jiān)控進(jìn)程是否存在 不存在則啟動的實(shí)例
這篇文章主要介紹了用shell腳本監(jiān)控進(jìn)程是否存在 不存在則啟動的實(shí)例,需要的朋友可以參考下2016-03-03
使用shell腳本實(shí)現(xiàn)ping對應(yīng)IP所對應(yīng)的人名(推薦)
這篇文章主要介紹了使用shell腳本實(shí)現(xiàn)ping對應(yīng)IP所對應(yīng)的人名的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-11-11
linux Shell腳本里面把一個數(shù)組傳遞到awk內(nèi)部進(jìn)行處理
這篇文章主要介紹了linux Shell腳本里面把一個數(shù)組傳遞到awk內(nèi)部進(jìn)行處理,需要的朋友可以參考下2016-12-12
每天一個Linux命令之shell單引號和雙引號的經(jīng)典解釋
這篇文章主要給大家介紹了關(guān)于每天一個Linux命令之shell單引號和雙引號的經(jīng)典解釋,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Linux系統(tǒng)具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
Shell腳本編寫Nagios插件監(jiān)控程序資源占用
這篇文章主要介紹了Shell腳本編寫Nagios插件監(jiān)控程序資源占用,本文先是給出了需求和需求分析,然后給出實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-12-12

