rasp java tomcat_Tomcat 服务器

本文档详细介绍了如何在Rasp系统上自动化和手动安装Java Tomcat服务器,包括添加远程管理配置,升级OpenRASP以及解决安装过程中的问题。在安装时,需要修改Tomcat的启动脚本,添加-javaagent参数,并确保rasp目录有正确权限。安装成功后,可通过日志或响应头验证OpenRASP是否正常工作。
摘要由CSDN通过智能技术生成

Tomcat 服务器安装

自动化安装

下载 rasp-java.tar.gz 或者 rasp-java.zip 并解压缩。之后进入到解压后的目录中,e.g rasp-20181221

如果你要开启远程管理,请先参考 管理后台 - 添加主机 文档,找到 app_id/app_secret/backend_url 三个关键参数,然后执行如下命令,

java -jar RaspInstall.jar -install -backendurl http://XXX -appsecret XXX -appid XXX

如果你只是运行单机版,只需要指定 -install 参数,

java -jar RaspInstall.jar -install

这里的 不是 webapps 目录,而是 tomcat 的根目录。没有错误表示安装成功,其他配置请参考 其他配置 文档。安装后,需要重启 Tomcat 服务器生效。

不重启安装(仅支持 JDK 6-8)

以上方式安装成功之后需要重启服务器,如果在服务器启动的情况下,不重启安装 OpenRASP,需要在以上命令后面增加 -pid 参数指定运行的服务器进程ID:

# 为 tomcat 进程 id

# $JAVA_HOME 为 jdk 根目录环境变量,如果未指定该环境变量,替换为 jdk 的完整根目录

java -Xbootclasspath/a:$JAVA_HOME/lib/tools.jar -jar RaspInstall.jar -install -pid

在 Windows 下面请替换 $JAVA_HOME 为 %JAVA_HOME%

RASP 升级方法

在 Linux 下面,可以使用 bin/catalina.sh stop 来执行 graceful stop

你会在日志里看到类似下面的输出,这表明 Tomcat 将在处理完当前的HTTP后退出

Jan 12, 2018 6:11:55 PM org.apache.catalina.core.StandardWrapper unload

INFO: Waiting for 1 instance(s) to be deallocated for Servlet [jsp]

Jan 12, 2018 6:11:56 PM org.apache.catalina.core.StandardWrapper unload

INFO: Waiting for 1 instance(s) to be deallocated for Servlet [jsp]

Jan 12, 2018 6:11:57 PM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads

之后参考我们的自动或者手动安装文档,重新安装即可

手动安装 - Linux

1. 安装软件

进入到 tomcat 安装目录(绝对路径包含空格将导致启动失败),e.g /opt/apache-tomcat-8.5.6,将 rasp 目录复制过来

cp -R ~/Downloads/rasp-20170721/rasp .

OpenRASP 需要在 rasp 目录下释放一些动态链接库,所以还需要修改 rasp 目录的权限,e.g

chmod 777 -R rasp

否则你可能在 catalina.out 里看到类似这样的错误,

com.baidu.openrasp.exception.ConfigLoadException: Fail to extract rasp-log4j.xml, because of: /usr/share/tomcat8/rasp/conf/rasp-log4j.xml (Permission denied)

at com.baidu.openrasp.messaging.LogConfig.extractLogConfigFile(LogConfig.java:153)

at com.baidu.openrasp.messaging.LogConfig.completeLogConfig(LogConfig.java:72)

at com.baidu.openrasp.Agent.loadConfig(Agent.java:91)

at com.baidu.openrasp.Agent.premain(Agent.java:66)

2. 修改 Tomcat 启动脚本

打开 bin/catalina.sh, 找到如下内容:

elif [ "$1" = "start" ] ; then

if [ ! -z "$CATALINA_PID" ]; then

修改为如下(增加 -javaagent 项)

elif [ "$1" = "start" ]; then

JAVA_OPTS="-javaagent:${CATALINA_HOME}/rasp/rasp.jar ${JAVA_OPTS}"

if [ ! -z "$CATALINA_PID" ]; then

对于使用 yum 安装的 tomcat,你需要创建 /etc/tomcat/conf.d/rasp.conf,并写入以下内容

JAVA_OPTS="-javaagent:${CATALINA_HOME}/rasp/rasp.jar ${JAVA_OPTS}"

3. 开启远程管理

如果你不需要远程管理功能,请跳过这个步骤。

首先,请先参考 管理后台 - 添加主机 文档,找到 openrasp.yml 配置文件内容。然后打开 /rasp/conf/openrasp.yml,添加或者修改如下内容:

# 云控配置

cloud.enable: true

cloud.backend_url: xxx

cloud.app_id: xxx

cloud.app_secret: xxx

cloud.heartbeat_interval: 180

4. 验证安装是否成功

重启 tomcat 服务器,然后检查 rasp/logs/rasp/rasp.log 中是否出现 OpenRASP Engine Initialized 字样,e.g

%> grep OpenRASP -ir rasp/logs/

rasp/logs/rasp/rasp.log:2018-05-22 16:13:25,842 INFO [main][com.baidu.openrasp.Agent] OpenRASP Engine Initialized [1.0-SNAPSHOT (build: GitCommit=3da661734e3ad7641cd98e83f32950deaefcacac date=2017-08-14T03:34:41Z)]

或者检查响应的 Header 是否包含 X-Protected-By 字样,e.g

%> curl -v 127.0.0.1:8080

...

X-Protected-By: OpenRASP

X-Request-ID: eb3b8e287de8406bb4bdb9d86bd31f99

...

出现则表示安装成功。

如果服务器无法启动,请检查 tomcat 启动日志,看Java是否抛出异常,e.g catalina.out。如果你无法解决问题,请请联系我们。

手动安装 - Windows

1. 安装软件

进入到 tomcat 安装目录,e.g D:\apache-tomcat-8.5.6,将 rasp 目录复制过来

2. 修改 tomcat 配置

2.1 如果是下载的 "32-bit/64-bit Windows Service Installer" 安装包,

请参考这篇文章,打开 bin/tomcatXw.exe

切换到 Java 标签页,

9df26b4755bdb8d6853b13b126f3e757.png

在 Java Options 下面增加启动参数,注意替换下绝对路径,e.g

-javaagent:C:\Program Files\Apache Software Foundation\Tomcat 7.0\rasp\rasp.jar

2.2 如果是下载的 "Windows zip" 安装包

打开 bin\catalina.bat, 找到 :setArgs 处:

:setArgs

if ""%1""=="""" goto doneSetArgs

set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1

在 :setArgs 下增加if "%ACTION%" == "start" set JAVA_OPTS=-javaagent:%CATALINA_HOME%\rasp\rasp.jar %JAVA_OPTS%

:setArgs

if "%ACTION%" == "start" set JAVA_OPTS=-javaagent:%CATALINA_HOME%\rasp\rasp.jar %JAVA_OPTS%

if ""%1""=="""" goto doneSetArgs

set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1

3. 开启远程管理

方法同 Linux 版本,在 openrasp.yml 里增加相关配置即可。

4. 验证安装是否成功

重启 tomcat 服务器,然后检查日志文件,一般是 rasp/logs/rasp/rasp.log,如果出现 OpenRASP Engine Initialized 字样,出现则说明安装成功;或者访问一下服务器,检查是否存在 X-Protected-By: OpenRASP 响应头,存在即表示安装成功。

常见问题

1. Tomcat Windows Service Installer 版本,无法自动安装

服务版本的安装包,没有提供 catalina.sh,只提供了 tomcatX.exe 作为启动工具

请参考Windows 手动安装文档,打开 bin/tomcatXw.exe 进行配置

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值