參考文件
- pinfo ssh-keygen
- Linux 伺服器安全防護(hù) (O'REILLY, ISBN: 986-7794-18-4)
多年前 telnet 當(dāng)?shù)溃诎踩庾R漸漸浮上檯面之後,telnet 在登入時(shí)的安全就被大家質(zhì)疑,後來 ssh (Secure Shell)
出現(xiàn)時(shí),改變了當(dāng)初的習(xí)慣,大家在管理 Linux 時(shí),現(xiàn)在都使用 ssh 來登入,而 ssh 好處我在這也不再多做說明,因?yàn)樗€可以配合 rsync
做出遠(yuǎn)端備份,一旦設(shè)定好 ssh 之後,還會(huì)有 scp 可以使用!這樣就可以在不同電腦間 copy 檔案,並且為傳輸?shù)馁Y料加密了!
Shell Script & ssh
自動(dòng)化的工作可以讓管理員有效率的完成目標(biāo),也不用浪費(fèi)人力和時(shí)間做同樣的事情,在無人職守的情況下,要讓 script 自動(dòng)連入遠(yuǎn)端系統(tǒng)做事是件有些麻煩的事,因?yàn)槟匦璧侨胂到y(tǒng)才可以繼續(xù)工作,為了不略過登入系統(tǒng)這個(gè)步驟,我們可以製做一個(gè)
public key 讓遠(yuǎn)端的機(jī)器信任我們,如此就只要直接連入就可以,而不用再輸入帳號和密碼。
製作 public keys & private keys
利用 ssh-keygen 來做出公用和私有鑰匙,並傳送 public key 到遠(yuǎn)端機(jī)器使其信任本機(jī)登入。
[steven@cute steven]$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/steven/.ssh/id_dsa):
Enter passphrase (empty for no passphrase): <- 不用輸入
Enter same passphrase again: <- 不用輸入
Your identification has been saved in /home/steven/.ssh/id_dsa.
Your public key has been saved in /home/steven/.ssh/id_dsa.pub.
The key fingerprint is:
fa:c9:a9:e4:d5:70:52:88:cc:f3:25:fd:68:ae:c4:4b steven@cute.com.tw
[steven@cute steven]$ |
接著,再到 /home/steven/.ssh 裡看看,會(huì)多出 id_dsa 和 id_dsa.pub 這兩個(gè)檔案。
[steven@cute steven]$ cd .ssh
[steven@cute .ssh]$ ls
id_dsa id_dsa.pub known_hosts
[steven@cute .ssh]$ |
現(xiàn)在我們要使遠(yuǎn)端機(jī)器 mirror.abc.com,使用 sandy 登入時(shí)不用輸入密碼,因?yàn)椋覀儜?yīng)該複製一份 id_dsa.pub
到 sandy@mirror.abc.com 去,並加入到 authorized_keys。
[steven@cute .ssh]$ scp id_dsa.pub sandy@mirror.abc.com:~/id_dsa_steven.pub
sandy@mirror.abc.com's password:
id_dsa.pub 100% |*****************************| 607 00:00
[steven@cute .ssh]$ |
登入 sandy@mirror.abc.com
[steven@cute .ssh]$ ssh sandy@mirror.abc.com
sandy@mirror.abc.com's password:
-bash-2.05b$ ls id_dsa_steven.pub
id_dsa_steven.pub
-bash-2.05b$ cat id_dsa_steven.pub >> .ssh/authorized_keys
-bash-2.05b$ exit |
完成後離開,回到本機(jī),再做一次 ssh 到 mirror.abc.com
[steven@cute .ssh]$ ssh sandy@mirror.abc.com
-bash-2.05b$ |
如此就不用輸入密碼就直接登入了!
保護(hù)你的私有金匙
在製做 dsa key 時(shí),會(huì)有一份私有和一份公有金匙,實(shí)務(wù)上會(huì)保留起來,並做備份,因?yàn)楫?dāng) ssh 在登入時(shí),會(huì)使用 id_dsa.pub
和本機(jī)的 id_dsa 做確認(rèn),因此如果這兩者比對不成功時(shí)就會(huì)再次要求輸入密碼。
posted on 2008-11-19 19:16
Blog of JoJo 閱讀(392)
評論(1) 編輯 收藏 所屬分類:
Linux 技術(shù)相關(guān)