1.1. 实施方案
1、实施策略:建议落实最小权限授予原则,采用仅满足启动服务器权限的账号启动tomcat应用服务,降低本地系统账号权限被非法者获取的风险。
2、操作指令
(1)新增满足服务启动权限要求的账号,并配置符合安全策略要求的密码(口令要求:长度至少8位,并包括数字、小写字母、大写字母和特殊符号4类中至少2类,防止被暴力破解)
groupadd tomcat
useradd -g tomcat tomcat
passwd tomcat
#操作提示如下,两次密码保持一致
Changing password for user admin.
New password: 第一次密码
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 第二次密码
passwd: all authentication tokens updated successfully.
id tomcat
#输出提示如下信息,表示添加成功(uid/gid/groups值不一定为1000,以下内容仅做参考)
uid=1000(tomcat) gid=1000(tomcat) groups=1000(tomcat)
(2)修改应用属主属组(注意核实路径)
chown -R tomcat:tomcat /PATH/tomcat
1.2. 回滚方案
使用管理员用户启动中间件:
(1)修改应用属主属组(注意核实路径)
chown -R root:root /PATH/tomcat
userdel -r tomcat
id tomcat
#输出如下信息,表示删除成功
id: tomcat: no such user
网络连接超时
2.1. 实施方案
1、实施策略:在server.xml配置文件里设置connectionTimeout参数,建议设置为30000,即为30秒
2、操作指令
—备份配置文件(加固前创建备份目录,按照日期命名,无需重复创建,拷贝配置文件时注意核实路径)
mkdir /root/backup20200618
cp -a /PATH/tomcat/conf/server.xml /root/backup20200618
---修改策略(注意核实路径)
cd /PATH/tomcat/conf/
sed -i 's/connectionTimeout="300"/connectionTimeout="30000"/g' server.xml
grep connectionTimeout= server.xml
#输出如下内容,表示添加成功
connectionTimeout="30000"
2.2. 回滚方案
需要回退的时候将修改前的备份文件覆盖回配置文件即可(注意核实路径):
\cp -a /root/backup20200618/server.xml /PATH/tomcat/conf/server.xml
grep connectionTimeout= /PATH/tomcat/conf/server.xml
#输出如下内容,表示回滚成功
connectionTimeout="300"
3. 使用了默认端口(如8080)
3.1. 实施方案
1、实施策略:建议自定义端口,如8089,在server.xml里进行修改
2、操作指令
—备份配置文件(加固前创建备份目录,按照日期命名,无需重复创建,以下操作请注意核实路径及端口号)
mkdir /root/backup20200618
cp -a /PATH/tomcat/conf/server.xml /root/backup20200618/server_port.xml
---修改策略
sed -i 's/port="8080"/port="8089"/g' /PATH/tomcat/conf/server.xml
grep 'port="8089"' /PATH/tomcat/conf/server.xml
#输出如下内容,表示修改成功
port="8089"
3.2. 回滚方案
需要回退的时候将修改前的备份文件覆盖回配置文件即可(注意核实路径):
\cp -a /root/backup20200618/server_port.xml /PATH/tomcat/conf/server.xml
grep 'port="8080"' /PATH/tomcat/conf/server.xml
#输出如下内容,表示回滚成功
port="8080"
4.1. 实施方案
1、实施策略:在web.xml里配置
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value> //将true改为false
</init-param>
2、操作指令
—备份配置文件(加固前创建备份目录,按照日期命名,无需重复创建,以下操作请注意核实路径)
mkdir /root/backup20200618
cp -a /PATH/tomcat/conf/web.xml /root/backup20200618/web.xml
—修改策略
(1)核实待修改内容在web.xml中的位置是否位于第110到113行,如果标记的待修改位置值已经为false,则无需进行修改操作
sed -n -e "110,113p" /PATH/tomcat/conf/web.xml
#输出如下内容,表示待修改的位置正确,否则需要调整指令
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
(2)修改web.xml文件第112行,将true更改为false
cd /PATH/tomcat/conf/
sed -ie '112s#true#false#g' web.xml
(3)核实待修改的位置内容是否已经由值true变为false
sed -n -e "110,113p" /PATH/tomcat/conf/web.xml
#输出如下内容,表示修改成功
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
4.2. 回滚方案
需要回退的时候将修改前的备份文件覆盖回配置文件即可(注意核实路径):
\cp -a /root/backup20200618/web.xml /PATH/tomcat/conf/web.xml
sed -n -e "110,113p" /PATH/tomcat/conf/web.xml
#输出如下内容,表示回滚成功
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
1、在进行策略回滚操作时 \cp 中前面的 \ 符号不是多余的,请注意操作时指令的完整性;
2、部分章节操作要以实际环境为准(如第1章节的自定义启用用户、第3章节的自定义端口号、第4章节待修改的位置),不可盲目复制指令随意操作;
如果有不当之处,还请多多评论指正,谢谢!