越來(lái)越多的沒(méi)有經(jīng)驗的用戶(hù)正在設置 托管帳戶(hù),以嘗試啟動(dòng)一個(gè)成功的在線(xiàn)項目。僅僅因為大量的技術(shù)術(shù)語(yǔ)和看似無(wú)休止的任務(wù),第一步可能有點(diǎn)嚇人。SSH是一項在新手中引起很多困惑的技術(shù)的一個(gè)很好的例子。今天指南的任務(wù)是澄清圍繞這個(gè)管理解決方案的一些緊迫問(wèn)題。
什么是 SSH?
SSH 代表 Secure Shell,它是一種在兩臺計算機之間建立連接 的通信協(xié)議。但它如何幫助您在托管帳戶(hù)上管理您的網(wǎng)站?這很簡(jiǎn)單。您的站點(diǎn)托管在服務(wù)器上 - 本質(zhì)上,是位于距離您數千英里的數據中心的強大計算機。如果您需要對您的網(wǎng)站進(jìn)行任何更改,您無(wú)需前往數據中心并從那里管理服務(wù)器。您可以從家里或辦公室連接到它。
這就是 Secure Shell 發(fā)揮作用的地方。雖然其他協(xié)議也允許您遠程管理您的帳戶(hù),但 SSH 在安全性方面表現出色。但它究竟是如何創(chuàng )造出如此安全的環(huán)境的呢?
SSH 是如何工作的?
SSH 的歷史可以追溯到1995 年,當時(shí)芬蘭研究員Tatu Yl?nen正在對抗針對赫爾辛基大學(xué)網(wǎng)絡(luò )的密碼嗅探攻擊。當時(shí)流行的通信協(xié)議在客戶(hù)端和服務(wù)器之間建立了明文連接。這意味著(zhù)他們以人類(lèi)可讀的格式傳輸了所有數據,包括用戶(hù)名和密碼。
這種環(huán)境使黑客很容易攔截登錄憑據并滲透到目標網(wǎng)絡(luò )。Yl?nen 意識到,通過(guò)使用加密,他可以創(chuàng )建更安全的連接。該想法由Internet 工程任務(wù)組進(jìn)一步發(fā)展,該任務(wù)組于2006 年發(fā)布了該協(xié)議的第 2 版。由于對稱(chēng)、非對稱(chēng)加密和散列的組合, SSH-2甚至比其前身更安全。在了解 SSH 的工作原理時(shí),了解不同的加密技術(shù)至關(guān)重要。
對稱(chēng)加密
在對稱(chēng)加密中,您的計算機使用加密密鑰將您發(fā)送的信息(例如,您嘗試在服務(wù)器上執行的命令)轉換為混亂的字母和數字字符串。收到后,服務(wù)器使用相同的密鑰來(lái)解密命令。您的計算機和服務(wù)器遵循預先確定的密鑰交換算法來(lái)生成對稱(chēng)密鑰。他們獨立完成,從不與第三方共享密鑰。
非對稱(chēng)加密
非對稱(chēng)加密有點(diǎn)復雜。建立連接后,客戶(hù)端和服務(wù)器生成公鑰/私鑰對。顧名思義,公鑰是現成的。然而,私鑰只存儲在兩臺通信機器上。在非對稱(chēng)加密中,您使用公鑰加密數據,使用私鑰解密數據。當您通過(guò)非對稱(chēng)加密連接傳輸一條信息時(shí),您的計算機會(huì )使用其公鑰來(lái)加密您的數據并在傳輸過(guò)程中對其進(jìn)行保護。服務(wù)器只有擁有你機器的私鑰才能解密它。
散列
散列是一個(gè)完全不同的概念。與對稱(chēng)和非對稱(chēng)加密類(lèi)似,它是一種將信息打亂的功能,使攻擊者無(wú)法攔截和讀取它。通過(guò)散列算法的每條消息都會(huì )產(chǎn)生一個(gè)稱(chēng)為散列值的唯一字符串。但是,沒(méi)有密鑰可以解密數據并將其恢復為人類(lèi)可讀的格式。這是一種單向加密功能,不允許檢索原始信息。
SSH 如何與這些加密技術(shù)一起工作?
建立與您的服務(wù)器的SSH 連接不超過(guò)幾秒鐘,但在表面之下,發(fā)生了很多事情。首先,您有會(huì )話(huà)加密協(xié)商階段。在此過(guò)程中,您的計算機和服務(wù)器各自提供了一個(gè)受支持的加密和散列算法列表,并且兩臺機器就它們將使用哪一個(gè)達成一致。
接下來(lái),您的計算機和服務(wù)器會(huì )生成公私密鑰對。然后,服務(wù)器使用您的公鑰加密質(zhì)詢(xún)并將其發(fā)送回給您。它使用非對稱(chēng)加密,這意味著(zhù)您的機器只有在擁有您的私鑰時(shí)才能解密挑戰。
如果是這種情況 – SSH 會(huì )話(huà)開(kāi)始。您的計算機和服務(wù)器現在共享公共數據,并使用預定的密鑰交換算法來(lái)創(chuàng )建對稱(chēng)加密密鑰。這個(gè)將用于保護兩臺機器之間的信息流。密鑰交換算法仍然未知,因此沒(méi)有其他人可以生成加密密鑰。
建立安全連接后,您的計算機和服務(wù)器使用預先確定的散列算法為在兩臺機器之間傳遞的每條消息創(chuàng )建唯一的基于散列的消息身份驗證代碼(或 HMAC)。每個(gè)驗證碼都是根據消息的內容、對稱(chēng)加密密鑰和數據包序列號計算得出的。HMAC 在那里確保消息的真實(shí)性并保證它們沒(méi)有被篡改。最后一步是驗證用戶(hù)。在讓您進(jìn)入之前,服務(wù)器會(huì )詢(xún)問(wèn)您的登錄憑據或使用加密密鑰來(lái)驗證您的身份。
如何在您的 VPS 上設置 SSH?
您將如何通過(guò) SSH 訪(fǎng)問(wèn) VPS主要取決于您的主機帳戶(hù)。例如,對于自我管理的虛擬服務(wù)器,默認情況下啟用 SSH,并且您可能具有root 訪(fǎng)問(wèn)權限。使用托管 VPS 解決方案,情況會(huì )有所不同。通常,您會(huì )獲得一個(gè)點(diǎn)擊式界面,您可以通過(guò)該界面創(chuàng )建個(gè)人帳戶(hù)、修改其權限并啟用其 SSH 訪(fǎng)問(wèn)。有多個(gè)虛擬主機控制面板,每個(gè)控制面板都有自己的圖形用戶(hù)界面(或 GUI),因此您需要采取的確切步驟取決于管理平臺。
例如,如果您的托管服務(wù)提供商使用cPanel/WHM,您需要執行以下操作:
- 登錄WHM
- 從左側菜單中,找到帳戶(hù)功能部分并選擇修改帳戶(hù)
- 找到您要更改的帳戶(hù),然后單擊修改
- 向下滾動(dòng)到頁(yè)面底部,然后選中外殼訪(fǎng)問(wèn)復選框
- 點(diǎn)擊保存
- 一個(gè)彈出窗口將詢(xún)問(wèn)您是否要更新軟件包并使該組中的所有用戶(hù)都可以使用 SSH 訪(fǎng)問(wèn)。選擇最合適的選項,然后單擊繼續
如果您使用ScalaHosting 的 SPanel VPS之一,也可以為個(gè)人帳戶(hù)啟用 SSH 訪(fǎng)問(wèn)。
以下是步驟:
- 登錄SPanel 管理界面
- 從左側菜單轉到管理 SSH 訪(fǎng)問(wèn)
- 找到您需要的帳戶(hù)并使用它旁邊的切換開(kāi)關(guān)來(lái)啟用和禁用 SSH 訪(fǎng)問(wèn)
SSH 是出于更安全的通信協(xié)議的需要而開(kāi)發(fā)的,它使用的復雜密碼術(shù)表明安全性是其核心。不過(guò),如果您有一個(gè)具有默認配置的自我管理服務(wù)器,您可以采取幾個(gè)步驟來(lái)進(jìn)一步保護您的機器。
更改默認 SSH 端口是第一個(gè)。眾所周知,SSH 默認通過(guò)端口 22工作,想要強行進(jìn)入服務(wù)器的黑客通常會(huì )針對它進(jìn)行攻擊。切換到另一個(gè)自由端口通常足以阻止它們或至少減慢它們的速度。
為了阻止更有針對性的攻擊,您可以使用 SSH 客戶(hù)端生成公鑰和私鑰對以進(jìn)行身份??驗證。大多數人可能已經(jīng)習慣了默認的用戶(hù)/密碼機制,但加密密鑰提供了更多的安全性。
SSH 用例
大多數站點(diǎn)管理員使用 SSH 來(lái)執行命令。Linux和macOS等基于 Unix 的操作系統可以直接從終端通過(guò) SSH 連接到遠程服務(wù)器。在2018 年更新之后,也可以通過(guò)Windows PowerShell通過(guò) SSH 訪(fǎng)問(wèn)您的服務(wù)器,因此 Microsoft 操作系統的用戶(hù)不再需要單獨的客戶(hù)端應用程序。
在通過(guò) SSH 管理服務(wù)器時(shí),沒(méi)有可用的 GUI 選項。如果您想使用該協(xié)議 - 您需要熟悉命令行界面工具。無(wú)論操作系統和軟件如何,您將用于通過(guò) SSH 連接到服務(wù)器的命令是:
ssh [你的用戶(hù)名]@[服務(wù)器的IP]
成功驗證后,您將登錄到服務(wù)器并可以開(kāi)始使用標準命令對其進(jìn)行管理。
如果您不習慣命令行界面,您可能會(huì )認為 SSH 過(guò)于復雜,尤其是考慮到基于 GUI 的管理平臺范圍廣泛。
但是,不同的項目有不同的需求,有些網(wǎng)站管理員依賴(lài)的工具只能通過(guò) SSH 操作。此外,許多有經(jīng)驗的用戶(hù)發(fā)現通過(guò)控制臺管理他們的網(wǎng)站更容易、更快捷。
不過(guò),命令執行遠非 SSH 的唯一應用。該協(xié)議可用于隧道端口和連接,并保護您能想到的幾乎任何網(wǎng)絡(luò )服務(wù)。使用 SSH 的最著(zhù)名的服務(wù)示例是SFTP。
結論
SSH 似乎是一種相當老式的托管帳戶(hù)管理方式,尤其是對于習慣于點(diǎn)擊控制面板的人來(lái)說(shuō)。該協(xié)議確實(shí)已經(jīng)存在了很長(cháng)一段時(shí)間,它并不是管理網(wǎng)站的最新手友好的方式。不過(guò),這并沒(méi)有降低它的功能。一旦你熟悉了環(huán)境和命令——你就會(huì )忘記還有其他的做事方式。