1. ssh概述
ssh是(secure shell protocol) 的簡寫,安全外殼協議(ssh)是一種在不安全網路上提供安全遠端登入及其它安全網路服務的協議。
2. ssh 主要功能
乙個就是類似 telnet 的遠端聯機使用 shell 的伺服器,即 ssh
另乙個就是類似 ftp 服務的 sftp-server ,提供更安全的 ftp 服務
3. ssh 工作原理
伺服器建立公鑰: 每一次啟動 sshd 服務時,該服務會主動去找 /etc/ssh/ssh_host* 的檔案,若系統剛剛安裝完成時,由於沒有這些公鑰,因此 sshd 會主動去計算出這些需要的公鑰,同時也會計算出伺服器自己需要的私鑰
客戶端主動聯機請求: 若客戶端想要聯機到 ssh 伺服器,則需要使用適當的客戶端程式來聯機,包括 ssh, putty 等客戶端程式連線
客戶端記錄並比對伺服器的公鑰資料及隨機計算自己的公私鑰: 若客戶端第一次連線到此伺服器,則會將伺服器的公鑰記錄到客戶端的使用者家目錄內的 ~/.ssh/known_hosts 。若是已經記錄過該伺服器的公鑰,則客戶端會去比對此次接收到的與之前的記錄是否有差異。若接受此公鑰, 則開始計算客戶端自己的公私鑰
回傳客戶端的公鑰到伺服器端: 使用者將自己的公鑰傳送給伺服器。此時伺服器:具有伺服器的私鑰與客戶端的公鑰,而客戶端則是: 具有伺服器的公鑰以及客戶端自己的私鑰,你會看到,在此次聯機的伺服器與客戶端的金鑰系統 (公鑰+私鑰) 並不一樣,所以才稱為非對稱加密系統
開始雙向加解密: (1)伺服器到客戶端:伺服器傳送資料時,拿使用者的公鑰加密後送出。客戶端接收後,用自己的私鑰解密 (2)客戶端到伺服器:客戶端傳送資料時,拿伺服器的公鑰加密後送出。伺服器接收後,用伺服器的私鑰解密,這樣就能保證通訊安全
4. ssh 組成
(1). ssh 協議使用的是tcp 22號埠,telnet 使用的是tcp 的23號埠,ssh協議是c/s架構,分為伺服器端與客戶端。
(2). 伺服器端的程式有 sshd
客戶端的程式有,windows下 putty,securecrt,sshssh secure shell client …… 。
openssh 是一組安全遠端的連線工具,主要包括了幾個部份:ssh、sshd、scp、sftp、ssh-keygen、ssh-agent、ssh-add等
ssh(ssh 客戶端,用於登入建立連線,是 rlogin 與 telnet的安全替代方案)
sshd (ssh 服務端,典型的獨立守護程序)
scp、sftp (檔案安全傳輸工具,rcp、ftp 安全的替代方案)
ssh-keygen (用於產生 rsa 或 dsa 金鑰)
ssh-agent、ssh-add(幫助使用者不需要每次都要輸入金鑰密碼的工具)
5. ssh 工具實現
openssh 包括sshd主程式與ssh客戶端
6. sshd 配置檔案詳解
vim /etc/ssh/sshd_config
#1. ssh server 全域性設定,port ,協議 ……
# port 22 #預設埠,也可以使用多個埠
protocol 2 #協議版本號
# listenaddress 0.0.0.0 #預設值是監聽所有介面的 ssh 要求
# pidfile /var/run/sshd.pid #放置 sshd 這個 pid 的檔案
# logingracetime 2m #2分鐘之內不輸入密碼,自動斷開
# compression delayed #使用壓縮資料模式進行傳輸,登入後才將資料壓縮 (delayed)
SSH 協議與OpenSSH詳解
1.ssh概述 ssh是 secure shell protocol 的簡寫,安全外殼協議 ssh 是一種在不安全網路上提供安全遠端登入及其它安全網路服務的協議。2.ssh 主要功能 3.ssh 工作原理 伺服器建立公鑰 每一次啟動 sshd 服務時,該服務會主動去找 etc ssh ssh hos...
SSH學習之四OpenSSH安全
openssh是linux unix下一款加密通訊軟體,同時也是我們用來遠端控制linux unix伺服器重要的必裝軟體。對於各版本的linux及unix發行版而言,openssh的配置檔案位置都各不一樣。如ubuntu下openssh配置檔案就在 etc ssh sshd config。opens...
ssh和rsh的區別
ssh 和 rsh的區別主要有 1 安全級別不同,主要是ssh的密碼等都是加密傳輸,而且還有金鑰認證的機制,rsh明文傳輸.而且沒有金鑰的機制.具體,文章一大批 2 不用輸入密碼登入的方式不同.在ssh中,本地.ssh存放private key,把public key加入遠端的.ssh author...