Shell腳本:使用SSH登陸并更改密碼-創(chuàng)新互聯(lián)

平時(shí)運(yùn)維中有時(shí)會(huì)遇到需要更改服務(wù)器的管理員密碼,如果服務(wù)器比較多的時(shí)候,我們可以編寫一個(gè)腳本來(lái)實(shí)現(xiàn),省時(shí)省力。

成都地區(qū)優(yōu)秀IDC服務(wù)器托管提供商(創(chuàng)新互聯(lián)).為客戶提供專業(yè)的成都西信服務(wù)器托管,四川各地服務(wù)器托管,成都西信服務(wù)器托管、多線服務(wù)器托管.托管咨詢專線:13518219792

linux使用SSH登陸時(shí)需 要手動(dòng)輸入yes 來(lái)確認(rèn)連接,所以首先要解決這個(gè)問(wèn)題,讓腳本實(shí)現(xiàn)遠(yuǎn)程執(zhí)行命令無(wú)須人工干預(yù)。

Shell腳本:使用SSH登陸并更改密碼

第一步 使用ssh-keygen創(chuàng)建本機(jī)的公鑰和私鑰

Shell腳本:使用SSH登陸并更改密碼

創(chuàng)建成功后會(huì)在/root/.ssh下生成私鑰和公鑰

Shell腳本:使用SSH登陸并更改密碼

第二步 使用ssh-copy-id復(fù)制公鑰到遠(yuǎn)程主機(jī)及expect內(nèi)部命令編寫ssh自動(dòng)登陸腳本

auto_ssh_copy_id () {

    expect -c "set timeout -1;

    spawn /usr/bin/ssh-copy-id -i /root/.ssh/id_rsa.pub root@$2;

    expect {

        *(yes/no)* {send -- yes\r;exp_continue;}

        *password:* {send -- $1\r;exp_continue;}

        eof{exit 0;}

    }";

}

調(diào)用方法:auto_ssh_copy_id $pass1 $ipnet.$i

假設(shè)需要更改密碼的服務(wù)器IP 在172.18.0.1-172.18.0.100之間,腳本如下。

#!/bin/bash

#Program

#

#relase

#tryrus 20161029

ipnet=172.18.0  #改成實(shí)際的IP 段

declare i=1    #改成實(shí)際開始的IP

pass1=password1 #ssh遠(yuǎn)程登陸root的密碼

pass2=password2  #要設(shè)定的新密碼

auto_ssh_copy_id () {

    expect -c "set timeout -1;

    spawn /usr/bin/ssh-copy-id -i /root/.ssh/id_rsa.pub root@$2;

    expect {

        *(yes/no)* {send -- yes\r;exp_continue;}

        *password:* {send -- $1\r;exp_continue;}

        eof{exit 0;}

    }";

}

auto_ssh_change_psw() {

    expect -c "set timeout -1;

    spawn ssh root@$2 "passwd";

    expect {

        *New* {send -- $1\r;exp_continue;}

        *Retype* {send -- $1\r;exp_continue;}

        eof{exit 0;}

    }";

}

while [[ "$i" -le "100" ]]    #控制循環(huán),數(shù)值改成實(shí)際要使用的IP

    do

        ping "$ipnet.$i" -c 3 > /dev/null

        if [ $? -eq 0 ];then

            auto_ssh_copy_id $pass1 $ipnet.$i       #運(yùn)行一次后,這行就不需要了

            auto_ssh_change_psw $pass2 $ipnet.$i       

        fi

    let "i+=1"

done

第二次測(cè)試結(jié)果

Shell腳本:使用SSH登陸并更改密碼

謝謝你打開這篇博文,并一直堅(jiān)持看到了這里,如果覺得對(duì)你有幫助,請(qǐng)不要吝嗇點(diǎn)一下右下角的贊。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)站名稱:Shell腳本:使用SSH登陸并更改密碼-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://muchs.cn/article20/dpiico.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化定制網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)、營(yíng)銷型網(wǎng)站建設(shè)、自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

營(yíng)銷型網(wǎng)站建設(shè)