從客戶端來看,SSH提供兩種級別的安全驗證.
- 第一種級別(基於口令的安全驗證)
- 只要你知道自己帳號和口令,就可以登錄到遠程主機.所有傳輸的數據都會被加密, 但是不能保證你正在連接的伺服器就是你想連接的伺服器.可能會有別的伺服器在冒充真正的伺服器, 也就是受到“中間人”這種方式的攻擊.
- 第二種級別(基於密匙的安全驗證)
- 需要依靠密匙,也就是你為自己創建一對密匙,並把公用密匙放在需要訪問的伺服器上. 如果你要連接到SSH伺服器上,客戶端軟體就會向伺服器發出請求,請求用你的密匙進行安全驗證.伺服器收到請求之後, 先在該伺服器上你的主目錄下尋找你的公用密匙,然後把它和你發送過來的公用密匙進行比較.如果兩個密匙一致, 伺服器就用公用密匙加密“質詢”(challenge)並把它發送給客戶端軟體. 客戶端軟體收到“質詢”之後就可以用你的私人密匙解密再把它發送給伺服器. 用這種方式,你知道自己密匙的口令.但是,與第一種級別相比,第二種級別不需要在網路上傳送口令. 第二種級別不僅加密所有傳送的數據,“中間人”這種攻擊方式也是不可能的(他沒有你的私人密匙). 但是整個登錄的過程可能需要10秒
ssh採用的是不對稱加密方式傳輸,分一個公匙和一個私匙
公匙用來加密 私匙用來解密,私匙放在client,公匙放在 server !
~/.ssh/authorized_keys
RSA 與 DSA 加密演算法的區別
- RSA,是一種加密演算法(PS:RSA也可以進行數字簽名的),它的簡寫的來由是Ron Rivest、Adi Shamir和 Leonard Adleman這三個人名字的第一個字母連接起來就是RSA.
- DSA就是數字簽名演算法的英文全稱的簡寫,即Digital Signature Algorithm,簡寫就是DSA,
- RSA既可以進行加密,也可以進行數字簽名實現認證,而DSA只能用於數字簽名從而實現認證
選擇 rsa 演算法即可,以下是具體步驟!
ssh-keygen -t rsa 之後一直回車
- $ ssh-keygen –t rsa
- Generating public/private rsa key pair.
- Enter file in which to save the key (/home/dn/.ssh/id_rsa):
- Enter passphrase (empty for no passphrase): <---按enter
- Enter same passphrase again: <---按enter
- Your identification has been saved in /home/dn/.ssh/id_rsa.
- Your public key has been saved in /home/dn/.ssh/id_rsa.pub.
- The key fingerprint is:
- e8:8a:5e:ae:c7:13:45:d0:81:cd:3f:e6:1e:f8:88:5a root@localhost.localdomain
生成私匙 id_rsa 與 公匙 id_rsa.pub 配置文件
- $ ll
- 總計 20
- -rw------- 1 dn dn 1675 Nov 25 11:07 id_rsa
- -rw-r--r-- 1 dn dn 407 Nov 25 11:07 id_rsa.pub
- -rw-r--r-- 1 dn dn 9086 Nov 24 14:54 known_hosts
把公匙文件上傳到ssh 伺服器的宿主目錄下,以下兩條命令任選一個即可!
- $ cat ~/.ssh/id_rsa.pub | ssh dn@www9 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat - >~/.ssh/authorized_keys && chmod 644 ~/.ssh/authorized_keys"
$ ssh_copy_id -i ~/.ssh/id_rsa.pub dn@www9
測試
- $ ssh www9
- The authenticity of host 'www9 (10.100.100.9)' can't be established.
- RSA key fingerprint is a3:29:76:03:8c:43:4d:1b:45:52:6e:d9:d5:fd:1e:aa.
- Are you sure you want to continue connecting (yes/no)? yes
- Warning: Permanently added 'space9,10.100.100.9' (RSA) to the list of known hosts.
- Last login: Fri Nov 25 11:47:33 2011 from 10.100.100.1
擴展
shell 腳本, 批量上傳ssh id_rsa.pub 公匙
結束
參考文檔
本文出自 「dongnan」 博客,請務必保留此出處http://dngood.blog.51cto.com/446195/724207
[火星人 ] ssh 公匙與私匙已經有402次圍觀