1. 程式人生 > >開源中介軟體tomcat伺服器安全配置基線指導

開源中介軟體tomcat伺服器安全配置基線指導

本文規定了資訊系統部門所維護管理的Tomcat WEB伺服器應當遵循的安全性設定標準,本文件旨在指導系統管理人員進行Tomcat WEB伺服器的安全配置。本文適用的tomcat伺服器版本為4.x5.x6.x版本的Tomcat Web伺服器。

1.1   賬號

安全基線專案名稱

Tomcat共享帳號管理安全基線要求項

安全基線編號

SBL-Tomcat-02-01-01

安全基線項說明

應按照使用者分配賬號。避免不同使用者間共享賬號。避免使用者賬號和裝置間通訊使用的賬號共享。

檢測操作步驟

1、參考配置操作

修改tomcat/conf/tomcat-users.xml

配置檔案,修改或新增帳號。

<user username=”tomcat” password=” Tomcat!234” roles=”admin”>

2、補充操作說明

1、根據不同使用者,取不同的名稱。

2Tomcat 4.1.375.5.276.0.18這三個版本及以後發行的版本預設都不存在admin.xml配置檔案。

基線符合性判定依據

1、判定條件

各賬號都可以登入Tomcat Web伺服器為正常

2、檢測操作

訪問http://ip:8080/manager/html管理頁面,進行Tomcat伺服器管理

備註

安全基線專案名稱

Tomcat無關帳號管理安全基線要求項

安全基線編號

SBL-Tomcat-02-01-02

安全基線項說明

應刪除或鎖定與裝置執行、維護等工作無關的賬號。

檢測操作步驟

1、參考配置操作

修改tomcat/conf/tomcat-users.xml配置檔案,刪除與工作無關的帳號。

例如tomcat1與執行、維護等工作無關,刪除帳號:

<user username=”tomcat1” password=”tomcat” roles=”admin”>

基線符合性判定依據

1、判定條件

被刪除的與工作無關的賬號tomcat1不能正常登陸。

2、檢測操作

訪問http://ip:8080/manager/html管理頁面,使用刪除帳號進行登陸嘗試。

備註

1.2   口令

安全基線專案名稱

Tomcat密碼複雜度安全基線要求項

安全基線編號

SBL-Tomcat-02-02-01

安全基線項說明

對於採用靜態口令認證技術的裝置,口令長度至少8位,幷包括數字、小寫字母、大寫字母和特殊符號4類中至少2類。

檢測操作步驟

1、參考配置操作

tomcat/conf/tomcat-user.xml配置檔案中設定密碼

<user username=”tomcat” password=”Tomcat!234” roles=”admin”>

2、補充操作說明

口令要求:長度至少8位,幷包括數字、小寫字母、大寫字母和特殊符號4類中至少2類。

基線符合性判定依據

1、判定條件

檢查tomcat/conf/tomcat-user.xml配置檔案中的帳號口令是否符合移動通過配置口令複雜度要求。

2、檢測操作

1)人工檢查配置檔案中帳號口令是否符合;

2)使用tomcat弱口令掃描工具定期對Tomcat Web伺服器進行遠端掃描,檢查是否存在弱口令帳號。

3、補充說明

對於使用弱口令掃描工具進行檢查時應注意掃描的執行緒數等方面,避免對伺服器造成不必要的資源消耗;選擇在伺服器負荷較低的時間段進行掃描檢查。

備註

安全基線專案名稱

Tomcat密碼歷史安全基線要求項

安全基線編號

SBL-Tomcat-02-02-02

安全基線項說明

對於採用靜態口令認證技術的裝置,應支援按天配置口令生存期功能,帳號口令的生存期不長於90天。

檢測操作步驟

1、參考配置操作

定期對管理Tomcat Web伺服器的帳號口令進行修改,間隔不長於90天。

基線符合性判定依據

1、判定條件

90天后使用原帳號口令進行登陸嘗試,登入不成功;

2、檢測操作

使用超過90天的帳號口令進行登入嘗試;

備註

適用於4.x5.x6.x所有版本。

1.3   授權

安全基線專案名稱

Tomcat使用者權利指派安全基線要求項

安全基線編號

SBL-Tomcat-02-03-01

安全基線項說明

在裝置許可權配置能力內,根據使用者的業務需要,配置其所需的最小許可權。

檢測操作步驟

1、參考配置操作

編輯tomcat/conf/tomcat-user.xml配置檔案,修改使用者角色許可權

授權tomcat具有遠端管理許可權:

<user username=”tomcat” password=”chinamobile”

roles=”admin,manager”>

2、補充操作說明

1Tomcat 4.x5.x版本使用者角色分為:role1tomcatadminmanager四種。

role1:具有讀許可權;

tomcat:具有讀和執行許可權;

admin:具有讀、執行和寫許可權;

manager:具有遠端管理許可權。

Tomcat 6.0.18版本只有adminmanager兩種使用者角色,且admin使用者具有manager管理許可權。

2Tomcat 4.1.375.5.27版本及以後發行的版本預設除admin使用者外其他使用者都不具有manager管理許可權。

基線符合性判定依據

1、判定條件

登陸遠端管理頁面,使用tomcat賬號進行登陸,登陸成功。

2、檢測操作

登陸http://ip:8080/manager/html頁面,使用tomcat賬號登陸,進行遠端管理。

備註

第2章           日誌配置操作

安全基線專案名稱

Tomcat稽核登入安全基線要求項

安全基線編號

SBL-Tomcat-03-01-01

安全基線項說明

裝置應配置日誌功能,對使用者登入進行記錄,記錄內容包括使用者登入使用的賬號,登入是否成功,登入時間,以及遠端登入時,使用者使用的IP地址。

檢測操作步驟

1、參考配置操作

編輯server.xml配置檔案,在<HOST>標籤中增加記錄日誌功能

將以下內容的註釋標記< ! --    -- >取消

<valve classname=”org.apache.catalina.valves.AccessLogValve”

Pattern=”common” resloveHosts=”false”/>

2、補充操作說明

classname:This MUST be set to

 org.apache.catalina.valves.AccessLogValve to use the default access log valve. &<60

Directory:日誌檔案放置的目錄,在tomcat下面有個logs資料夾,那裡面是專門放置日誌檔案的,也可以修改為其他路徑;

Prefix: 這個是日誌檔案的名稱字首,日誌名稱為localhost_access_log.2008-10-22.txt,前面的字首就是這個localhost_access_log

Suffix: 檔案字尾名

Pattern: common方式時,將記錄訪問源IP、本地伺服器IP、記錄日誌伺服器IP、訪問方式、傳送位元組數、本地接收埠、訪問URL地址等相關資訊在日誌檔案中

resolveHosts:值為true時,tomcat會將這個伺服器IP地址通過DNS轉換為主機名,如果是false,就直接寫伺服器IP地址

基線符合性判定依據

1、判定條件

檢視logs目錄中相關日誌檔案內容,記錄完整

2、檢測操作

檢視localhost_access_log.2008-10-22.log中相關日誌記錄

3、補充說明

備註

第3章           IP協議安全配置

3.1   IP協議

安全基線專案名稱

Tomcat支援加密協議安全基線要求項

安全基線編號

SBL-Tomcat-04-01-01

安全基線項說明

對於通過HTTP協議進行遠端維護的裝置,裝置應支援使用HTTPS等加密協議。

檢測操作步驟

1、參考配置操作

(1)使用JDK自帶的keytool工具生成一個證書

JAVA_HOME/bin/keytool  -genkey –alias tomcat –keyalg  RSA

-keystore /path/to/my/keystore

(2)修改tomcat/conf/server.xml配置檔案,更改為使用https方式,增加如下行:

Connector classname=”org.apache.catalina.http.HttpConnector”

port=”8443”  minProcessors=”5”  maxprocessors=”100”

enableLookups=”true”  acceptCount=”10”  debug=”0”

scheme=”https” secure=”true” >

Factory classname=”org.apache.catalina.SSLServerSocketFactory”

clientAuth=”false”

keystoreFile=”/path/to/my/keystore”  keystorePass=”runway”

protocol=”TLS”/>

/Connector>

其中keystorePass的值為生成keystore時輸入的密碼

(3)重新啟動tomcat服務

基線符合性判定依據

1、判定條件

使用https方式登陸tomcat伺服器頁面,登陸成功

2、檢測操作

使用https方式登陸tomcat伺服器管理頁面

備註

安全基線專案名稱

Tomcat定時登出安全基線要求項

安全基線編號

SBL-Tomcat-05-01-01

安全基線項說明

對於具備字元互動介面的裝置,應支援定時賬戶自動登出。登出後用戶需再次登入才能進入系統。

檢測操作步驟

1、參考配置操作

編輯tomcat/conf/server.xml配置檔案,修改為30

<Connector

port="8080"  maxHttpHeaderSize="8192" maxThreads="150"

minSpareThreads="25" maxSpareThreads="75"

enableLookups="false" redirectPort="8443" acceptCount="100"

 connectionTimeout="300" disableUploadTimeout="true" />

 2、補充操作說明

基線符合性判定依據

1、判定條件

30秒自動登出。

2、檢測操作

登陸tomcat預設頁面http://ip:8080/manager/html ,使用管理賬號登陸

3、補充說明

備註

安全基線專案名稱

Tomcat執行埠安全基線要求項

安全基線編號

SBL-Tomcat-05-01-02

安全基線項說明

更改tomcat伺服器預設埠

檢測操作步驟

1、參考配置操作

1)修改tomcat/conf/server.xml配置檔案,更改預設管理埠到8800

 <Connector

port="8800"  maxHttpHeaderSize="8192" maxThreads="150"

minSpareThreads="25" maxSpareThreads="75"

enableLookups="false" redirectPort="8443" acceptCount="100"

 connectionTimeout="300" disableUploadTimeout="true" />

2)重啟tomcat服務

 2、補充操作說明

基線符合性判定依據

1、判定條件

使用8800埠登陸頁面成功

2、檢測操作

登陸http://ip:8800

3、補充說明

備註

安全基線專案名稱

Tomcat錯誤頁面安全基線要求項

安全基線編號

SBL-Tomcat-05-01-03

安全基線項說明

Tomcat錯誤頁面重定向

檢測操作步驟

1、參考配置操作(1)檢視tomcat/conf/web.xml檔案:
<error-page> 
<error-code>404</error-code>
<location>/noFile.htm</location> 
</error-page>
……………
<error-page>
<exception-type>java.lang.NullPointerException</exception-type>
<location>/ error.jsp</location> 
</error-page>

基線符合性判定依據

1、     判定條件

要求包含如下片段:

備註

安全基線專案名稱

Tomcat目錄列表安全基線要求項

安全基線編號

SBL-Tomcat-05-01-04

安全基線項說明

禁止tomcat列表顯示檔案

檢測操作步驟

1、參考配置操作

(1) 編輯tomcat/conf/web.xml配置檔案, 
<init-param>
        <param-name>listings</param-name>
        <param-value>true</param-value>
    </init-param>
true改成false

 (2)重新啟動tomcat服務

基線符合性判定依據

1、判定條件

WEB目錄中沒有預設首頁如index.html,index.jsp等檔案時,不會列出目錄內容

2、檢測操作

直接訪問http://ip:8800/webadd

備註

來源:http://blog.chinaunix.net/uid-25723371-id-3291497.html