解決提高sshd服務安全問題

2021-12-30 06:59:24 字數 2024 閱讀 7337

在我們使用linux或unix組建伺服器時,為了方便遠端維護和管理,基本上都會開放sshd服務。雖然ssh將聯機的封包通過加密的技術來進行資料的傳遞,能夠有效地抵禦黑客使用網路偵聽來獲取口令和秘密資訊,但是仍然不乏大量入侵者進行密碼嘗試或其他手段來攻擊ssh伺服器以圖獲得伺服器控制權。如何才能使自己的伺服器更安全可靠呢?只要我們對ssh伺服器的配置略加調整,就可以極大地提高系統的安全性,降低網路入侵的風險。具體操作如下:

1.修改sshd伺服器的配置檔案/etc/ssh/sshd_config,將部分引數參照如下修改,增強安全性。

port 5555

系統預設使用22號埠,將監聽埠更改為其他數值(最好是1024以上的高階口,以免和其他常規服務埠衝突),這樣可以增加入侵者探測系統是否執行了sshd守護程序的難度。

listenaddress 192.168.0.1

對於在伺服器上安裝了多個網絡卡或配置多個ip位址的情況,設定sshd只在其中乙個指定的介面位址監聽,這樣可以減少sshd的入口,降低入侵的可能性。

permitrootlogin no

如果允許使用者使用root使用者登入,那麼黑客們可以針對root使用者嘗試暴力破解密碼,給系統安全帶來風險。

permitemptypasswords no

允許使用空密碼系統就像不設防的堡壘,任何安全措施都是一句空話。

allowusers sshuser1 sshuser2

只允許指定的某些使用者通過ssh訪問伺服器,將ssh使用許可權限定在最小的範圍內。

allowgroups sshgroup

同上面的allowusers類似,限定指定的使用者組通過ssh訪問伺服器,二者對於限定訪問伺服器有相同的效果。

protocol 2

禁止使用版本1協議,因為其存在設計缺陷,很容易使密碼被黑掉。

禁止所有不需要的(或不安全的)授權認證方式。

x11forwarding no

關閉x11forwarding,防止會話被劫持。

maxstartups 5

sshd服務執行時每乙個連線都要使用一大塊可觀的記憶體,這也是ssh存在拒絕服務攻擊的原因。一台伺服器除非存在許多管理員同時管理伺服器,否則上面這個連線數設定是夠用了。

注意:以上引數設定僅僅是乙個示例,使用者具體使用時應根據各自的環境做相應的更改。

2.修改sshd伺服器的配置檔案/etc/ssh/sshd_config的讀寫許可權,對所有非root使用者設定唯讀許可權,防止非授權使用者修改sshd服務的安全設定。

chmod 644 /etc/ssh/sshd_config

3.設定tcp wrappers。伺服器預設接受所有的請求連線,這是非常危險的。使用tcp wrappers可以阻止或允許應用服務僅對某些主機開放,給系統在增加一道安全屏障。這部分設定共涉計到兩個檔案:hosts.allow和hosts.deny。

將那些明確允許的請求新增到/etc/hosts.allow中。如系統僅允許ip位址為192.168.0.15和10.0.0.11的主機使用sshd服務,則新增如下內容:

sshd:192.168.0.15 10.0.0.11

將需要禁止使用的資訊新增到/etc/hosts.deny中。如對除了在hosts.allow列表中明確允許使用sshd的使用者外,所有其他使用者都禁止使用sshd服務,則新增如下內容到hosts.deny檔案中:

sshd:all

注意:系統對上述兩個檔案的判斷順序是先檢查hosts.allow檔案再檢視hosts.deny檔案,因此乙個使用者在hosts.allow允許使用網路資源,而同時在hosts.deny中禁止使用該網路資源,在這種情況下系統優先選擇使用hosts.allow配置,允許使用者使用該網路資源。

4.盡量關閉一些系統不需要的啟動服務。系統預設情況下啟動了許多與網路相關的服務,因此相對應的開放了許多埠進行listening(監聽)。我們知道,開放的埠越多,系統從外部被入侵的可能也就越大,所以我們要盡量關閉一些不需要的啟動服務,從而盡可能的關閉埠,提供系統的安全性。

通過以上步驟基本上將sshd服務設定上可能出現的漏洞堵上了,不需要投資,只要我們稍微花點時間調整一下配置,就可極大提高系統的安全環境,何樂而不為呢?

解決執行緒安全問題

一 1 同步 塊 解決runnable的執行緒安全問題 格式 synchronized 同步監視器 被同步的 操作共享資料的 共享資料 多個執行緒共同操作的變數 同步監視器 俗稱鎖,任何乙個類的物件都可以充當鎖。同步監視器中可以用this充當鎖 2 解決繼承thread類的執行緒安全問題 synch...

解決執行緒的安全問題

synchronized的底層是使用作業系統的mutex lock實現的。1.作為方法的修飾符 方法的定義前面synchronized intadd int a,int b synchronized static intadd int a,int b 2.作為同步 塊synchronized 物件的...

前端安全問題及解決

xss安全漏洞 xss漏洞修復 function filterxss str,regexp var regex gi 去除包含 內容的,防止xss漏洞 var filtervalue str.replace g,去除 開頭型別的xss漏洞 filtervalue str.replace csrf安全...