在 Linux 上保護 SSH 服務器連接 8 種方法

admin Linux運維評論619字數(shù) 2225閱讀模式
摘要

SSH 是一種廣泛使用的協(xié)議,用于安全地訪問 Linux 服務器。大多數(shù)用戶使用默認設置的 SSH 連接來連接到遠程服務器。但是,不安全的默認配置也會帶來各種安全風險。

具有開放 SSH 訪問權(quán)限的服務器的 root 帳戶可能存在風險。尤其是如果你使用的是公共 IP 地址,則破解 root 密碼要容易得多。因此,有必要了解 SSH 安全性。

這是在 Linux 上保護 SSH 服務器連接的方法。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

1. 禁用 root 用戶登錄

為此,首先,禁用 root 用戶的 SSH 訪問并創(chuàng)建一個具有 root 權(quán)限的新用戶。關閉 root 用戶的服務器訪問是一種防御策略,可以防止攻擊者實現(xiàn)入侵系統(tǒng)的目標。例如,你可以創(chuàng)建一個名為 exampleroot 的用戶,如下所示:文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

useradd -m exampleroot
passwd exampleroot
usermod -aG sudo exampleroot

以下是上述命令的簡要說明:文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

useradd 創(chuàng)建一個新用戶,并且 - m 參數(shù)在你創(chuàng)建的用戶的主目錄下創(chuàng)建一個文件夾。
passwd 命令用于為新用戶分配密碼。請記住,你分配給用戶的密碼應該很復雜且難以猜測。
usermod -aG sudo 將新創(chuàng)建的用戶添加到管理員組。
在用戶創(chuàng)建過程之后,需要對 sshd_config 文件進行一些更改。你可以在 / etc/ssh/sshd_config 找到此文件。使用任何文本編輯器打開文件并對其進行以下更改:文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

# Authentication:
#LoginGraceTime 2m
PermitRootLogin no
AllowUsers exampleroot

PermitRootLogin 行將阻止 root 用戶使用 SSH 獲得遠程訪問。在 AllowUsers 列表中包含 exampleroot 會向用戶授予必要的權(quán)限。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

最后,使用以下命令重啟 SSH 服務:文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

> rumenz@rumenz /home/rumenz/www.rumenz.com
> sudo systemctl restart ssh

如果失敗并且你收到錯誤消息,請嘗試以下命令。這可能因你使用的 Linux 發(fā)行版而異。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

> rumenz@rumenz /home/rumenz/www.rumenz.com
> sudo systemctl restart sshd

2. 更改默認端口

默認的 SSH 連接端口是 22。當然,所有的攻擊者都知道這一點,因此需要更改默認端口號以確保 SSH 安全。盡管攻擊者可以通過 Nmap 掃描輕松找到新的端口號,但這里的目標是讓攻擊者的工作更加困難。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

要更改端口號,請打開 / etc/ssh/sshd_config 并對文件進行以下更改:文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

Include /etc/ssh/sshd_config.d/*.conf
Port 22099

在這一步之后,使用 sudo systemctl restart ssh 再次重啟 SSH 服務?,F(xiàn)在你可以使用剛剛定義的端口訪問你的服務器。如果你使用的是防火墻,則還必須在此處進行必要的規(guī)則更改。在運行 netstat -tlpn 命令時,你可以看到你的 SSH 端口號已更改。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

3. 禁止使用空白密碼的用戶訪問

在你的系統(tǒng)上可能有你不小心創(chuàng)建的沒有密碼的用戶。要防止此類用戶訪問服務器,你可以將 sshd_config 文件中的 PermitEmptyPasswords 行值設置為 no。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

PermitEmptyPasswords no

4. 限制登錄 / 訪問嘗試

默認情況下,你可以根據(jù)需要嘗試多次輸入密碼來訪問服務器。但是,攻擊者可以利用此漏洞對服務器進行暴力破解。通過指定允許的密碼嘗試次數(shù),你可以在嘗試一定次數(shù)后自動終止 SSH 連接。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

為此,請更改 sshd_config 文件中的 MaxAuthTries 值。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

MaxAuthTries 3

5. 使用 SSH 版本 2

SSH 的第二個版本發(fā)布是因為第一個版本中存在許多漏洞。默認情況下,你可以通過將 Protocol 參數(shù)添加到 sshd_config 文件來啟用服務器使用第二個版本。這樣,你未來的所有連接都將使用第二個版本的 SSH。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

Include /etc/ssh/sshd_config.d/*.conf
Protocol 2

6. 關閉 TCP 端口轉(zhuǎn)發(fā)和 X11 轉(zhuǎn)發(fā)

攻擊者可以嘗試通過 SSH 連接的端口轉(zhuǎn)發(fā)來訪問你的其他系統(tǒng)。為了防止這種情況,你可以在 sshd_config 文件中關閉 AllowTcpForwarding 和 X11Forwarding 功能。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

X11Forwarding no
AllowTcpForwarding no

7. 使用 SSH 密鑰連接

連接到服務器的最安全方法之一是使用 SSH 密鑰。使用 SSH 密鑰時,無需密碼即可訪問服務器。另外,你可以通過更改 sshd_config 文件中與密碼相關的參數(shù)來完全關閉對服務器的密碼訪問。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

創(chuàng)建 SSH 密鑰時,有兩個密鑰:Public 和 Private。公鑰將上傳到你要連接的服務器,而私鑰則存儲在你將用來建立連接的計算機上。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

在你的計算機上使用 ssh-keygen 命令創(chuàng)建 SSH 密鑰。不要將密碼短語字段留空并記住你在此處輸入的密碼。如果將其留空,你將只能使用 SSH 密鑰文件訪問它。但是,如果你設置了密碼,則可以防止擁有密鑰文件的攻擊者訪問它。例如,你可以使用以下命令創(chuàng)建 SSH 密鑰:文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

ssh-keygen文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

8. SSH 連接的 IP 限制

大多數(shù)情況下,防火墻使用自己的標準框架阻止訪問,旨在保護服務器。但是,這并不總是足夠的,你需要增加這種安全潛力。文章源自網(wǎng)吧系統(tǒng)維護-http://www.strong-digital.cn/10469.html

為此,請打開 / etc/hosts.allow 文件。通過對該文件進行的添加,你可以限制 SSH 權(quán)限,允許特定 IP 塊,或輸入單個 IP 并使用拒絕命令阻止所有剩余的 IP 地址。

下面你將看到一些示例設置。完成這些之后,像往常一樣重新啟動 SSH 服務以保存更改。

版權(quán)聲明:文章圖片資源來源于網(wǎng)絡,如有侵權(quán),請留言刪除!!!
廣告也精彩
admin
  • 本文由 發(fā)表于 2023年4月3日 17:37:21
  • 轉(zhuǎn)載請務必保留本文鏈接:http://www.strong-digital.cn/10469.html
匿名

發(fā)表評論

匿名網(wǎng)友 填寫信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: