新聞中心
bash,ssh username@hostname "command1; command2; command3",“要使用腳本為多個(gè)遠(yuǎn)程服務(wù)器設(shè)置無密碼SSH登錄,可以按照以下步驟操作:

1. 生成SSH密鑰對(duì)
在本地計(jì)算機(jī)上生成SSH密鑰對(duì),包括公鑰和私鑰,可以使用sshkeygen命令生成密鑰對(duì):
sshkeygen t rsa
按提示操作,可以選擇默認(rèn)的文件路徑和添加密碼保護(hù),生成后,公鑰文件為~/.ssh/id_rsa.pub,私鑰文件為~/.ssh/id_rsa。
2. 將公鑰添加到遠(yuǎn)程服務(wù)器的authorized_keys文件中
對(duì)于每個(gè)遠(yuǎn)程服務(wù)器,需要將本地計(jì)算機(jī)的公鑰添加到遠(yuǎn)程服務(wù)器的~/.ssh/authorized_keys文件中,可以使用sshcopyid命令實(shí)現(xiàn):
sshcopyid i ~/.ssh/id_rsa.pub 用戶名@遠(yuǎn)程服務(wù)器IP
將用戶名和遠(yuǎn)程服務(wù)器IP替換為實(shí)際的用戶名和遠(yuǎn)程服務(wù)器IP地址,執(zhí)行該命令后,會(huì)要求輸入遠(yuǎn)程服務(wù)器的密碼,輸入正確的密碼后,公鑰將被添加到遠(yuǎn)程服務(wù)器的authorized_keys文件中。
3. 測(cè)試無密碼SSH登錄
完成上述步驟后,可以嘗試使用SSH命令無密碼登錄遠(yuǎn)程服務(wù)器:
ssh 用戶名@遠(yuǎn)程服務(wù)器IP
如果一切正常,將無需輸入密碼即可登錄遠(yuǎn)程服務(wù)器。
4. 編寫腳本批量設(shè)置無密碼SSH登錄
如果需要為多個(gè)遠(yuǎn)程服務(wù)器設(shè)置無密碼SSH登錄,可以編寫一個(gè)腳本來批量執(zhí)行上述操作,以下是一個(gè)簡(jiǎn)單的示例腳本:
#!/bin/bash 定義服務(wù)器列表,每行包含用戶名和服務(wù)器IP,用空格分隔 SERVER_LIST=" user1 192.168.1.100 user2 192.168.1.101 user3 192.168.1.102 " 遍歷服務(wù)器列表,為每個(gè)服務(wù)器設(shè)置無密碼SSH登錄 while read r user server; do echo "設(shè)置無密碼SSH登錄: $user@$server" sshcopyid i ~/.ssh/id_rsa.pub $user@$server done <<< "$SERVER_LIST"
將上述腳本保存為setup_ssh.sh,并賦予執(zhí)行權(quán)限:
chmod +x setup_ssh.sh
然后運(yùn)行腳本:
./setup_ssh.sh
腳本將自動(dòng)為列表中的每個(gè)服務(wù)器設(shè)置無密碼SSH登錄。
網(wǎng)站題目:腳本ssh遠(yuǎn)程執(zhí)行多條命令
分享URL:http://www.5511xx.com/article/cdsdecj.html


咨詢
建站咨詢
