公鑰用來給數據加密,用公鑰加密的數據隻能使用私鑰解密
用來解密公鑰加密的數據。
對需要傳輸的文本,做一個HASH計算,一般采用SHA1,SHA2來獲得
使用私鑰對需要傳輸的文本的摘要進行加密,得到的密文即被稱為該次傳輸過程的簽名。
數據接收端,拿到傳輸文本,但是需要確認該文本是否就是發送發出的內容,中途是否曾經被篡改。因此拿自己持有的公鑰對簽名進行解密(密鑰對中的一種密鑰加密的數據必定能使用另一種密鑰解密。),得到了文本的摘要,然後使用與發送方同樣的HASH算法計算摘要值,再與解密得到的摘要做對比,發現二者完全一致,則說明文本沒有被篡改過。
是將數據資料加密,使得非法用戶即使取得加密過的資料,也無法獲取正確的資料內容,所以數據加密可以保護數據,防止監聽攻擊。其重點在於數據的安全性。
公鑰登錄是為了解決每次登錄服務器都要輸入密碼的問題,流行使用RSA加密方案,主要流程包含:
1、客戶端生成RSA公鑰和私鑰
2、客戶端將自己的公鑰存放到服務器
3、客戶端請求連接服務器,服務器將一個隨機字符串加密後發送給客戶端
4、客戶端根據自己的私鑰解密這個隨機字符串之後再發送給服務器
5、服務器接受到字符串之後用公鑰解密,如果正確就讓客戶端登錄,否則拒絕。這樣就不用使用密碼了。
進入用戶目錄下.ssh目錄:
id_rsa:私鑰文件
id_rsa.pub:公鑰文件
authorized_keys: 保存其他公鑰的的文件
known_hosts: 已經建立過連接的服務器信息,可以清空。
1.執行命令:
此時會重新生成id_rsa私鑰文件和id_rsa.pub公鑰文件
用戶將公鑰發送給其他服務器,其他服務器將接受的公鑰保存在authorized_keys裏麵。持有私鑰的用戶就可以登錄服務器(authorized_keys存放自己的公鑰,用戶便可以使用私鑰從其他的地方登錄服務器)。
2.將公鑰導入到vps
3.修改SSHD的配置文件/etc/ssh/sshd_config
4.重啟SSH後進行測試