單向Trusted SSH Authorized

以往使用rsync做備援並做rsync -avlR --delete -e ssh 連線時,對方的主機總是會尋問密碼以做確認,這樣一來便無法使用crontab來進行自動化備份。因為要解決這個問題的重點就在讓對方主機不再向你尋問密碼。解決的方式如下:

假使今天A (10.0.0.1)主機要使用rsync -avlR --delete -e ssh 將資料備份至 B (192.168.0.1)主機上,若要使 A使用SSH連到 B 時不需要輸入密碼則首先要以A主機下進行以下指令

[root@ home]# cd /root/.ssh/

[root@ .ssh]# ssh-keygen -d

Generating public/private dsa key pair.

Enter file in which to save the key (/root/.ssh/id_dsa):

Enter passphrase (empty for no passphrase): < -- 此處直接按Enter即可,下次才不會詢問passwd Enter same passphrase again: Your identification has been saved in /root/.ssh/id_dsa Your public key has been saved in /root/.ssh/id_dsa.pub The key fingerprint is: 10:21:32:24:55:66:77:76:55:68:23:43:46:43:85:98 root@xxx.xxx.xxx [root@ .ssh]#

接下來再將上步驟產生二個檔中的id_dsa.pub copy/接續 至B主機/root/.ssh/authorized_key檔案中

[root@ .ssh]# scp id_dsa.pub

192.168.0.1:/root/.ssh/authorized_keys

root@192.168.0.1's password:

id_dsa.pub 100%
|******************************************| 612 00:00

[root@.ssh]#

如此一來便可寫一支shell script 結合 rsync與cron 定期將資料由A主機備份至B主機了

您可能也會喜歡…

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *