這次的安全加固,Tomcat是重災區。所以整理下Tomcat的安全加固。
1. 升級到最新穩定版,這個是老生常談了。目前Tomcat支持6.0和7.0兩個版本。
1) 出于穩定性考慮,不建議進行跨版本升級,如果之前是6.0系列版本,最好還是使用該系列的最新版本。
2) 在統計目錄部署最新的Tomcat,將conf目錄下的文件和webapp復制過來,之后修改server.xml,修改監聽端口進行測試,無誤后關閉Tomcat并改回端口。接下來就可以在發布的時候停止舊的Tomcat并開啟新的Tomcat,至此升級完畢。
2. 從監聽端口上加固
1) 如果Tomcat不需要對外提供服務,則監聽在本地回環,前面放Nginx。如果需要對外提供訪問,比如一個Nginx掛多個Tomcat,那么在服務器上用iptables只允許負載均衡器的IP來訪問
<Connector port="8080" address="127.0.0.1" maxHttpHeaderSize="8192" URIEncoding="UTF-8" maxThreads="500" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="10000" disableUploadTimeout="true" />
2) 現在我們一般不用Apache通過AJP協議來調用Tomcat了,所以AJP端口可以關閉。
<!-- <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> -->
3) 在新版的Tomcat中,SHUTDOWN端口默認就是監聽在127.0.0.1的,所以不需要修改。如果還想加固,那可以把SHUTDOWN換成其它的字符串。
<Server port="8005" shutdown="YourString">
3. 自定義錯誤頁面,隱藏Tomcat信息
編輯conf/web.xml,在</web-app>標簽上添加以下內容:
<error-page> <error-code>404</error-code> <location>/404.html</location> </error-page> <error-page> <error-code>500</error-code> <location>/500.html</location> </error-page>
4. 禁用Tomcat管理頁面
1) 刪除webapps目錄下Tomcat原有的所有內容
2) 刪除conf/Catalina/localhost/下的host-manager.xml和manager.xml這兩個文件
5. 用普通用戶啟動Tomcat
useradd -M -s /bin/false tomcat chown -R tomcat.tomcat /usr/local/src/apache-tomcat-6.0.37 su - tomcat -c "/usr/local/src/apache-tomcat-6.0.37/bin/catalina.sh start"
6. 禁止Tomcat列目錄
這在新版本中默認就是禁用的,可以在conf/web.xml中編輯
<init-param> <param-name>listings</param-name> <param-value>false</param-value> </init-param>
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。