亚洲国产精品人久久,亚洲va国产日韩欧美精品色婷婷,久久久久88色偷偷,免费人成黄页在线观看国际

17站長網(wǎng)

17站長網(wǎng) 首頁 網(wǎng)站 服務(wù)器 查看內(nèi)容

詳解基于Tomcat安全配置與性能的優(yōu)化

2022-10-25 14:59| 查看: 2542 |來源: 互聯(lián)網(wǎng)

Tomcat 是 Apache軟件基金會下的一個免費、開源的WEB應(yīng)用服務(wù)器,它可以運行在 Linux 和 Windows 等多個平臺上,由于其性能穩(wěn)定、擴展性好、免費等特點深受廣大用戶喜愛。目前,很多互聯(lián)網(wǎng)應(yīng)用和企業(yè)應(yīng)用都部署在 To

Tomcat 是 Apache軟件基金會下的一個免費、開源的WEB應(yīng)用服務(wù)器,它可以運行在 Linux 和 Windows 等多個平臺上,由于其性能穩(wěn)定、擴展性好、免費等特點深受廣大用戶喜愛。目前,很多互聯(lián)網(wǎng)應(yīng)用和企業(yè)應(yīng)用都部署在 Tomcat 服務(wù)器上,比如我們公司,哈。

之前我們 tomcat 都采用的是默認的配置,因此在安全方面還是有所隱患的。上周對測試環(huán)境的所有服務(wù)器的tomcat都做了安全優(yōu)化,其間也粗略做了一些性能優(yōu)化,這里就簡單記錄分享下!

一、版本安全

升級當(dāng)前的tomcat版本為最新穩(wěn)定版本。故名思議,最新穩(wěn)定版本就要兼顧最新和穩(wěn)定這兩個概念。一個穩(wěn)定的版本,是需要時間沉淀的,而最新又是相對于穩(wěn)定版而言的最新。因此我們一般會選擇當(dāng)前大版本中,最新版本往前推幾個版本或者往前推幾個月出的版本。

目前,企業(yè)常用的tomcat大版本為6.0和7.0版本,8.0版本雖然已經(jīng)出了很久了,但是仍然不建議使用。

在升級版本中,需要注意的事情有兩點:

1、盡量避免跨大版本的升級

2、將當(dāng)前老版本 tomcat 的server.xml、catalina.sh、web.xml和tomcat-users.xml文件進行備份,然后部署完新版本的 tomcat 之后,將這些配置文件覆蓋過去即可,然后停掉舊版本,啟動新版本即可完成升級操作。

二、隱藏版本信息

為了避免黑客針對某些版本進行攻擊,因此我們需要隱藏或者偽裝 Tomcat 的版本信息。

針對該信息的顯示是由一個jar包控制的,該jar包存放在 Tomcat 安裝目錄下的lib目錄下,名稱為 catalina.jar。

我們可以通過 jar xf 命令解壓這個 jar 包會得到兩個目錄 META-INF 和 org ,通過修改 org/apache/catalina/util/ServerInfo.properties 文件中的 serverinfo 字段來實現(xiàn)來更改我們tomcat的版本信息。

文件信息如下:

[root@localhost ~]# cat org/apache/catalina/util/ServerInfo.properties |grep -v '^$|#' server.info=Apache Tomcat/7.0.53 server.number=7.0.53.0 server.built=Mar 25 2014 06:20:16 當(dāng)然,還有另外一種方法來實現(xiàn)隱藏或偽裝Tomcat的版本信息,不過本質(zhì)和上面一樣,操作如下: [root@localhost ~]# cd /usr/local/apache-tomcat-7.0.53/lib [root@localhost lib]# mkdir -p org/apache/catalina/util [root@localhost lib]# cd org/apache/catalina/util [root@localhost util]# vim ServerInfo.properties server.info=nolinux # 如果想修改成其它版本號,把這個地方的值改成其它值就行了

修改完畢之后,重啟 Tomcat即可看到效果!

三、優(yōu)化 web.xml

servlet與其它適用于整個Web應(yīng)用程序設(shè)置的配置文件,必須符合servlet規(guī)范的標準格式。通過它可以配置你web應(yīng)用的相關(guān)選項,tomcat在啟動的時候會讀取這個文件,完成你開發(fā)的系統(tǒng)的一些初始化操作。

它可以做如下事情:

1、提供基于 servlet 的相關(guān)配置

2、增加監(jiān)聽器,監(jiān)控session或在tomcat啟動時,加載一些你希望加載的資源。比如創(chuàng)建數(shù)據(jù)庫連接池等等

3、設(shè)置session過期時間,tomcat默認是30分鐘

4、更改應(yīng)用的默認網(wǎng)頁,常用為index.html/index.jsp等

5、增加過濾器,做一些你希望的過濾操作,比如敏感詞匯的過濾

6、增加一些 jstl(標準標簽庫)的定義,方便在jsp中直接includ進來,直接使用這些標簽

7、struts,spring或hibernate的一些配置等等

下面摘錄下O'REILLY 的《Tomcat 權(quán)威指南》中的一段話:

web.xml 的文件格式定義在 Servlet 規(guī)范中,因此所有符合 Servlet 規(guī)范的 Java Servlet Container 都會用到它。當(dāng) Tomcat 部署應(yīng)用程序時(在激活過程中,或加載應(yīng)用程序后),它都會讀取通用的conf/web.xml,然后再讀取web應(yīng)用程序中的WEB-INF/web.xml。其實根據(jù)他們的位置,我們就可以知道,conf/web.xml文件中的設(shè)定會應(yīng)用于所有的web應(yīng)用程序,而某些web應(yīng)用程序的WEB-INF/web.xml中的設(shè)定只應(yīng)用于該應(yīng)用程序本身。

如果沒有WEB-INF/web.xml文件,tomcat會輸出找不到的消息,但仍然會部署并使用web應(yīng)用程序,servlet規(guī)范的作者想要實現(xiàn)一種能迅速并簡易設(shè)定新范圍的方法,以用作測試,因此,這個web.xml并不是必要的,不過通常最好還是讓每一個上線的web應(yīng)用程序都有一個自己的WEB-INF/web.xml,即使它只用做識別,但我想這是一個好的習(xí)慣。

由于Servlet規(guī)范主要是對于web程序員,而非系統(tǒng)管理員使用的。因此,對于運維來講,我們可能更關(guān)心的是站點的默認網(wǎng)頁、自定義錯誤頁面、禁止列目錄等功能。

由于,正常生產(chǎn)環(huán)境中,肯定不會直接由tomcat對公網(wǎng)提供服務(wù),前端肯定放的有apache或者nginx。因此,針對站點的默認主頁和自定義錯誤頁面,我們均在前端的apache或者nginx中做。另外,公司也可能交由程序猿在項目內(nèi)的WEB-INF/web.xml中去做定義。

在tomcat新版本中,自動默認已經(jīng)禁止列目錄功能。

下面,我列出幾種常見功能,在web.xml中的表現(xiàn)形式:

站點默認主頁,

自定義錯誤頁面,

定義會話超時時間,

禁止列目錄.

四、優(yōu)化 tomcat-user.xml

該文件含有用戶名、角色以及密碼的清單文件。負責(zé)提供webapps下manager項目的登錄認證管理。

在生產(chǎn)環(huán)境中,我們需要將該文件全部注釋。

五、優(yōu)化 server.xml

Tomcat的主配置文件,該文件中包含很多主要元素,比如Service、Connector、Host等,這些元素都會創(chuàng)建軟件"對象"、排序及進程管道中設(shè)置的這些元素嵌套方,使我們可以執(zhí)行過濾、分組等工作。

如果要對改文件做優(yōu)化,我們需要先了解該文件的結(jié)構(gòu)!

server.xml的結(jié)構(gòu)圖:

該文件描述了如何啟動Tomcat Server

針對該文件,我們需要優(yōu)化的點有如下:

1、maxThreads 連接數(shù)限制

maxThreads 是 Tomcat 所能接受最大連接數(shù)。一般設(shè)置不要超過8000以上,如果你的網(wǎng)站訪問量非常大可能使用運行多個Tomcat實例的方法,即,在一個服務(wù)器上啟動多個tomcat然后做負載均衡處理。

這里還需要注意的一點是,tomcat 和 php 不同。php可以按照cpu和內(nèi)存的情況去配置連接數(shù),上萬很正常。而 java 還需要注意 jvm 的參數(shù)配置。如果不注意就會因為jvm參數(shù)過小而崩潰。

2、多虛擬主機

強烈建議不要使用 Tomcat 的虛擬主機,推薦每個站點使用一個實例。即,可以啟動多個 Tomcat,而不是啟動一個 Tomcat 里面包含多個虛擬主機。因為 Tomcat是多線程,共享內(nèi)存,任何一個虛擬主機中的應(yīng)用崩潰,都會影響到所有應(yīng)用程序。雖然采用多實例的方式會產(chǎn)生過多的開銷,但至少保障了應(yīng)用程序的隔離和安全。

3、壓錯傳輸

tomcat作為一個應(yīng)用服務(wù)器,也是支持 gzip 壓縮功能的。我們可以在 server.xml 配置文件中的 Connector 節(jié)點中配置如下參數(shù),來實現(xiàn)對指定資源類型進行壓縮。

compression="on" # 打開壓縮功能 compressionMinSize="50" # 啟用壓縮的輸出內(nèi)容大小,默認為2KB noCompressionUserAgents="gozilla, traviata" # 對于以下的瀏覽器,不啟用壓縮 compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"  # 哪些資源類型需要壓縮

提示:

Tomcat 的壓縮是在客戶端請求服務(wù)器對應(yīng)資源后,從服務(wù)器端將資源文件壓縮,再輸出到客戶端,由客戶端的瀏覽器負責(zé)解壓縮并瀏覽。相對于普通的瀏覽過程 HTML、CSS、Javascript和Text,它可以節(jié)省40% 左右的流量。更為重要的是,它可以對動態(tài)生成的,包括CGI、PHP、JSP、ASP、Servlet,SHTML等輸出的網(wǎng)頁也能進行壓縮,壓縮效率也很高。但是,壓縮會增加 Tomcat 的負擔(dān),因此最好采用Nginx + Tomcat 或者 Apache + Tomcat 方式,將壓縮的任務(wù)交由 Nginx/Apache 去做。

4、管理AJP端口

AJP是為 Tomcat 與 HTTP 服務(wù)器之間通信而定制的協(xié)議,能提供較高的通信速度和效率。如果tomcat前端放的是apache的時候,會使用到AJP這個連接器。由于我們公司前端是由nginx做的反向代理,因此不使用此連接器,因此需要注銷掉該連接器。

5、更改關(guān)閉 Tomcat 實例的指令

server.xml中定義了可以直接關(guān)閉 Tomcat 實例的管理端口。我們通過 telnet 連接上該端口之后,輸入 SHUTDOWN (此為默認關(guān)閉指令)即可關(guān)閉 Tomcat 實例(注意,此時雖然實例關(guān)閉了,但是進程還是存在的)。由于默認關(guān)閉 Tomcat 的端口和指令都很簡單。默認端口為8005,指令為SHUTDOWN 。因此我們需要將關(guān)閉指令修改復(fù)雜一點。

當(dāng)然,在新版的 Tomcat 中該端口僅監(jiān)聽在127.0.0.1上,因此大家也不必擔(dān)心。除非黑客登陸到tomcat本機去執(zhí)行關(guān)閉操作。

修改實例:

6、更改 Tomcat 的服務(wù)監(jiān)聽端口

一般公司的 Tomcat 都是放在內(nèi)網(wǎng)的,因此我們針對 Tomcat 服務(wù)的監(jiān)聽地址都是內(nèi)網(wǎng)地址。

修改實例:

7、關(guān)閉war自動部署

默認 Tomcat 是開啟了對war包的熱部署的。為了防止被植入木馬等惡意程序,因此我們要關(guān)閉自動部署。

修改實例:

六、禁用 Tomcat 管理頁面

我們線上是不使用 Tomcat 默認提供的管理頁面的,因此都會在初始化的時候就把這些頁面刪掉。這些頁面是存放在 Tomcat 安裝目錄下的webapps目錄下的。

我們只需要刪除該目錄下的所有文件即可。

當(dāng)然,還有涉及管理頁面的2個配置文件 host-manager.xml 和 manager.xml 也需要一并刪掉。這兩個文件存放在 Tomcat 安裝目錄下的conf/Catalina/localhost目錄下。

七、用普通用戶啟動 Tomcat

為了進一步安全,我們不建議使用 root 來啟動 Tomcat。這邊建議使用專用用戶 tomcat 或者 nobody 用戶來啟動 Tomcat。

在啟動之前,需要對我們的tomcat 安裝目錄下所有文件的屬主和屬組都設(shè)置為指定用戶。

八、分離 Tomcat 和項目的用戶

為了防止 Tomcat 被植入 web shell 程序后,可以修改項目文件。因此我們要將 Tomcat 和項目的屬主做分離,這樣子,即便被搞,他也無法創(chuàng)建和編輯項目文件。

本文最后更新于 2022-10-25 14:59,某些文章具有時效性,若有錯誤或已失效,請在網(wǎng)站留言或聯(lián)系站長:17tui@17tui.com
·END·
站長網(wǎng)微信號:w17tui,關(guān)注站長、創(chuàng)業(yè)、關(guān)注互聯(lián)網(wǎng)人 - 互聯(lián)網(wǎng)創(chuàng)業(yè)者營銷服務(wù)中心

免責(zé)聲明:本站部分文章和圖片均來自用戶投稿和網(wǎng)絡(luò)收集,旨在傳播知識,文章和圖片版權(quán)歸原作者及原出處所有,僅供學(xué)習(xí)與參考,請勿用于商業(yè)用途,如果損害了您的權(quán)利,請聯(lián)系我們及時修正或刪除。謝謝!

17站長網(wǎng)微信二維碼

始終以前瞻性的眼光聚焦站長、創(chuàng)業(yè)、互聯(lián)網(wǎng)等領(lǐng)域,為您提供最新最全的互聯(lián)網(wǎng)資訊,幫助站長轉(zhuǎn)型升級,為互聯(lián)網(wǎng)創(chuàng)業(yè)者提供更加優(yōu)質(zhì)的創(chuàng)業(yè)信息和品牌營銷服務(wù),與站長一起進步!讓互聯(lián)網(wǎng)創(chuàng)業(yè)者不再孤獨!

掃一掃,關(guān)注站長網(wǎng)微信

大家都在看

  • 當(dāng)我們在共享網(wǎng)絡(luò)訪問的時候,可能會遇到提示指定的網(wǎng)絡(luò)名不再可用的問題,這可能是由于我們的共享網(wǎng)絡(luò)出現(xiàn)了錯誤,也可能是被共享的對象所拒絕了。指定的網(wǎng)絡(luò)名 ......

    故障排除 2023-03-10
  • 1、首先進入到“百度”軟件中, 2、然后在其中輸入“百度識圖”, 3、之后點擊圖中的“開始使用”按鈕, 4、緊接著點擊右下角的“相冊”功能, 5、在相冊下 ......

    軟件教程 2023-02-17
  • 一、軟件沖突1、首先確認是否是應(yīng)用程序沖突導(dǎo)致的。2、查看是否只有特定幾個游戲或應(yīng)用會導(dǎo)致該問題。3、如果是應(yīng)用沖突,那么只要卸載這些app就可以解決了。二 ......

    軟件教程 2022-12-27
  •   文/曹楊  原標題:誰還看電視?  爸爸戴一副老花鏡,媽媽戴一副近視鏡,一人坐在沙發(fā),一人躺在床上,各自刷著自己關(guān)注的博主更新的短視頻。電視也許開著,但只是背景! ∵@樣的畫面,幾乎成了洛奇家的常 ...

    站長 2020-12-09
  • 圖片來源于簡書  文/郭開森 楊帆  陸玖財經(jīng)準備開新欄目了,每周一創(chuàng)始人郭開森和楊帆合體郭德帆,對行業(yè)進行一些觀察和評論,第一篇我們?nèi)允谴蛩銓懮鐓^(qū)團購,這是當(dāng)下最火的話題。  來過陸玖財經(jīng)做客的朋友們...

    熱議 2020-12-07
  • 電腦端:1、大家可以點擊右邊鏈接進入網(wǎng)頁版的百度網(wǎng)盤,進入之后點擊“去登錄”。https://pan.baidu.com/2、之后正確的輸入賬號密碼進行登錄就好啦。手機端:1 ......

    軟件教程 2022-12-27
  • 一、N100對比intel i3 1、N100的跑分達到了147210分,這個數(shù)據(jù)可以達到i3的七代級別。 2、在跑分上也是超越了大部分的I3七代CPU,不過比I3八代要弱勢一些。 3 ......

    硬件知識 2023-04-26
  • 在填寫一些項目申請書中,總是免不了要選擇一些數(shù)字,但是在方框中如何插入數(shù)字,該怎么辦呢?那么下面就由學(xué)習(xí)啦小編給大家分享下word在方框里輸入數(shù)字的技巧, ......

    Word教程 2023-04-27
  • 8月15日消息 上周,有媒體報道前身為百度圖片的“榴蓮”APP含有大量不雅視頻內(nèi)容被用戶舉報。對此,百度圖片官方進行了回應(yīng),百度圖片表示已經(jīng)對報道中所涉及的“生吃旋風(fēng)哥”等爭議內(nèi)容進行了下線處理。 此外,百度...

    站長 2016-08-15
  • 迅雷前綴是什么 答:迅雷前綴是(magnet:?xt=urn:btih:)括號里的就是了。 我們只要在這段文字之后輸入后續(xù)的內(nèi)容,就可以創(chuàng)建下載鏈接了。 1、磁力鏈接不基于文 ......

    軟件教程 2023-06-03
  • WPS Office手機版怎么加橫線?很多用戶還不知道WPS Office手機版怎么加橫線,WPS Office手機版怎么加橫線,WPS Office手機版怎么打橫線,WPS Office手機版怎么弄 ......

    WPS教程 2023-03-31
  • 一、內(nèi)容特權(quán)。 1、半價點播。 許多站內(nèi)視頻都需要付費觀看,而大會員用戶可以直接半價享受; 購買成功后的48h內(nèi)無限次觀看。有部分的內(nèi)容是只限在中國大陸內(nèi)觀 ......

    軟件教程 2023-05-05
  • 1、首先打開小米運動的“實驗室功能”。 2、接著點擊“門卡模擬”。 3、然后點擊“我知道了”。 4、最后貼近就可以刷卡成功了。...

    硬件知識 2023-05-17
  • 1、打開手機輕顏相機app,點擊“我的”,點擊“設(shè)置”,2、點擊“幫助與反饋”,3、點擊右下角“在線咨詢”即可聯(lián)系客服,詢問自己的問題啦!...

    軟件教程 2023-03-16
  • 答:華為P系列: 華為p40,華為p40plus,華為p50,華為p50e,華為p60 華為mate系列: 華為mate40,華為mate50,華為mate50e,華為mate60 華為nova系列: 華為n ......

    鴻蒙系統(tǒng) 2023-04-24
  • 近期有用戶反映,電腦在更新Windows 11 Insider Preview 25252.1000后,出現(xiàn)了應(yīng)用和已壓縮的文件點擊毫無反應(yīng),拖拽都不行,只能從開始菜單打開的情況,這是怎 ......

    windows11 2022-12-13
  • 可見單元格就是不包括隱藏或者篩選篩選后隱藏起來的單元格區(qū)域。方法:篩選或隱藏數(shù)據(jù),復(fù)制需要粘貼的值,在目標單元格區(qū)域左上角的第一個單元格處右擊,選擇【 ......

    WPS教程 2022-12-10
  • 答:驍龍8+更好。 驍龍7+gen2實際上就是驍龍8+的低配版本。 在一些其他的核心架構(gòu)方面都是保持一致的,比如說CPU的架構(gòu)、GPU的架構(gòu)等等。 驍龍7+和驍龍8+具體 ......

    硬件知識 2023-04-06
  • 1、先打開機頂盒進入主界面,并且使用遙控器打開設(shè)置。 2、然后選擇“賬號與安全”,并且進入。 3、最后往下面翻就可以看到“ADB調(diào)試”的選項,直接開啟就行了 ......

    軟件教程 2023-06-01
  • 藍奏云怎么打開別人分享的鏈接1、當(dāng)我們獲得了鏈接以后,首先需要把鏈接粘貼進瀏覽器里回車進入。2、進入以后就會轉(zhuǎn)到這樣一個頁面,如果有密碼的話我們就輸入給 ......

    軟件教程 2023-03-16
  • 文件被win10系統(tǒng)誤報病毒自動刪除了如何進行恢復(fù)?有用戶下載了某些破解軟件卻被Win10系統(tǒng)誤認為是病毒文件而自動刪除,當(dāng)然系統(tǒng)自帶殺毒軟件其實挺不錯的,就是有時候會誤報,大家遇到這種情況的時候就希望把誤刪的...

    windows10 2022-11-20
  •   文/黎明  一場針對中國互聯(lián)網(wǎng)巨頭的反壟斷風(fēng)暴正在醞釀,而且這次動真格了! 11月10日,國家市場監(jiān)管總局發(fā)布《關(guān)于平臺經(jīng)濟領(lǐng)域的反壟斷指南(征求意見稿)》,要加大對互聯(lián)網(wǎng)巨頭涉嫌壟斷的調(diào)查和監(jiān)管。 ...

    熱議 2020-11-14
  • win11系統(tǒng)如何釋放掉系統(tǒng)默認保留的存儲空間?一般情況下,Windows會保留一些存儲空間,以便設(shè)備獲得良好性能和成功更新。但是當(dāng)出現(xiàn)系統(tǒng)盤儲存空間不足時,我們會將幾個G的保留空間釋放出來,以解燃眉之急。本期教...

    windows11 2022-11-17
  • 答:在3DMark壓力測試當(dāng)中,顯卡需要超高97%才能夠算合格,證明顯卡的穩(wěn)定性是過關(guān)的。 1、一般的默認情況下在2500~3000分就算很正常的了。 2、分數(shù)越高說明顯卡 ......

    軟件教程 2023-06-01
  • 我們經(jīng)常用WPS的時候,如果需要輸入波浪號~,會發(fā)現(xiàn)鍵盤上的波浪號輸入之后在最上面,但是為了美觀,我們希望波浪號顯示在中間。這里總結(jié)了三個方法分享給大家 ......

    WPS教程 2023-02-18
  • 羅技g304dpi燈顏色代表什么:1、藍色:這種情況是正常工作的顯示,如果說是常亮或者閃爍,那都沒有問題這是在正常工作呢。2、紅色:如果說是紅燈閃爍的話那就是 ......

    硬件知識 2023-03-16
  • 答:中高端水平 i513500hx在處理器當(dāng)中是處于一個中高端的水平。 i513500hx是第十一代酷睿處理器系列的一員,基礎(chǔ)頻率為2.4GHz,表現(xiàn)十分的不錯。 i513500hx介 ......

    硬件知識 2023-04-27
  • 1、下載番茄作家助手,登錄你自己的賬號進入。2、在首頁這里可以看到你創(chuàng)建的書籍,或者新建一個小說,點擊這個黃色的編輯圖標。3、進入以后,再點擊“創(chuàng)建章節(jié) ......

    軟件教程 2023-03-16
  • 打開軟件,直接填寫就可以。 1、下載安裝easyconnect軟件, 2、打開easyconnect應(yīng)用,在如圖所示的“服務(wù)器地址”一欄輸入如圖所示網(wǎng)址,點擊“連接”, 3、等 ......

    軟件教程 2023-04-03
  • win11系統(tǒng)快速跳過聯(lián)網(wǎng)創(chuàng)建本地管理賬戶3種方法?現(xiàn)在市面上銷售的品牌筆記本和臺式機基本上都預(yù)裝Windows11家庭中文版正版操作系統(tǒng),聯(lián)網(wǎng)后系統(tǒng)會自動激活。當(dāng)用戶拿到新機器后還需要按照cortana(小娜)的提示一步...

    windows11 2022-11-13

熱門排行

    最近更新

      返回頂部