第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. POJ 2106-Boolean Expressions,双栈运用类似表达式求值!

    Boolean Expressions 首先声明此题后台可能极水(毕竟这种数据不好造!).昨天写了一天却总是找不到bug,讨论区各种数据都过了,甚至怀疑输入有问题,但看到gets也可以过,难道是思路错 ...

  2. post 发送ajax请求

    1.ajax五步曲 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  3. iOS视频录制,裁剪(输出指定大小)

    弄了几天,终于搞懂一点了,博客后面再写,先附上demo,等研究清楚再写 demo地址:http://pan.baidu.com/s/1o6w2CMu

  4. Spark与Pandas中DataFrame对比(详细)

      Pandas Spark 工作方式 单机single machine tool,没有并行机制parallelism不支持Hadoop,处理大量数据有瓶颈 分布式并行计算框架,内建并行机制paral ...

  5. BZOJ 3529 [Sdoi2014]数表 ——莫比乌斯反演 树状数组

    $ans=\sum_{i=1}^n\sum_{j=1}^n\sigma(gcd(i,j))$ 枚举gcd为d的所有数得到 $ans=\sum_{d<=n}\sigma(d)*g(d)$ $g(d ...

  6. LA 并查集路径压缩

    题目大意:有n个节点,初始时每个节点的父亲节点都不存在.有两种操作 I u v:把点节点u的父亲节点设为v,距离为|u-v|除以1000的余数.输入保证执行指令前u没有父亲节点. E u:询问u到根节 ...

  7. 【Vijos1412】多人背包(背包DP)

    题意:求0/1背包的前K优解总和 k<=50 v<=5000 n<=200 思路:日常刷水 归并即可,不用排序 ; ..,..,..]of longint; w,c,a,b:..]o ...

  8. Java Interface 是常量存放的最佳地点吗?(转帖学习,非原创)

    Java Interface 是常量存放的最佳地点吗?(转帖学习,非原创) 由于java interface中声明的字段在编译时会自动加上static final的修饰符,即声明为常量.因而inter ...

  9. 你需要的130个vim命令

    参考文章:http://www.oschina.net/news/43167/130-essential-vim-commands,其中有些我以为需要补充的及时补充或修改 从 1970 年开始,vi ...

  10. iOS 设置RGB色的宏

    转自:http://lizhuang.iteye.com/blog/1931768 
//RGB Color macro #define UIColorFromRGB(rgbValue) [UICol ...