如何設(shè)置tomcat服務(wù)器安全

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何設(shè)置tomcat服務(wù)器安全,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:空間域名、虛擬主機(jī)、營銷軟件、網(wǎng)站建設(shè)、青海網(wǎng)站維護(hù)、網(wǎng)站推廣。

1. 刪除webapps目錄下的所有文件,禁用tomcat管理界面

rm -rf /usr/local/tomcat/apache-tomcat-9.0.1/webapps/*

2.注釋或刪除tomcat-users.xml文件內(nèi)的所有用戶權(quán)限:

如何設(shè)置tomcat服務(wù)器安全

3.隱藏版本信息,修改conf/server.xml

如何設(shè)置tomcat服務(wù)器安全

如何設(shè)置tomcat服務(wù)器安全

3.用戶問題:

nginx,httpd 使用root用戶啟動守護(hù)80端口,子進(jìn)程/線程會通過setuid(),setgid()兩個函數(shù)切換到普通用戶。即父進(jìn)程所有者是root用戶,子進(jìn)程與多線程所有者是一個非root用戶,這個用戶沒有shell,無法通過ssh與控制臺登陸系統(tǒng);
而Java 的JVM 是與系統(tǒng)無關(guān)的,是建立在OS之上的,使用什么用戶啟動Tomcat,那麼Tomcat 就會繼承該所有者的權(quán)限。
這造成了一個問題,Linux系統(tǒng)小于1024的端口只有root可以使用,這也是Tomcat默認(rèn)端口是8080。如果想使用80端口只能使用root啟動Tomcat。這有帶來了很多安全問題。

創(chuàng)建一個用戶,只能用于啟動tomcat:

groupadd -g 80 tomcat
adduser -o --home /tomcat --shell /sbin/nologin --uid 80 --gid 80 -c "Web server" tomcat
chown tomcat:tomcat -R /usr/local/tomcat/apache-tomcat-9.0.1/*
su - tomcat -c "/usr/local/tomcat/apache-tomcat-9.0.1/bin/startup.sh"

做一個端口映射,訪問80時調(diào)用8080端口

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

如何設(shè)置tomcat服務(wù)器安全

取消跳轉(zhuǎn):

iptables -t nat -D PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

4.關(guān)閉自動部署war

vim conf/server.xml

如何設(shè)置tomcat服務(wù)器安全

5.隱藏404出現(xiàn)的版本信息:

到lib下解壓catalina.jar,   jar xf catalina.jar

vim /usr/local/tomcat/apache-tomcat-9.0.1/lib/org/apache/catalina/util/ServerInfo.properties

如何設(shè)置tomcat服務(wù)器安全

如何設(shè)置tomcat服務(wù)器安全

6.更改關(guān)閉tomcat指令

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

如何設(shè)置tomcat服務(wù)器安全

如何設(shè)置tomcat服務(wù)器安全

或者禁用8005端口

 <Server port="-1" shutdown="SHUTDOWN">

7.分離tomcat和項(xiàng)目用戶

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

8.在conf/web.xml  添加如下配置

如何設(shè)置tomcat服務(wù)器安全

9.自定義錯誤頁面

web.xml是在某一個應(yīng)用下面的,他處理的應(yīng)當(dāng)是本應(yīng)用的404,而http://localhost/訪問的是tomcat自已的應(yīng)用,那么這個web.xml配置就應(yīng)當(dāng)在webapp/Root/下面的應(yīng)用來配了,
Root目錄下面放著Tomcat的應(yīng)用,把里面換成自已的就行了.
在/webapps/ROOT/WEB-INF/web.xml添加

如何設(shè)置tomcat服務(wù)器安全

在webapps目錄下創(chuàng)建error.jsp文件

<%@ page contentType="text/html; charset=UTF-8" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<html>
<header>
<title>404 page</title>
<body>
<pre>
<%
  Enumeration<String> attributeNames = request.getAttributeNames();
  while (attributeNames.hasMoreElements())
  {
    String attributeName = attributeNames.nextElement();
    Object attribute = request.getAttribute(attributeName);
  out.println("request.attribute['" + attributeName + "'] = " + attribute);
  }
%>
</pre>

如何設(shè)置tomcat服務(wù)器安全

exception.jsp文件

<%@ page contentType="text/html; charset=UTF-8" isErrorPage="true" %>
<%@ page import="java.io.*" %>
<html>
<header>
<title>exception page</title>
<body>
<hr/>
<pre>
<%
response.getWriter().println("Exception: " + exception);
 
if(exception != null)
{
  response.getWriter().println("<pre>");
  exception.printStackTrace(response.getWriter());
  response.getWriter().println("</pre>");
}
 
respons
e.getWriter().println("<hr/>");
%>

在瀏覽器測試自定義的錯誤頁面:

如何設(shè)置tomcat服務(wù)器安全

如何設(shè)置tomcat服務(wù)器安全

定義會話超時時間及禁止列目錄

如何設(shè)置tomcat服務(wù)器安全

上述就是小編為大家分享的如何設(shè)置tomcat服務(wù)器安全了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)站標(biāo)題:如何設(shè)置tomcat服務(wù)器安全
分享網(wǎng)址:http://muchs.cn/article6/iegpog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、自適應(yīng)網(wǎng)站、服務(wù)器托管、品牌網(wǎng)站建設(shè)、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名