如何預防後台被攻擊?Tomcat 的安全配置來啦!

2021-10-05 21:20:14 字數 3440 閱讀 6000

安全是系統架構中最重要的關注點之一,通常情況下,所說的安全涵蓋網路安全、資料安全、作業系統安全、伺服器安全以及應用系統安全等諸多方面。tomcat 是乙個免費的開放源** 的web應用伺服器,技術先進、效能穩定。由於它優秀的穩定性以及豐富的文件資料,廣泛的使用人群,從而在開源領域受到廣泛的青睞,因此,tomcat安全也越來越受到重視。

tomcat作為一款應用伺服器,預設情況下可以滿足多數場景的安全需求,但是在安全要求較高的情況下,仍需要從多個方面進行配置,已防止tomcat管理後台被攻擊等風險。tomcat安全主要從以下2個方面介紹。

配置安全

預設情況下其存在一定的安全隱患,可被惡意攻擊,所以在生產環境中需要對tomcat進行安全配置,下面將介紹影響tomcat配置安全的4個選項。

1. 移除不使用的內建應用

圖 2.tomcat內建應用

2. 降權啟動tomcat

tomcat 啟動使用者許可權必須為非root,避免一旦tomcat服務被入侵,獲取root許可權,因為在linux作業系統中,root使用者的許可權是最高的,可以執行普通使用者無法執行的操作。應單獨為tomcat伺服器建立乙個使用者,並且授予執行應用伺服器所需的最小系統許可權。

3. 刪除不使用的元件

tomcat是開源軟體,那麼server.xml中的預設配置對所有人都是可見的,它的執行機制也是眾所周知的,因此使用預設配置也會增加伺服器受攻擊的風險。所以在部署生產環境前,移除不必要的元件,預設情況下,server.xml配置了乙個http聯結器(8080)和乙個ajp聯結器(8009),實際上絕大多數情況下,只需要乙個聯結器。如果tomcat不存在前置的web伺服器,此時可以保留http而刪除ajp聯結器。

4. 禁用自動部署

圖 3.禁用自動部署

管理平台安全

1. 管理平台是什麼?

2. 管理平台如何使用

在tomcat啟動成功後,通過http://ip:port/manager/html訪問manager 管理平台 ,因為預設新增了訪問許可權控制,第一次訪問需要在 conf/ tomcat-users.xml 檔案 中為當前使用者新增角色,manager管理平台共有4種角色,分別為:

manager-gui:允許訪問html頁面介面(即url路徑為/manager/html/*);

manager-script:允許訪問純文字介面(即url路徑為/manager/text/*);

manager-jmx:允許訪問jmx**介面(即url路徑為/manager/jmxproxy/*);

manager-status:允許訪問tomcat唯讀狀態頁面(即url路徑為/manager/status/*)。

其中manager-gui、manager-script、manager-jmx三個角色均具備manager-status角色的許可權,即這三種角色許可權無需再額外新增manager-status許可權。實際使用中只需配置manager-gui角色通過html頁面的形式訪問管理平台。

manager管理平台有4種角色,host-manager管理平台有2種角色,配置方式如圖4所示。

圖 4. 管理平台角色配置

圖 5. web版管理控制台

通過http://ip:port/manager/status ,檢視server-status伺服器狀態頁面,如圖6所示。

圖 6. 伺服器狀態頁面

server-status包含以下幾部分資訊:

host-manager管理控制台可以動態地新增乙個虛擬主機。此外還可以啟動、停止、刪除虛擬主機,如圖7所示。

通過http:// ip:port /host-manager/html 訪問host-manager管理平台,因為預設新增了訪問許可權控制,第一次訪問需要在conf/tomcat-users.xml檔案中為當前使用者新增角色,host-manager管理平台共有2種角色,分別為admin-gui和admin-script,配置方式如圖3所示。

admin-gui:允許訪問html頁面介面(即url路徑為/manager/html/*)。

admin-script:允許訪問純文字介面(即url路徑為/manager/text/*)。

圖 7. host-manager管理平台頁面

3. 管理平台安全加固

管理平台有發布管理應用的許可權,預設情況下host-manager和manager應用存在安全風險,可能會產生嚴重的危害,所以針對tomcat管理平台需通過以下幾個方面進行安全加固。

如使用內建host-manager和manager管理應用,需要增加ip訪問限制,在應

用下meta-inf/context.xml檔案中配置。修改allow屬性的正規表示式。8.5版本前需要手動開啟,而8.5版本之後,則預設開啟只有本機可以訪問。比如只允許ip位址10.232.150.78和10.232.150.80訪問manager管理應用,將allow屬性值修改為10.232.150.78|10.232.150.80即可,如圖8所示。

圖8. ip訪問限制配置方式

如需訪問host-manager和manager應用需要分配相關的角色許可權。我們還應

設定足夠健壯的密碼,建議加強口令強度,設定口令複雜度為8位以上,大小寫字母、數字、特殊符號的組合,並定期更換密碼,避免使用弱口令。

管理平台新增使用者鎖定功能,在server.xml中配置了org.apache.catalina.real

m.lockoutrealm,lockoutrealm 是乙個tomcat的realm實現,它擴充套件了combinedrealm,假如在某一段時間內出現很多驗證失敗,則它能夠提供鎖定使用者的功能,已避免攻擊者進行密碼暴力破解。lockoutrealm 配置方式, server.xml檔案engine元素內新增,如圖9所示

圖9. lockoutrealm 配置

tomcat 的安全配置預防後台被攻擊

安全是系統架構中最重要的關注點之一,通常情況下,所說的安全涵蓋網路安全 資料安全 作業系統安全 伺服器安全以及應用系統安全等諸多方面。tomcat 是乙個免費的開放源 的web應用伺服器,技術先進 效能穩定。由於它優秀的穩定性以及豐富的文件資料,廣泛的使用人群,從而在開源領域受到廣泛的青睞,因此,t...

如何預防 CSRF 攻擊?

user02 攻擊者 清楚地了解 a,並建立了具有攻擊性的 b。user01 受害者 登入了 a 後,在自身的 session 未失效的情況下,訪問了惡意 b。假如,user01 還未退出 a,在同一瀏覽器中,訪問了惡意 b。b 是 user02 建立的,user02 清楚地知道 a 的工作模式。b...

NTP服務被利用做流量攻擊以及檢測預防手段

被攻擊伺服器相關配置 ip eth0 172.28.9.2 eth1 192.168.0.2 eth3 外網ip 某一天發現這台web伺服器流量一直很高。開始一直以為是web服務的流量很高,根本沒往ntp服務那方面想。因為我設定ntp服務的時候就有考慮到安全問題。檢測過程 可以發現傳送流量非常大。後...