第1章 账号管理、认证授权

1.1 账号

1.1.1 共享帐号管理

安全基线项目名称

Tomcat共享帐号管理安全基线要求项

安全基线编号

SBL-Tomcat-01-01-01

安全基线项说明  

应按照用户分配账号。避免不同用户间共享账号。避免用户账号和设备间通信使用的账号共享。

检测操作步骤

1、参考配置操作

修改tomcat/conf/tomcat-users.xml配置文件,修改或添加帐号。

<user username=”tomcat7admin” password=”sinoTn@1234” roles=”manager-gui”>

2、补充操作说明

1、根据不同用户,取不同的名称。

2、Tomcat 4.1.37、5.5.27和6.0.18这三个版本及以后发行的版本默认都不存在admin.xml配置文件。

基线符合性判定依据

1、判定条件

各账号都可以登录Tomcat Web服务器为正常

2、检测操作

访问http://ip:8080/manager/html管理页面,进行Tomcat服务器管理

备注

 

1.1.2 无关帐号管理

安全基线项目名称

Tomcat无关帐号管理安全基线要求项

安全基线编号

SBL-Tomcat-01-01-02

安全基线项说明  

应删除或锁定与设备运行、维护等工作无关的账号。

检测操作步骤

1、参考配置操作

修改tomcat/conf/tomcat-users.xml配置文件,删除与工作无关的帐号。

例如tomcat1与运行、维护等工作无关,删除帐号:

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

基线符合性判定依据

1、判定条件

被删除的与工作无关的账号tomcat1不能正常登陆。

2、检测操作

访问http://ip:8080/manager/html管理页面,使用删除帐号进行登陆尝试。

备注

系统无此账号

 

1.2 口令

1.2.1 密码复杂度

安全基线项目名称

Tomcat密码复杂度安全基线要求项

安全基线编号

SBL-Tomcat-01-02-01

安全基线项说明  

对于采用静态口令认证技术的设备,口令长度至少8位,并包括数字、小写字母、大写字母和特殊符号4类中至少2类。

检测操作步骤

1、参考配置操作

在tomcat/conf/tomcat-user.xml配置文件中设置密码

<user username=”tomcat” password=”sinoTn@1234” roles=”admin”>

2、补充操作说明

口令要求:长度至少8位,并包括数字、小写字母、大写字母和特殊符号4类中至少2类。

基线符合性判定依据

1、判定条件

检查tomcat/conf/tomcat-user.xml配置文件中的帐号口令是否符合口令复杂度要求。

2、检测操作

(1)人工检查配置文件中帐号口令是否符合;

(2)使用tomcat弱口令扫描工具定期对Tomcat Web服务器进行远程扫描,检查是否存在弱口令帐号。

3、补充说明

对于使用弱口令扫描工具进行检查时应注意扫描的线程数等方面,避免对服务器造成不必要的资源消耗;选择在服务器负荷较低的时间段进行扫描检查。

备注

 

1.2.2 密码历史

安全基线项目名称

Tomcat密码历史安全基线要求项

安全基线编号

SBL-Tomcat-01-02-02

安全基线项说明  

对于采用静态口令认证技术的设备,应支持按天配置口令生存期功能,帐号口令的生存期不长于90天。

检测操作步骤

1、参考配置操作

定期对管理Tomcat Web服务器的帐号口令进行修改,间隔不长于90天。

基线符合性判定依据

1、判定条件

90天后使用原帐号口令进行登陆尝试,登录不成功;

2、检测操作

使用超过90天的帐号口令进行登录尝试;

备注

 

1.3 授权

1.3.1 用户权利指派

安全基线项目名称

Tomcat用户权利指派安全基线要求项

安全基线编号

SBL-Tomcat-01-03-01

安全基线项说明  

在设备权限配置能力内,根据用户的业务需要,配置其所需的最小权限。

检测操作步骤

1、参考配置操作

编辑tomcat/conf/tomcat-user.xml配置文件,修改用户角色权限

授权tomcat具有远程管理权限:

<user username=”tomcat” password=”sinoTn@1234”

roles=”manager-gui”>

2、补充操作说明

1、Tomcat 4.x和5.x版本用户角色分为:role1,tomcat,admin,manager四种。

role1:具有读权限;

tomcat:具有读和运行权限;

admin:具有读、运行和写权限;

manager:具有远程管理权限。

Tomcat 6.0.18版本只有admin和manager两种用户角色,且admin用户具有manager管理权限。

2、Tomcat 4.1.37和5.5.27版本及以后发行的版本默认除admin用户外其他用户都不具有manager管理权限。

基线符合性判定依据

1、判定条件

登陆远程管理页面,使用tomcat账号进行登陆,登陆成功。

2、检测操作

登陆http://ip:8080/manager/html页面,使用tomcat账号登陆,进行远程管理。

备注

admin权限

 

第2章 日志配置操作

2.1 日志配置

2.1.1 审核登录

安全基线项目名称

Tomcat审核登录安全基线要求项

安全基线编号

SBL-Tomcat-02-01-01

安全基线项说明  

设备应配置日志功能,对用户登录进行记录,记录内容包括用户登录使用的账号,登录是否成功,登录时间,以及远程登录时,用户使用的IP地址。

检测操作步骤

1、参考配置操作

编辑server.xml配置文件,在<HOST>标签中增加记录日志功能

将以下内容的注释标记< ! --    -- >取消

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

Directory=”logs” Prefix=”localhost_access_log.” Suffix=”.txt”

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协议

3.1.1 支持加密协议

安全基线项目名称

Tomcat支持加密协议安全基线要求项

安全基线编号

SBL-Tomcat-03-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服务器管理页面

备注

使用http协议,无加密

 

第4章 设备其他配置操作

4.1 安全管理

4.1.1 定时登出

安全基线项目名称

Tomcat定时登出安全基线要求项

安全基线编号

SBL-Tomcat-04-01-01

安全基线项说明  

对于具备字符交互界面的设备,应支持定时账户自动登出。登出后用户需再次登录才能进入系统。

检测操作步骤

1、参考配置操作

编辑tomcat/conf/server.xml配置文件,修改为30秒

<Connector

port="8088"  ="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、补充说明

备注

 

4.1.2 更改默认端口

安全基线项目名称

Tomcat运行端口安全基线要求项

安全基线编号

SBL-Tomcat-04-01-02

安全基线项说明  

更改tomcat服务器默认端口

检测操作步骤

1、参考配置操作

(1)修改tomcat/conf/server.xml配置文件,更改默认管理端口到8080

<Connector

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

minSpareThreads="25" maxSpareThreads="75"、

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

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

(2)重启tomcat服务

 2、补充操作说明

 

基线符合性判定依据

1、判定条件

使用8088端口登陆页面成功

2、检测操作

登陆http://ip:8080

3、补充说明

备注

 

4.1.3 错误页面处理

安全基线项目名称

Tomcat错误页面安全基线要求项

安全基线编号

SBL-Tomcat-04-01-03

安全基线项说明  

Tomcat错误页面重定向

检测操作步骤

1、参考配置操作(1)查看tomcat/conf/web.xml文件:
<error-page>
<error-code>404</error-code>
<location>/404.html</location>
</error-page>
……………
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/ error.html</location>
</error-page>

基线符合性判定依据

1、 判定条件

要求包含如下片段:

备注

 

4.1.4 目录列表访问限制

安全基线项目名称

Tomcat目录列表安全基线要求项

安全基线编号

SBL-Tomcat-04-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:8080/webadd

备注

 

Tomcat安全配置规范的更多相关文章

  1. tomcat安装配置规范

    tomcat用户设置 1 2 [root@host-1 ~]# useradd -u 501 tomcat [root@host-1 ~]# passwd tomcat   安装JDK 1 2 3 4 ...

  2. tomcat 的安全规范

    下面来说一下,日常工作当中我们需要注意的一些tomcat的安全规范: 一:telnet管理端口的保护 类别 配置内容及其说明 标准配置 备注 Telnet 管理端口的保护 (强制) (1)配置文件中的 ...

  3. SSL 通信原理及Tomcat SSL 配置

    SSL 通信原理及Tomcat SSL 双向配置 目录1 参考资料 .................................................................. ...

  4. Tomcat记录-tomcat常用配置详解和优化方法(转载)

    常用配置详解 1 目录结构 /bin:脚本文件目录. /common/lib:存放所有web项目都可以访问的公共jar包(使用Common类加载器加载). /conf:存放配置文件,最重要的是serv ...

  5. 生产环境中tomcat的配置

    生产环境中要以daemon方式运行tomcat 通常在开发环境中,我们使用$CATALINA_HOME/bin/startup.sh来启动tomcat, 使用$CATALINA_HOME/bin/sh ...

  6. tomcat ssi配置及升级导致ssi include错误问题解决

    最近tomcat升级版本时,遇到了ssi解析的问题,记录下解决的过程,还有tomcat ssi配置的要点. tomcat 配置SSI的两种方式 Tomcat有两种方式支持SSI:Servlet和Fil ...

  7. tomcat常用配置详解和优化方法

    tomcat常用配置详解和优化方法 参考: http://blog.csdn.net/zj52hm/article/details/51980194 http://blog.csdn.net/wuli ...

  8. tomcat 安全配置文档

    1.配置文档中使用$CATALINA_HOME变量声明为tomcat的安装目录并明确写出了tomcat的配置文件路径,此路径为测试环境的路径,线上系统对应配置文件的路径可能不一样,在进行相关配置时,应 ...

  9. (转)tomcat 安全配置文档

    原文:https://www.cnblogs.com/heaven-xi/p/9961354.html 1.配置文档中使用$CATALINA_HOME变量声明为tomcat的安装目录并明确写出了tom ...

随机推荐

  1. NOIP一系列模拟赛小结

    NOIP越发接近了,于是自己也跟着机房的几位师兄一起做了几次NOIP模拟赛,收获颇多. #1-T1:求点集中的点能否只用三条与坐标轴平行的直线就能全部被经过,其实只要将横纵坐标排序后逐个点检查下就行. ...

  2. BZOJ 4037 [HAOI2015]数字串拆分 ——动态规划

    拆分的情况下,发现f数组本身并不是很好递推. 因为f(123)=f(123)/f(12+3)/f(1+2+3). 然后考虑f可以怎么表示f(n)=a0*M^n M为转移矩阵. 然后发现 f(x+y)= ...

  3. Codeforces 894.A QAQ

    A. QAQ time limit per test 1 second memory limit per test 256 megabytes input standard input output ...

  4. 转载:CMarkUp使用简介

    转载地址:http://blog.csdn.net/jonathandj/article/details/4320725 最近正在研究C++下的XML分析工具CMarkup.初次和XML相遇是基于C# ...

  5. 点击不同按钮,加载不同的页面(不使用iframe的情况下)

    <button id="button1">Load Html1</button> <button id="button2"> ...

  6. 51nod1053 最大M子段和 V2

    $n \leq 50000$的序列,问选不超过$m \leq 50000$个区间使得和最大. 如果正数区间总数比$m$小那肯定全选.否则有两种方式减少区间数量:丢掉一个正区间:补一个负区间连接两个正区 ...

  7. 金鹰dreamweaver视频教程下载地址

    原文发布时间为:2008-07-30 -- 来源于本人的百度文章 [由搬家工具导入] http://download2.gbaopan.com/c188aecb5e524ab2b2a484c061e0 ...

  8. 集合-Vector

    Vector中的操作是线程安全的. public Vector(int initialCapacity, int capacityIncrement) { super(); if (initialCa ...

  9. Redis集群模式配置

    redis集群部署安装: https://blog.csdn.net/huwh_/article/details/79242625 https://www.cnblogs.com/mafly/p/re ...

  10. android的对话框

    android中的对话框形式有四种,分别是一般对话框形式,列表对话框形式,单选按钮对话框,多选按钮对话框,下面我一一对他们进行详解. <一>一般对话框 一般对话框形式如下图: 具体实现代码 ...