Linux兩台主機之間建立信任

2021-09-06 04:41:54 字數 1987 閱讀 9609

很多時候,我們需要在兩台linux/unix主機之間拷貝檔案(夾),但需要手動輸入密碼

例如備份服務端(sysadmin)資料庫檔案到客戶端(yanggang),提示需要輸入密碼!

sysadmin@host:~/.ssh$ scp   /home/sysadmin/top800/top800_database.sql   [email protected]:/home/yanggang/top800/

[email protected]'s password:

如果編寫指令碼進行資料自動備份,很顯然手動輸入密碼不靠譜

因此,我們需要尋找雙機拷貝資料時,自動輸入密碼或不需要輸入密碼的方法

於是,linux通過公鑰和金鑰,建立雙機之間信任關係,不需輸入密碼,解決了這個問題

linux/unix雙機建立信任

1  分別在服務端(sysadmin)和客戶端(yanggang),進入.ssh目錄

下面以客戶端(yanggang)為例:

cd ~/.ssh

2  執行生成金鑰命令

ssh-keygen  -t  rsa

3  檢視~/.ssh生成金鑰的檔案

其中,id_rsa為金鑰; id_rsa.pub為公鑰

4  客戶端(yanggang)對服務端(sysadmin)建立信任關係

scp  [email protected]:/home/yanggang/.ssh/id_rsa.pub  authorized_keys

[email protected]'s password:

即:把客戶端的公鑰(id_rsa.pub)拷貝到服務端(sysadmin),並修改id_rsa.pub

為 authorized_keys

此時需要輸入密碼(之前未建立信任關係),建立了客戶端到服務端的信任關係後,客戶端就可以不用再輸入密碼,就可以從服務端拷貝資料(如下步驟5)

5  服務端(sysadmin)對客戶端(yanggang)建立信任關係

scp  [email protected]:/home/sysadmin/.ssh/id_rsa.pub  authorized_keys

此時,已經不用資料密碼,就可以直接從服務端拷貝檔案(id_rsa.pub)

至此,服務端從客戶端拷貝資料也不用再資料密碼了(如上步驟4再拷貝,就不需再輸入密碼了)

scp  [email protected]:/home/yanggang/.ssh/id_rsa.pub  authorized_keys

沒有[email protected]'s password:

6  測試(備份服務端的資料庫到客戶端)

scp   /home/sysadmin/top800/top800_database.sql   [email protected]:/home/yanggang/top800/

雙機之間拷貝檔案,不再需要輸入密碼了

雙機信任關係已經建立!

有朋友問到多台主機,如何建立信任關係?

測試環境:

服務端: redhat server 5.2

客戶端1: ubuntu 10.10 (32bit)

客戶端2: ubuntu 11.10 (64bit)

具體步驟:

如上「雙機信任關係」類似,只需要把「步驟4」中客戶機的公鑰(id_rsa.pub)拷貝到服務端(authorized_keys)

即複製、貼上到authorized_keys檔案後面,命令如下:

echo   id_rsa.pub_one >> authorized_keys (客戶機one)

echo   id_rsa.pub_two >> authorized_keys (客戶機two)

其中,authorized_keys 為服務端的,格式如下:

知識拓展:

scp不需要密碼

配置主機間信任的乙個簡單辦法

Linux兩台主機之間建立信任

很多時候,我們需要在兩台linux unix主機之間拷貝檔案 夾 但需要手動輸入密碼 例如備份服務端 sysadmin 資料庫檔案到客戶端 yanggang 提示需要輸入密碼!sysadmin host ssh scp home sysadmin top800 top800 database.sql...

兩台Linux伺服器建立信任關係

如果在兩台linux伺服器之間經常需要互相訪問,但是需要經常手動輸入密碼,可以在兩台伺服器之間建立乙個信任連線,然後把鑑權檔案寫到乙個檔案裡 步驟1 先在主機a使用命令建立金鑰 步驟二 在 root ssh目錄裡面看到建立的金鑰 ls root ssh 步驟三 把id rsa.pub檔案複製到主機b...

兩台Linux機器之間配置信任關係(以及如何解除)

假設如下場景 實現主機a免密碼登入到主機b,主要步驟如下 1 在主機a中利用 ssh keygen t rsa 產生相應的私鑰和公鑰 id rsa和id rsa.pub 2 在主機a中新增自己的私鑰 ssh add id rsa 注 很多介紹中都少了第二步,所以經常出現測試時不通過的情形。ssh a...