SSH 是服x服一種廣泛使??用的協(xié)議,用于安全地訪(fǎng)問(wèn) Linux 服務(wù)??器。器務(wù)器大多數用戶(hù)使用??默認設置的操作 SSH 連接來(lái)ヾ(′?`)?連接到遠程服務(wù)器。但是系統,不安全的個(gè)系默認配置也會(huì )帶來(lái)各種安全風(fēng)險。
具有開(kāi)放 SSH 訪(fǎng)問(wèn)權限的統好服務(wù)器的 root 帳戶(hù)可能存在風(fēng)險。(′-ι_-`)尤其是服x服如果您使??用的是公共 IP 地址,則破解 root 密碼要容易得多。器務(wù)器因此,操作有必要了解 SSH 安全性。系統
這是個(gè)系在 Linux 上保護 SSH 服務(wù)器連接的方法。
1.禁用root用戶(hù)登錄
為此,統好首先,服x服(′?ω?`)禁用 root 用戶(hù)的器務(wù)器 SSH 訪(fǎng)問(wèn)并創(chuàng )建一個(gè)具有 root 權限的新用戶(hù)。關(guān)閉 root 用戶(hù)的操作服務(wù)器訪(fǎng)問(wèn)是一種防御(?????)策略,可以防止攻擊者實(shí)現入侵系統的目標。例如,您可以創(chuàng )建一個(gè)名為exampleroot的用戶(hù),如下所示:
useradd-m examplerootpasswdexamplerootusermod-aG sudo exampleroot
以下是上述命令的簡(jiǎn)要說(shuō)明:
- useradd創(chuàng )建一個(gè)新用戶(hù),并且-m參數在您創(chuàng )建的用戶(hù)的主目錄下創(chuàng )建一個(gè)文件夾。
- passwd命令用于為新用戶(hù)分配密碼。請記住,您分配給用戶(hù)的密碼應該很復雜且難以猜測。
- usermod -aG sudo將新創(chuàng )建的用戶(hù)添加到管理員組。
在用戶(hù)創(chuàng )建過(guò)程之后,需要對sshd_config文件進(jìn)行一些更改。您可以在/etc/ssh/sshd_config找到此文件。使用任何文本編輯器打??開(kāi)文件并對其進(jìn)行以(yi)下更改:
# Authentication: #LoginGraceTime 2m PermitRootLogi(???)n no AllowUsersexampleroot
PermitRootLogin 行將阻止 root 用戶(hù)使用 SSH 獲得遠程訪(fǎng)問(wèn)。在A(yíng)llowUsers 列表中包含 exampleroot 會(huì )向用戶(hù)授予必要的權限。
最后,使用以(?⊿?)下命令重啟 SSH 服務(wù):
linuxmi@linuxmi /home/linuxmi/www(???).linuxmi.com ? sudo systemctl restart ssh
如果失敗并且您收??到錯誤消息,請嘗試以下命令。這可能因您使用的 Linux 發(fā)行版而異。
linuxmi@linuxmi /home/linuxmi??/www.l(′?_?`)inuxmi.com sudo systemctl restart sshd2.更改默認端口
默認的 SSH 連接端口是 22??。當然,所有的攻??擊者都知道這一點(diǎn),因此需要更改默認端口號以確保 SSH 安全。盡管攻??擊者可以通過(guò) Nmap 掃描輕松找到新的端口號,但這里的目標是讓攻擊者的工作更加困難。
要更改端口號,請打開(kāi)/etc/ssh/sshd_config并對文件進(jìn)行以下更改:
Inc??lude/etc/ssh/sshd_config.d/*.confPort 22099
在這一步之后,使用sudo system??ctl restart ssh再次重啟 SSH 服務(wù)?,F在您可以使用剛剛定義的端口訪(fǎng)問(wèn)您的服務(wù)ヾ(′ω`)?器。如果您使用的是防火墻,則還必須在此處進(jìn)行必要的規則更改。在運行netstat -tlpn命令時(shí),您可以看到您的 SSH 端口號已更改。
3. 禁止使用空??白密碼的??用戶(hù)訪(fǎng)問(wèn)
在您的系統上可能有您不小心創(chuàng )建的沒(méi)有密碼的用戶(hù)。要防止此類(lèi)用戶(hù)訪(fǎng)問(wèn)服務(wù)器,您可以將sshd_config文件中的PermitEmptyPasswords行值設置為no。
PermitEmptyPasswordsno
4.限制登錄/訪(fǎng)問(wèn)嘗試
默認情況下,您可以根據需要嘗試多次輸入密碼來(lái)訪(fǎng)問(wèn)服務(wù)器。但是,攻擊者可以利用此漏洞對服務(wù)器進(jìn)行暴力破解。通過(guò)指定允許的密碼嘗試次數,您ヽ(′ー`)ノ可以在嘗試一定次數后自動(dòng)終止SSH 連接。
為此,請更改sshd_config文件中的MaxAuthTr┐(′?`)┌ies值。
MaxAuthTries3
5. 使用 SSH 版本 2
SSH 的第二個(gè)版本發(fā)布是因為第一個(gè)版本中存在許多漏洞。默認情況下,您可以通過(guò)將Protocol參數添加到sshd_config文件來(lái)啟用服務(wù)器使用第二個(gè)版本。這樣,您未來(lái)??的所有連接都將使用第二個(gè)版本的 SSH。
Include/etc/ssh/sshd_config.d/*.c???onfProtocol 2
6.關(guān)閉TCP端口轉發(fā)和X11轉發(fā)
攻擊者可以嘗試通過(guò) SSH 連接的端口轉發(fā)來(lái)訪(fǎng)問(wèn)您的其他系統。為了防止這種情況,您可以在sshd_config文件中關(guān)閉AllowTˉ\_(ツ)_/ˉcpForwarding和X11Forwarding功能。
X11ForwardingnoAllo??wTcpForwardingno7. 使用 SSH 密鑰連接
連接到服務(wù)器的最安全方法之一是使用 SSH 密鑰。使用 SSH 密鑰時(shí),無(wú)需密碼即可訪(fǎng)問(wèn)服務(wù)器。另外,您可以通過(guò)更改ssh??d_config文件中與密碼相關(guān)的參數來(lái)完全關(guān)閉對服務(wù)器的密碼訪(fǎng)問(wèn)。
創(chuàng )建 SSH 密鑰時(shí),有兩個(gè)密鑰:Public和Private。公鑰將上傳到您要連接的服務(wù)器,而私鑰則存儲在您將用來(lái)建立連接的計算機上。
在您的計算機上使用ssh-keygen命令創(chuàng )建 SSH 密鑰。不要將密碼短語(yǔ)字段留空并記住您在此處輸入的密碼。如果將其留空,您將只能使用 SSH 密鑰文件訪(fǎng)問(wèn)它。但是,如果您設置了密碼,則可以防止擁有密鑰文件的攻擊者訪(fǎng)問(wèn)它。例如,您可以使用以下命??令創(chuàng )建 SSH 密鑰:
ssh-keygen
8. SSH 連接的 IP 限制
大多數情況下,防火墻使用自己的標準框架阻止訪(fǎng)問(wèn),旨在保護服務(wù)器。但是,這并不總是足夠的,您需要增加(jia)這種安全潛力。
為此,請打開(kāi)/etc/hosts.allow文件。通過(guò)對該文件進(jìn)行的添加,您可以限制 SSH 權限,允許特定 IP 塊,或輸入單個(gè) IP 并使用拒絕命令阻止所有剩余的 IP 地址。
下面您將看到一些??示例設置。完成這些之后,像往常一樣重新啟動(dòng) SSH 服務(wù)以保存更改。
Linux 服務(wù)??器安全的重要性
所有服務(wù)器管理員都應該考慮數據和數據安全ヾ(′?`)?(quan)問(wèn)題。服務(wù)器??安全是一個(gè)非常敏感的問(wèn)題,因為攻擊的主要焦點(diǎn)是 Web 服務(wù)器,它們幾乎包含有關(guān)系統的所有信息。由于大多數服務(wù)器都在 Linux 基礎架構上運行,因此熟悉 Linux 系統和???服務(wù)器管理非常重要。
SSH 安全只是保護服務(wù)器的方法之一??梢酝ㄟ^(guò)停止、阻擋或減緩攻擊來(lái)最ヾ(′▽?zhuān)??大程度地減少您受到的傷害。除了提供 SSH 安全性之外,您還可以實(shí)施許多不同的方法來(lái)保護您的 Linux 服務(wù)器。
版權聲明:本文內容??由(you)互聯(lián)網(wǎng)??用戶(hù)自發(fā)貢獻,該文觀(guān)點(diǎn)僅代表作者本人。本站僅提供信息存儲空間服務(wù),不(bu)擁有所有權,不承擔相關(guān)法律責任。如發(fā)現本站有涉嫌抄襲侵權/違法違規的內容, 請發(fā)送郵件至 [email protected] 舉報,一經(jīng)查實(shí),本站將立刻刪除。


網(wǎng)站二維碼
導航
電話(huà)
短信
咨詢(xún)
地圖
分享