一、访问控制

首先这里的访问控制要求,就是针对tomcat管理控制台中的用户权限,即Tomcat Manager,它是Tomcat自带的,用于对Tomcat自身以及部署在Tomcat上的应用进行管理的web应用。

Tomcat Manager以授予用户相应角色的方式,进行访问控制,授权其使用相应的功能。

查看的文件为tomcat目录下/conf/tomcat-user.xml

如上图,roles字段就是配置角色的地方,一个用户可以具备多种权限,多个rolename之间可以用英文逗号隔开。

查阅一些网上资料,大致权限如下:

  • role1:具有读权限;
  • tomcat:具有读和运行权限;
  • admin:具有读、运行和写权限;
  • manager:具有远程管理权限。

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

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

然后针对于manager又有细分的四种rolename:

  • manager-gui:允许访问html接口(即URL路径为/manager/html/*)
  • manager-script:允许访问纯文本接口(即URL路径为/manager/text/*)
  • manager-jmx:允许访问JMX代理接口(即URL路径为/manager/jmxproxy/*)
  • manager-status:允许访问Tomcat只读状态页面(即URL路径为/manager/status/*)

a)应对登录的用户分配账户和权限

查看有哪些用户,分别为什么角色

在tomcat目录下/conf/tomcat-user.xml

b)应重命名或删除默认账户,修改默认账户的默认口令

查看tomcat目录下/conf/tomcat-user.xml

是否存在 admin、manager、tomcat、role1、both等默认账户,口令是否为默认口令等

c)应及时删除或停用多余的、过期的账户,避免共享账户的存在

查看tomcat目录下/conf/tomcat-user.xml文件,确认现有账户有哪些,并询问管理人员每个账户的用途事什么,确认是否存在多余账户

d)应授予管理用户所需的最小权限,实现管理用户的权限分离

三权分立原则

按最小授权原则分配,管理用户的权限分离,对于中间件来说应该实现不了

e)应由授权主体配置访问控制策略,访问控制策略规定主体对客体的访问规则

查看tomcat目录下/conf/tomcat-user.xml,确认管理员对各用户的访问控制规则,即设置的对应角色

各用户的角色权限:

1) tomcat角色

role1:具有读权限;

tomcat:具有读和运行权限;

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

manager:具有远程管理权限。

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

2)另外版本

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

补充:

Manager目录为缺省管理目录,若系统上线后不需要通过web页面管理,可删除(移除)此目录,这样相对更为安全。

f)访问控制的粒度应达到主体为用户级或进程级,客体为文件、数据库表级

这个条款对于服务器、数据库之类的测评对象比较好理解,对于中间件个人是不太理解的,

难道是主体为用户级,客体为web控制台对应功能模块??

因为网络安全等级保护要求中测评对象有包括,也有是判不适用的,因人而异吧。

g)应对重要主体和客体设置安全标记,并控制主体对有安全标记信息资源的访问

同理这条国标中测评对象也涉及了中间件,也有判不适用的。

不知道怎么实现,默认是给不符合的。

二、安全审计

这里首先是要了解tomcat的日志

首先看一下tomcat的位置,它的日志并不在/var/log目录下,一般在tomcat安装路径下的logs文件夹

以下为参考内容,原文链接

日志种类说明

名称 说明

1. catalina.date.log Catalina引擎的日志文件
2. catalina.out Catalina控制台输出,包括标准输出和错误输出
3. host-manager.date.log 主机管理日志
4. localhost.date.log Tomcat下内部代码丢出日志
5. locahost_access_log.date.txt 网页访问日志
6. manager.date.log 应用管理日志

首先关于以上日志的配置文件

1.2.3.4.6 均在tomcat根目录/conf/logging.properties下

5在tomcat根目录/conf/server.xml下

1. logging.properties

一般日志文件定义是3行

1)首行决定什么级别以上的信息输出

每类日志的级别分为如下7种:

SEVERE(highest value)> WARNING > INFO > CONFIG > FINE >FINER >FINEST(lowest value)

OFF为禁用输出;ALL为全部输出

2)第二行决定输出日志文件的路径

3)第三行决定日志文件的前缀

catalina.out 由于是输出控制台(console)信息,该信息源于Linux输出的重定向,因此与其它日志不同。

ps:manager和host-manager分别对应tomcat后台页面的Manager App和Host Manager,想要生成这两类日志,需要在tomcat-users.xml里分别配置manager-gui和admin-gui角色的帐号密码,并访问相应页面,否则这两个日志都会是空的。

1-5 类的日志可归纳为运行日志,一般用于排查服务端console、catalina、tomcat、web应用管理遇到的错误。

2. server.xml

访问日志,即访问网页的记录。

规则:

className 开启访问日志必用类

  1. directory 日志存放目录
  2. prefix 日志名前缀
  3. suffix 日志文件后缀
  4. pattern 日志记录的格式

除了第一个className不允许修改外,其他字段值可以根据实际需要修改,最重要的就是pattern,我们结合实际日志进行对比:

与之前的pattern进行比对, pattern="%h %l %u %t "%r"%s %b"

%h 为远程主机名 对应 192.168.21.237

%l 为远程登录名,除非IdentityCheck设为‘On’,否则将得到一个“-”

%u 为远程用户名(根据验证信息而来),若不存在得到一个“-”

%t 为时间,用普通日志格式(标准英语格式),对应[29/Jun/2020:17:04:30 +0800]

" 为双引号"的实体编码

%r 为请求头第一行(包括HTTP方法和请求的RUI),对应GET /test/ HTTP/1.1

%s 为HTTP响应状态码,对应200

%b 为发送信息的字节数,不包括HTTP头,如果字节数为0的话,显示为-,对应88

关于这个的字段的详细配置说明,查阅官方英文文档最为准确:

http://tomcat.apache.org/tomcat-8.0-doc/config/valve.html#Access_Log_Valve

a)应启用安全审计功能,审计覆盖到每个用户,对重要的用户行为和重要安全事件进行审计

对于等保来说,我们要确认tomcat是否开启了相应的日志,及相应的日志记录级别

① 查看tomcat目录/conf/logging.properties

catalina——Catalina引擎的日志文件

localhost——Tomcat下内部代码丢出日志

manager——应用管理日志

host-manager——主机管理日志

java——Catalina控制台输出,包括标准出书和错误输出

确认图中框起字段不为OFF为开启审计

且审计级别不低于"FINE"

② 查看tomcat目录/conf/server.xml,Access网页访问日志

有如下字段,取消注释

确认pattern参数信息,记录了哪些值

b)审计记录应包括事件的日期和时间、用户、事件类型、事件是否成功及其他与审计相关的信息

1. 确认系统当前时间

这个的时间是和服务器系统时间相同,我们只需要查看服务器时间是否为北京时间即可(或与NTP时间服务器同步)

2. 查看日志

在tomcat路径下的logs目录下

查看一条日志信息,观察是否满足等保要求

c)应对审计记录进行保护,定期备份,避免受到未预期的删除、修改或覆盖等

1. 查看日志文件权限

查看本地日志文件权限,应不高于640,并且观察所属用户、用户组是否合理

2. 询问管理人员是否定期备份该中间件的日志信息

若是实时传输的,个人认为对记录的保护可以直接观察到传输设备上的相关权限,比如传输到日志服务器,仅审计管理员具有记录查看权限等。

总之,这个得询问管理人员如何做的,是否做了定期备份。

3. 查看日志文件的保存周期

根据网络安全法的要求,重要设备的日志留存时间要达到6个月以上

个人认为,这条针对中间件来说最重要的还是网页访问日志,当然最主要的目的还是溯源,万一真的发生安全事件了,要能提供相应的记录性证据,所以对日志留存的时间有了一个要求。

d)应对审计进程进行保护,防止未经授权的中断

审计进程与中间件主进程关联,无法单独中断审计进程,只要配置文件中开启了相应日志即可。

要这么说的话,应该就是查看配置文件的管理权限和服务进程的关闭权限了。

tomcat中间件的默认端口号_等保2.0涉及的Apache Tomcat中间件(下)相关推荐

  1. tomcat中间件的默认端口号_死磕Tomcat系列(1)——整体架构

    点击上方"Java技术前线",选择"置顶或者星标" 与你一起成长 在许多的高端开发的岗位中都会或多或少有要求面试人员要研究过一些常用中间件源码.这是因为一切的秘 ...

  2. mongodb 默认端口号_快2020年了,该如何面对BATJM对MongoDB灵魂式的拷问呢?

    关注我,可以获取最新知识.经典面试题以及微服务技术分享 MongoDB是基于分布式文件存储的数据库,由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案,且MongodDB是一个介于关 ...

  3. mongodb 默认端口号_你的爬虫数据储存在哪?MongoDB入门篇

    我们之前做的项目都是以文本或者 csv 文件保存在本地,如果保存的数据量比较大的话,保存在本地就不够灵活了.这边文章带大家入门怎么用 MongoDB 来储存爬虫的数据. MongoDB 是一个基于分布 ...

  4. mysql数据库怎么查看端口号_怎么查看数据库端口号(mysql怎么查看端口号)

    怎么查看数据库端口号(mysql怎么查看端口号) 2020-05-08 11:20:02 共9个回答 如何查看自己数据库的端口号 navicat,找到服务器,右键->连接属性,就找到端口号了 如 ...

  5. tomcat中间件的默认端口号_tomcat端口号修改(tomcat默认端口号是多少)

    tomcat端口号修改(tomcat默认端口号是多少) 2020-05-07 22:25:25 共10个回答 怎么改tomcat的端口号? 修改tomcat端口号的方法:修改Server.xml文件, ...

  6. tomcat默认端口号(三个tomcat端口号)

    tomcat默认端口号(三个tomcat端口号) 2020-05-08 10:43:21 共10个回答 Tomcat的默认端口号是多少 您好,提问者:Tomcat的默认端口号是:8080.weblog ...

  7. 如何修改tomcat默认端口号(详细步骤)

    tomcat默认的端口是8080(访问端口) http的默认端口是80. 如果访问的时候 输入http://www.baidu.com 相当于http://www.baidu.com:80 真正在项目 ...

  8. 修改tomcat服务器的默认端口的文件是,修改tomcat默认的端口号

    协同管理系统黙认使用Tomcat默认的端口8080,除8080端口外Tomcat还会占用8005,8009和8443端口.如果这4个端口已被占用,可以将协同管理系统修改为使用其它端口. 修改方法如下: ...

  9. b宝塔 centos端口更改_centos修改ssh默认端口号的方法示例

    linux 一:修改/etc/ssh/sshd_config配置文件(注意:这里是sshd_config,而不是ssh_config) 1:查看ssh的默认端口号 netstat -anp|grep ...

最新文章

  1. spring 使用redis集群配置
  2. oracle 导出数据 utl,【原创】利用utl_file包进行表数据导出
  3. pycharm怎么查看代码结构,看函数定义、变量定义、类定义索引、目录?(左方structure)
  4. 程序员面试100题之五:二叉树两个结点的最低共同父结点
  5. rh php70 php fpm,mac 通过brew安装php70 +php-fpm+ phalcon3.0.3
  6. iOS---UICollectlionView 的使用
  7. 正文分页(中英文截字)问题
  8. AI正在打王者荣耀排位赛,背后是腾讯100亿开放新战略
  9. java 多线程 举例,Java多线程简单举例
  10. 数据报表体系搭建流程
  11. C语言结构、联合、位操作、位域和枚举
  12. gta5结局杀老崔我哭了_GTA5:大结局最艰难的抉择!杀掉老崔还是麦克?
  13. 美容美发美甲店做活动效果提升30%的营销方案18个套路
  14. 矩阵幂之和(矩阵乘法)
  15. 论文阅读:Recurrent Neural Networks for Time Series Forecasting Current Status and Future Directions
  16. 《我是一只IT小小鸟》连载四
  17. 保姆级傻瓜式icomoon字体图标的下载与使用
  18. win10安装PL2303_Prolific_DriverInstaller_v1.5.0驱动
  19. html百度静态页面代码,静态百度页面_html/css_WEB-ITnose
  20. Cherry的【PRINCE2】入门学习笔记

热门文章

  1. 每日 30 秒 ⏱ 唯一的数据集
  2. 从babel实现es6类的继承来深入理解js的原型及继承
  3. 我很懒,什么都没留下系列 之 教你上手React服务端渲染(React SSR) HMR
  4. Update: OCS 2007 R2 (RTM) Download and Documentation
  5. jquery ajax设置头部,jQuery Ajax 设置请求头
  6. ABAP在ALV工具栏显示一个计时器
  7. 41、Power Query-Text.Combine函数进阶2
  8. ABAP入门培训8讲
  9. 没钱还装逼,买二手车的都是什么人?
  10. 强制结束后台作业(SAP SM37 SM35 SM50)