国内精品九九久久久精品,国产激情视频一区二区三区,国产精品日本一区二区在线播放 ,国产精品 亚洲一区二区三区,国产亚洲精品久久久久蜜臀

當(dāng)前位置: 首頁(yè) >綜合 > 正文

每日精選:在 Linux 上建立 SSH 安全連接的13種方法

2023-05-04 23:12:55 來(lái)源:Linux迷

SSH 廣泛用于安全訪(fǎng)問(wèn) Linux 服務(wù)器。大多數(shù)用戶(hù)使用默認(rèn)設(shè)置的 SSH 連接來(lái)連接到遠(yuǎn)程服務(wù)器。然而,不安全的默認(rèn)配置也會(huì)帶來(lái)各種安全風(fēng)險(xiǎn)。

具有開(kāi)放 SSH 訪(fǎng)問(wèn)的服務(wù)器的 root 帳戶(hù)可能會(huì)面臨風(fēng)險(xiǎn)。特別是如果您使用公共IP地址,破解root密碼就更容易。因此,了解SSH安全是必要的。


(資料圖)

以下是如何在 Linux 上建立 SSH 安全連接的方法。

1、禁用root用戶(hù)登錄

首先,禁用 root 用戶(hù)的 SSH 訪(fǎng)問(wèn)并創(chuàng)建具有 root 特權(quán)的新用戶(hù)。關(guān)閉 root 用戶(hù)的服務(wù)器訪(fǎng)問(wèn)是一種防御策略,可防止攻擊者達(dá)到入侵系統(tǒng)的目的。例如,您可以創(chuàng)建名為 exampleroot 的用戶(hù),如下所示:

useradd -m examplerootpasswd examplerootusermod -aG sudo exampleroot

以下是上述命令的簡(jiǎn)要解釋?zhuān)?/p>useradd 命令用于創(chuàng)建新用戶(hù),-m 參數(shù)會(huì)在 home 目錄下為所創(chuàng)建的用戶(hù)創(chuàng)建一個(gè)文件夾。passwd 命令用于給新用戶(hù)分配密碼。請(qǐng)記住,分配給用戶(hù)的密碼應(yīng)該是復(fù)雜的、難以猜測(cè)的密碼。usermod -aG sudo 將新創(chuàng)建的用戶(hù)添加到管理員組。

在創(chuàng)建用戶(hù)后,需要對(duì) sshd_config 文件進(jìn)行一些更改。您可以在 /etc/ssh/sshd_config 找到此文件。使用任何文本編輯器打開(kāi)該文件并進(jìn)行以下更改:

# Authentication: #LoginGraceTime 2m PermitRootLogin no AllowUsers exampleroot

PermitRootLogin參數(shù)可以防止root用戶(hù)使用SSH獲得遠(yuǎn)程訪(fǎng)問(wèn)權(quán)限。將exampleroot包含在AllowUsers列表中授予用戶(hù)必要的權(quán)限。

最后,使用以下命令重啟SSH服務(wù):

sudo systemctl restart ssh

如果失敗并收到錯(cuò)誤消息,請(qǐng)嘗試下面的命令。這可能因您使用的Linux發(fā)行版而異。

sudo systemctl restart sshd2、更改默認(rèn)SSH端口

默認(rèn)的SSH連接端口是22。當(dāng)然,所有攻擊者都知道這一點(diǎn),因此需要更改默認(rèn)端口號(hào)以確保SSH安全性。雖然攻擊者可以使用Nmap掃描輕松找到新端口號(hào),但這里的目標(biāo)是使攻擊者的工作更加困難。

要更改端口號(hào),請(qǐng)打開(kāi)/etc/ssh/sshd_config并對(duì)文件進(jìn)行以下更改:

Include /etc/ssh/sshd_config.d/*.confPort 5922

完成此步驟后,再次使用sudo systemctl restart ssh命令重啟SSH服務(wù)?,F(xiàn)在,您可以使用剛定義的端口訪(fǎng)問(wèn)服務(wù)器。

如果您正在使用防火墻,則必須在那里進(jìn)行必要的規(guī)則更改。運(yùn)行netstat -tlpn命令,您可以看到SSH的端口號(hào)已更改。

3、禁止使用空密碼登錄

在您的系統(tǒng)上可能存在沒(méi)有密碼的用戶(hù),這可能是您不小心創(chuàng)建的。為了防止這樣的用戶(hù)訪(fǎng)問(wèn)服務(wù)器,您可以將sshd_config文件中的PermitEmptyPasswords行值設(shè)置為no。

PermitEmptyPasswords no4、限制登錄/訪(fǎng)問(wèn)嘗試次數(shù)

默認(rèn)情況下,您可以使用任意多的密碼嘗試來(lái)訪(fǎng)問(wèn)服務(wù)器。但是,攻擊者可以利用此漏洞對(duì)服務(wù)器進(jìn)行暴力破解。

您可以通過(guò)在sshd_config文件中指定允許的密碼嘗試次數(shù)來(lái)自動(dòng)終止SSH連接。

為此,請(qǐng)更改MaxAuthTries值。

MaxAuthTries 35、使用SSH Version 2

SSH Version 2 的發(fā)布是因?yàn)榈谝话娲嬖谠S多漏洞。默認(rèn)情況下,您可以通過(guò)將 Protocol 參數(shù)添加到您的 sshd_config 文件中來(lái)啟用使用SSH Version 2。

這樣,您所有未來(lái)的連接都將使用 SSH2。

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

Protocol 26、關(guān)閉TCP端口轉(zhuǎn)發(fā)和X11轉(zhuǎn)發(fā)

攻擊者可以通過(guò)SSH連接進(jìn)行端口轉(zhuǎn)發(fā),嘗試獲取訪(fǎng)問(wèn)您其他系統(tǒng)的權(quán)限。為了防止這種情況發(fā)生,您可以在sshd_config文件中關(guān)閉AllowTcpForwarding和X11Forwarding功能。

X11Forwarding no AllowTcpForwarding no7、使用SSH密鑰連接

連接到服務(wù)器最安全的方法之一是使用SSH密鑰。使用SSH密鑰,您可以無(wú)需密碼訪(fǎng)問(wèn)服務(wù)器。此外,您可以通過(guò)更改sshd_config文件中的與密碼相關(guān)的參數(shù)來(lái)完全關(guān)閉服務(wù)器的密碼訪(fǎng)問(wèn)。

創(chuàng)建SSH密鑰時(shí),有兩個(gè)密鑰:公鑰和私鑰。公鑰上傳到您要連接的服務(wù)器,私鑰存儲(chǔ)在使用該密鑰進(jìn)行連接的計(jì)算機(jī)上。

在計(jì)算機(jī)上使用ssh-keygen命令創(chuàng)建SSH密鑰。不要留空Passphrase字段,并記住您在此輸入的密碼。

如果您留空該字段,則只能通過(guò)SSH密鑰文件進(jìn)行訪(fǎng)問(wèn)。但是,如果設(shè)置了密碼,您可以防止擁有密鑰文件的攻擊者訪(fǎng)問(wèn)它。

例如,您可以使用以下命令創(chuàng)建SSH密鑰:

ssh-keygen8、SSH連接的IP限制

大多數(shù)情況下,防火墻使用其標(biāo)準(zhǔn)框架阻止訪(fǎng)問(wèn)并旨在保護(hù)服務(wù)器。但是,這并不總是足夠的,您需要增加此安全性潛力。

要做到這一點(diǎn),請(qǐng)打開(kāi)/etc/hosts.allow文件。通過(guò)在此文件中進(jìn)行添加,您可以限制SSH權(quán)限,允許特定IP塊或輸入單個(gè)IP并使用拒絕命令阻止所有其余IP地址。

下面是一些示例設(shè)置。完成這些操作后,像往常一樣重新啟動(dòng)SSH服務(wù)以保存更改。

IP-Restriction-for-SSH-Connection-19、有選擇地允許用戶(hù)和組訪(fǎng)問(wèn)

您可以配置sshd配置文件以有選擇地允許或禁止用戶(hù)和組從SSH登錄到您的服務(wù)器。默認(rèn)情況下,所有用戶(hù)和組都允許訪(fǎng)問(wèn)。當(dāng)您管理不應(yīng)由除那些具有適當(dāng)權(quán)限的人以外的任何人訪(fǎng)問(wèn)的生產(chǎn)服務(wù)器時(shí),這是一種安全風(fēng)險(xiǎn)。

以下是您需要添加以允許/拒絕用戶(hù)和組訪(fǎng)問(wèn)SSH的行:

AllowUsers: username sshuser@ip:portAllowGroups: groupnameDenyUsers: username1 username2 sshuser@ip:portDenyGroups: groupname10、設(shè)置空閑超時(shí)時(shí)間間隔

如果一個(gè)受信任的用戶(hù)離開(kāi)他們的桌面未經(jīng)注銷(xiāo),那么擁有他們電腦訪(fǎng)問(wèn)權(quán)限的對(duì)手可以利用這一點(diǎn),在缺席或不活動(dòng)的受信任用戶(hù)的情況下對(duì)服務(wù)器進(jìn)行惡意操作。

抵御這種情況的最簡(jiǎn)單方法是設(shè)置一個(gè)空閑超時(shí)時(shí)間間隔。在定義的一段不活動(dòng)時(shí)間后,服務(wù)器將終止與用戶(hù)的SSH連接,以防止在缺席或不活動(dòng)的情況下未經(jīng)授權(quán)的訪(fǎng)問(wèn)。

以下是您需要添加到ssh配置文件中以開(kāi)啟此設(shè)置的行:

ClientAliveInterval 120

根據(jù)配置文件中發(fā)出的命令,經(jīng)過(guò)120秒的不活動(dòng)時(shí)間后,連接將被終止。您可以更改數(shù)字以適應(yīng)自己的喜好。

12、添加 Banner 警告語(yǔ)言

雖然這不是一種主動(dòng)的安全措施,但添加 Banner 警告語(yǔ)言可以是一種有用的心理策略,用于防止不受歡迎的訪(fǎng)客,并在他們?cè)噲D以惡意意圖連接到您的服務(wù)器時(shí)使對(duì)手處于不利位置。

要添加自定義 Banner 警告語(yǔ)言,請(qǐng)首先仔細(xì)準(zhǔn)備橫幅的文本或從互聯(lián)網(wǎng)上抓取一個(gè)通用的文本文件,然后將以下行添加到您的配置文件中:

Banner /path/to/banner/banner.txt13、強(qiáng)制使用強(qiáng)大的MAC算法

在SSH的上下文中,MAC代表消息認(rèn)證碼。MAC是一種加密算法,用于驗(yàn)證和確認(rèn)客戶(hù)端與服務(wù)器之間的數(shù)據(jù)傳輸。

設(shè)置強(qiáng)大的MAC算法非常重要,以確保數(shù)據(jù)的完整性和保密性,這是網(wǎng)絡(luò)安全的兩個(gè)關(guān)鍵支柱。以下是您需要在配置文件中添加的行:

Banner /path/to/banner/banner.txt14、將LogLevel設(shè)置為監(jiān)視SSH活動(dòng)

您可以監(jiān)視SSH活動(dòng)的不同詳細(xì)程度。默認(rèn)情況下,此功能可能已關(guān)閉。建議您打開(kāi)此功能,并將其設(shè)置為基本日志記錄級(jí)別 – INFO,該級(jí)別僅記錄用戶(hù)的錯(cuò)誤、消息、密鑰驗(yàn)證、登錄和注銷(xiāo)活動(dòng)。

如果您愿意,可以將其更改為更詳細(xì)的級(jí)別,例如VERBOSE或DEBUG。以下是您需要在sshd配置文件中添加的行:

LogLevel INFO

現(xiàn)在,您的SSH服務(wù)器將生成基本日志數(shù)據(jù),您可以通過(guò)導(dǎo)航到并讀取基于Debian / Ubuntu的機(jī)器上的/var/log/auth.log*文件和基于RHEL / CentOS / Fedora的機(jī)器上的/var/log/secure文件來(lái)閱讀此日志數(shù)據(jù)。

您可以查看整個(gè)日志文件并導(dǎo)航到帶有sshd的部分,或者使用grep命令過(guò)濾內(nèi)容并僅閱讀sshd日志。

Linux 服務(wù)器安全的重要性

數(shù)據(jù)和數(shù)據(jù)安全問(wèn)題非常詳細(xì),所有服務(wù)器管理員都應(yīng)考慮。服務(wù)器安全是非常敏感的問(wèn)題,因?yàn)楣舻闹饕裹c(diǎn)是Web服務(wù)器,它們包含有關(guān)系統(tǒng)的幾乎所有信息。

由于大多數(shù)服務(wù)器運(yùn)行在Linux基礎(chǔ)架構(gòu)上,因此熟悉Linux系統(tǒng)和服務(wù)器管理非常重要。

SSH 安全僅是保護(hù)服務(wù)器的一種方式。您可以通過(guò)停止、阻止或減緩攻擊來(lái)將所遭受的損害最小化。除提供 SSH 安全外,還可以實(shí)施許多不同的方法來(lái)保護(hù)您的 Linux 服務(wù)器。

標(biāo)簽:

返回頂部