簡介
OpenSSH是使用SSH透過計算機網路加密通訊的實現。它是取代由SSH Communications Security所提供的商用版本的開放原始碼方案。目前OpenSSH是OpenBSD的子計畫。
OpenSSH常常被誤認以為與OpenSSL有關聯,但實際上這兩個計畫的有不同的目的,不同的發展團隊,名稱相近只是因為兩者有同樣的軟體發展目標──提供開放原始碼的加密通訊軟體。
服務
OpenSSH服務,sshd,是一個典型的獨立守護進程(standalone daemon),但也可以根據需要通過網路守護進程(Internet Daemon)-inetd(注3)或Ineternet Daemon's more modern-xinted載入。OpenSSH服務可以通過/etc/ssh/sshd_config檔案進行配置。
版本介紹
OpenSSH 支持 SSH 協定的版本 1.3、1.5、和 2。自從 OpenSSH 的版本2.9以來,默認的協定是版本2,該協定默認使用 RSA 鑰匙。
發展及程式架構
程式主要包括了幾個部分:
•ssh
rlogin與Telnet的替代方案。
•scp、sftp
rcp的替代方案,將檔案複製到其他電腦上。
•sshd
SSH伺服器。
•ssh-keygen
產生RSA或DSA密鑰,用來認證用。
•ssh-agent、ssh-add
幫助用戶不需要每次都要輸入密鑰密碼的工具。
•ssh-keyscan
掃描一群機器,並記錄其公鑰。
SSH
Secure Shell(安全外殼協定,簡稱 SSH)是一種加密的網路傳輸協定,可在不安全的網路中為網路服務提供安全的傳輸環境。SSH通過在網路中創建安全隧道來實現SSH客戶端與伺服器之間的連線。雖然任何網路服務都可以通過SSH實現安全傳輸,SSH最常見的用途是遠程登錄系統,人們通常利用SSH來傳輸命令行界面和遠程執行命令。使用頻率最高的場合類Unix系統,但是Windows作業系統也能有限度地使用SSH。2015年,微軟宣布將在未來的作業系統中提供原生SSH協定支持。
在設計上,SSH是Telnet和非安全shell的替代品。Telnet和Berkeleyrlogin、rsh、rexec等協定採用明文傳輸,使用不可靠的密碼,容易遭到監聽、嗅探和中間人攻擊。SSH旨在保證非安全網路環境(例如網際網路)中信息加密完整可靠。
不過,SSH也被指出有被嗅探甚至解密的漏洞。早在2011年,中國的網際網路審查機構已經有能力針對SSH連線的刺探及干擾。而後愛德華·斯諾登泄露的檔案也指出,美國國家安全局有時能夠把SSH協定傳輸的信息解密出來,從而讀出SSH會話的傳輸內容。2017年7月6日,非營利組織維基解密確認美國中央情報局已經開發出能夠在Windows或Linux作業系統中竊取SSH會話的工具。