0°

Tomcat安全加固

1.更新Tomcat版本

2.Tomcat不对外提供端口服务

3.删除示例程序

4.检查控制台口令

5.设置SHUTDOWN 字符串

6.设置运行身份

7.禁止列目录

8.日志审核

9.自定义错误信息

1. 更新Tomcat版本

关注Tomcat官方及时更新Tomcat版本

2. Tomcat不对外提供端口服务

Tomcat不对外提供端口服务,限制IP,使用Nginx转发到Tomcat处理请求,建议保留Nginx日志

3. 删除文档和示例程序

删除文档和示例程序

方法:打开tomcat_home/webapps 文件夹,默认存在docs 和examples 文件

4. 检查控制台口令

加固tomcat 控制台,设置复杂的口令

方法:

(1)默认通过http://ip:8080/manager/html 可以访问tomcat manager,如

如果不需要使用,建议删除tomcat_home/webapps/manager 和host-manager 文件夹;

默认通过http://ip:8080/admin 可以访问tomcat admin,如果不需要使用,

建议删除tomcat_home/webapps/admin 文件夹

(2)如果需要使用tomcat manager,打开

tomcat_home/conf/tomcat-users.xml,查看用户密码复杂度,例如:

..<role rolename=”manager”/>

..<user username=”tomcat” password=”复杂的口令” roles=”manager”/>

方法:

(1) 删除tomcat_home/webapps 下的相关文件夹

(2) 在tomcat-users.xml 中为所有用户设置复杂的密码

5. 设置SHUTDOWN 字符串

防止恶意用户telnet 到8005 端口后,发送SHUTDOWN 命令停止

方法:打开tomcat_home/conf/server.xml,查看是否设置了复杂的字符串

<Server port=”8005″ shutdown=”复杂的字符串”>

方法:设置复杂的字符串,防止恶意用户猜测

6. 设置运行身份

以tomcat 用户运行服务,增强安全性

方法:查看tomcat 的启动脚本或服务,确认是否以tomcat 身份运行

方法:

(1) 创建apache 组:groupadd tomcat

(2) 创建apache 用户并加入apache 组:useradd tomcat –g tomcat

(3) 以tomcat 身份启动服务

Windows 系统:

(1) 新建一个tomcat 用户

(2) 设置tomcat 用户对tomcat_home 的相关权限

(3) 在服务管理器 (service.msc) 中找到tomcat 服务,右键选择属性,

设置登录身份为tomcat 用户

7. 禁止列目录

防止直接访问目录时由于找不到默认主页而列出目录下所有文件

方法:打开应用程序的web.xml ,查看listings 是否设置为false

<param-name>listings</param-name>

<param-value>false</param-value>

方法:将listings 的值修改为false

8. 日志审核

检查tomcat 是否记录了访问日志

方法:tomcat 的日志信息默认存放在tomcat_home/logs 中,访问日志默认未开启

方法:如果tomcat 前端有Apache ,Apache 可以记录访问日志。如果tomcat

独立运行,可以开启tomcat 访问日志,修改

tomcat_home/conf/server.xml,取消注释:

<Valve className=”org.apache.catalina.valves.AccessLogValve”

directory=”logs”

prefix=”localhost_access_log.” suffix=”.txt” pattern=”common”

resolveHosts=”false”/>

启用access_log 后,重启tomcat,在tomcat_home/logs 中可以看到访问日志

注:这里记录的时间转换为北京时间需要+8 小时

9. 自定义错误信息

自定义Tomcat 返回的错误信息

方法:查看应用程序的web.xml 中<error-page> </error-page> 部分的设置

方法:修改应用程序的web.xml ,在最后</web-app>一行之前加入以下内容

(1)表示出现404 未找到网页的错误时显示404.html 页面

<error-page>

<error-code>404</error-code>

<location>/404.html</location>

</error-page>

建议自定义403 ,404,500 错误的页面

(2 )表示出现java.lang.NullPointerException 错误时显示 error.jsp 页面

<error-page>

<exception-type>java.lang.NullPointerException</exception-type>

<location>/error.jsp</location>

</error-page>

 

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!