Ubuntu

旅行時的 SSH 安全性

  • February 12, 2014

我是系統管理員/IT 方面的新手,所以如果這看起來很簡單,我深表歉意。我嘗試搜尋,但由於 SSH 是一個如此廣泛的領域,我不知道具體使用哪些關鍵字或術語。

我很快就要出差了,我需要通過 SSH 連接到我的 EC2 Ubuntu 伺服器。目前我家裡有一個靜態 IP,並設置了 UFW 以限制埠 22 的 IP 訪問。就 SSH 本身而言,我使用密鑰對登錄。

有什麼方法可以讓我以某種方式獲得靜態 IP,或者使用某種 VPN,然後通過 SSH 連接到我的伺服器,以保持埠 22 的安全?顯然,我不是第一個必須通過 SSH 連接到伺服器的人,所以必須有一個解決方案。

正如我所說,我目前只允許我的 IP 訪問埠 22。將 22 埠開放給所有流量會不會太冒險?我為 SSH 使用密鑰對,而不是使用者名/密碼。

只要您使用公鑰身份驗證或安全使用者密碼,保持埠 22 開放就不會比在 Web 伺服器上保持埠 80 開放更安全。許多安全實踐都是毫無根據的神話。sshd 中不太可能存在嚴重漏洞。

為什麼 VPN 伺服器的埠突然比 SSH 埠更安全?每次連接時只需驗證您的 SSH 公鑰,以防止 MITM 攻擊。

為 SSH 使用 VPN 肯定更安全;通常的做法是建立一個管理網路(您的伺服器有一個輔助連接)並提供對它的 VPN 訪問。讓所有基礎設施僅在該網路上偵聽管理流量。然後,根據需要,在 VPN 中進行管理。

如果您只有一台伺服器,這可能是矯枉過正。使用強公鑰並確保僅允許實際擁有 shell 帳戶的使用者進行身份驗證就足夠了。在這種情況下禁用 SSH 的密碼驗證並不是一個壞主意。為此,請編輯/etc/ssh/sshd_config並設置PasswordAuthentication no. 如果您只使用公鑰身份驗證,請務必使用 禁用 PAM UsePAM no,因為即使您在 sshd 中禁用了密碼身份驗證,PAM 也可以使用密碼對使用者進行身份驗證。

引用自:https://serverfault.com/questions/574920