暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

宝兰德BES中间件单机版安全加固相关操作

IT那活儿 2022-03-17
3014

点击上方“IT那活儿”,关注后了解更多内容,不管IT什么活儿,干就完了!!!

因某公司对安全的要求,需要对bes中间件进行安全加固,安全加固的内容主要包括对控制台默认地址修改,实例默认端口修改,控制台默认密码修改,密码加密,加密后的实例启停方式等。
首先说一下今天安全加固操作的前提,需要已经分离式部署安装成功bes单机版中间件,创建实例没有要求,一个或多个实例都可以,今天我用创建了一个实例的bes中间件做演示。
一、新增一个实例,和另外一个实例进行对比
1) 在应用账号下临时声明JAVA_HOME环境变量。
export JAVA_HOME=/bes/jdk1.8.0_131
2) 在应用账号下执行如下命令,新建instance02实例。
sh /bes/BES952/bin/besservers -c=/bes/BES952/conf/server.config -p=/app/besinstances/instance02 -s=create

  • -c:指定BES中间件配置文件;

  • -p:指定BES应用系统运行目录,包含应用系统运行所需的相关文件;

  • -s:指定当前操作类型,create创建实例,stop停止运行实例。

二、控制台账号密码修改

2.1 在应用账号bin目录下启动需要修改的实例。
2.2 使用应用账号bin目录下的iastool工具,进行修改控制台账号密码。
./iastool --passport B#2008_2108#es --user=admin --password=B#2008_2108#es --port 1900  update --file-user --realmname admin-realm --userpassword 'Hello!123' --confirmpassword 'Hello!123' admin

使用此工具修改控制台账号密码需要给几个参数,分别为passport密码,用户密码,以及该实例目前的控制台端口,后面几个参数为修改后的密码。

[app@localhost bin]$ ./iastool --passport B#2008_2108#es --user=admin --password=B#2008_2108#es --port 1900 update --file-user --realmname admin-realm --userpassword 'Hello!123' --confirmpassword 'Hello!123' adminLogin information is not saved for host name [localhost] and port [1900]Login information is not saved for host name [localhost] and port [1900]Command update --file-user executed successfully.

这里为修改控制台密码的返回显示结果

三、生成密码加密文件

在应用账号的bin目录下利用iastool工具:

./iastool create  --passport B#2008_2108#es --password-file --adminpassword 'Hello!123' --iastoolpassport B#2008_2108#es ./adminpasswordfile

此处加密密码应和上面修改后的密码一致

[app@localhost bin]$ ./iastool create  --passport B#2008_2108#es --password-file --adminpassword 'Hello!123' --iastoolpassport B#2008_2108#es ./adminpasswordfileCommand create --password-file executed successfully.

这里为生成加密文件的返回显示结果。

四、实例默认端口修改

4.1 首先查看一下默认端口的值,进入/app/besinstances/instance02/conf下查看:
可以清晰的在此看见控制台默认端口,http1端口,jmx端口等。
4.2 进入实例bin目录下执行如下命令:
./iastool --user admin --passwordfile adminpasswordfile --port 1900 set server.web-container.http-listener.http-listener-1.port=11001
于在上个步骤已经生产加密文件,所以在此处可以直接使用加密文件,不用输入明文密码。此处的port给的依旧是实例当前的控制台端口。
4.3 实例的jmx端口默认是开启的,在这里顺便说一下jmx端口怎么关闭。
./iastool --user admin --passwordfile adminpasswordfile --port 1900 set server.jmx-connector.enabled=false
4.4 控制台默认端口修改,依旧在实例的bin目录下,用iastool工具:
./iastool --passwordfile adminpasswordfile --user admin --port 1900 set server.web-container.http-listener.admin-listener.port=9999
4.5 至此实例的默认端口已经全部修改,可以再次查看server.config文件,验证是否修改完成:
可以在图中红框看出,默认端口已全部修改为想要的端口,jmx端口也已经关闭。

五、控制台默认地址修改

默认的控制台地址都为127.0.0.1:port/console,不修改默认地址很容易让人猜到控制台的地址,所以修改控制台默认地址很重要。
5.1 使用产品账号,修改/bes/BES952/lib/system/apps/console/WEB-INF/web.xml 。
修改红框内的/console为想要的后缀即可。
<session-config><session-timeout>30</session-timeout><cookie-config><path>/besmanager</path></cookie-config></session-config>
修改图中的加深处的console,改为和上述修改一致即可。
<filter><filter-name>CsrfFilter</filter-name><filter-class>com.bes.enterprise.console.core.filters.CsrfPreventionFilter</filter-class><init-param><param-name>entryPoints</param-name><param-value>/besmanager/index.action,/besmanager//index.action,/besmanager/,/besmanager,/besmanager/login.html,/besmanager/doLogin.action,/besmanager/certCode.action</param-value></init-param><init-param><param-name>entryPrefixPoints</param-name><param-value>/besmanager/pages/error,/besmanager/favicon.ico,/besmanager/resources/image,/besmanager/resources/js,/besmanager/resources/style,/besmanager/resources/loading.gif</param-value></init-param></filter>
5.2 使用应用账号,进入需要修改的实例目录下:
/app/besinstances/instance01/conf/server.config
修改红框内的两处,将enable=”fales”改为true,另外一处所修改后的内容应该和产品账号web.xml中修改的一致。

六、修改启停脚本

6.1 由于修改后的所有内容需要重启生效,所以先停止实例。
此处因为修改了控制台的默认密码,所以启停脚本中的密码配置无效,需要手动输入用户名,修改后的密码。
6.2 修改启脚本,并且在startserver中增加JAVA_HOME环境变量,否则需要一直临时声明环境变量。
6.3 修改停脚本,并且在stopserver中增加JAVA_HOME。记得将控制台端口改为修改之后的。
6.4 验证启停脚本,控制台地址。
可以不用输入账号密码启动实例,启停脚本即为验证成功,并且在启停脚本中使用密码加密文件,不能出现明文密码。
输入修改后的控制台后缀和端口,和修改后的控制台密码可以进入控制台,即为修改安全加固完成。
友情提醒:第一次修改控制台默认地址,需要进入一遍http://127.0.0.1:port/console之后,才能进入修改后缀之后的控制台地址。

本文作者:孙宇航

本文来源:IT那活儿(上海新炬王翦团队)

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论