本文内容来自旗鱼云梯
今天客户问我能不能给他搭建个openrasp, 额(⊙o⊙) 为嘛? 我们基ModSecurity的waf防火墙还有CC防火墙.好吧 他觉得这样更安全...好吧 (⊙o⊙)
OpenRASP 是百度安全推出的一款 免费、开源 的应用运行时自我保护产品.可以在不依赖请求特征的情况下,准确的识别代码注入、反序列化等应用异常,很好的弥补了传统设备防护滞后的问题.
可以简单理解为: 入侵主动防御系统
系统和软件需求:
Centos7.6
Elasticsearch 6.8.3
Mongodb 3.6
Jdk 1.8
Php 7.2.13
1. 先下载软件到服务器上:
Elasticsearch下载地址
https://elasticsearch.thans.cn/downloads/elasticsearch/elasticsearch-6.8.3.tar.gz
百度rasp 下载地址
https://packages.baidu.com/app/openrasp/release/1.2.4/rasp-cloud.tar.gz
Mongodb 下载地址
http://downloads.mongodb.org/linux/mongodb-linux-x86_64-rhel70-v3.6-latest.tgz
Php agent 下载地址
https://packages.baidu.com/app/openrasp/release/1.3.0/rasp-php-linux.tar.bz2
(1) 下载到/home/baidu 目录中
(2) 使用旗鱼云梯的远程下载直接下载到服务器里,省的通过ftp上传了
2. 安装jdk1.8
(1) elasticsearch需要jdk才能运行
(2) 在软件中心里面安装jdk1.8
3. 新建elasticsearch用户
(1) Elasticsearch 不允许以root用户启动, 所以要创建一个elasticsearch账号
(2) 在 账号信息 里面创建elasticsearch用户
4. 安装Elasticsearch
(1) 解压下载的压缩包
(2) elasticsearch默认安装后设置的内存是1GB, 我这乞丐版1H1G的服务器顶不住那, 给它改成128M的
1 修改 jvm.optioins文件, 1g改成128m
3 改成这个样子
(3) 修改用户最大线程为4096
1 有些主机最大线程设置的为3894, 这样会导致elasticsearch启动报警告信息, elasticsearch最低要求4096
2 修改 /etc/security/limits.conf文件, 如下
3 添加到文件末尾
nproc 表示配置最大打开线程数
4 验证是否修改成功
1) 登录命令行
2) 切换到elasticsearch用户, 执行 ulimit -a
a. 查看max user processes 是否是4096
3) 修改成功, 关闭命令行
(4) 修改 最大虚拟内存区域vm.max_map_count 为262144
1 elasticsearch最低要求262144, 否则会出现警告信息
2 修改 /etc/sysctl.conf 文件:如下
3 末尾添加 vm.max_map_count = 262144 如下:
4 命令行(root用户下)执行 sysctl -p 检测是否设置成功
(5) 设置elasticsearch文件目录用户以及用户组为 elasticsearch
1 chown elasticsearch:elasticsearch -R elasticsearch-6.8.3
(6) 启动elasticsearch
1 切换到 elasticearch用户
2 执行 ./elasticsearch-6.8.3/bin/elasticsearch
启动成功
(7)切换成后台模式启动
a. ctrl+c 停止当前elasticsearch
b. 后台模式启动 执行:
./elasticsearch-6.8.3/bin/elasticsearch -d
c. Elasticsearch启动比较慢, 等30秒左右, 验证是否启动成功
a) 命令行执行: curl localhost:9200
b) 返回如下表示启动成功, elasticsearch安装成功!
5. Mongodb安装
(1) 解压下载的压缩包,并修改解压出来的目录为mongodb
(2) 创建mongodb配置文件mongodb.conf
1 在mongodb/bin 目录下面创建 mongodb.conf配置文件
(3) 创建数据存放目录和日志存放目录
1 /home/baidu/mongodb/data/db
2 /home/baidu/mongodb/data/logs
(4) 启动mongodb
1 进入bin目录:cd /home/baidu/mongodb/bin/
2 执行: ./mongod -f mongodb.conf
(5) 验证mongodb是否成功
1 curl localhost:27017
2 mongodb安装成功
6. 安装百度openrasp管理后台
(1) 解压rasp-cloud.tar.gz,并重命名为rasp-cloud
(2) 编辑 conf/app.conf 文件,修正 ElasticSearch 和 MongoDB 两个服务器的地址。如果这两个服务器都安装在了本机,且使用默认端口,请跳过此步骤: 因为我们是安装在同台服务器上, 所以跳过此步骤
(3) 启动openrasp
1 进入 rasp-cloud目录:cd /home/baidu/rasp-cloud
2 执行启动命令 :./rasp-cloud
启动成功, 没有报错信息
3 改成后台启动模式:
1) ./rasp-cloud -d
启动成功
4 登录后台验证一下:
在浏览器里打开 http://your-ip:8086,登录管理后台。其中用户名固定为 openrasp,初始密码为 admin@123。如果不能访问,请检查防火墙设置,或者检查 logs/api/agent-cloud.log 下面的错误信息。
关闭记录日志模式, 一定要关闭,否则不会拦截攻击
7. 安装php-agent
(1) 在管理后台页面,点击添加主机
(2) Php安装包我们已经下载好了, 解压并改名为rasp-php
(3) 在软件中心安装php
(4) 命令行执行 install.php安装
1 进到rasp-php目录
2 执行百度给出的 安装install.php命令
1) php为你安装的php解释器路径,这里需要把php改成:
a. /marlinos/php/7.2.13/bin/php
2) 命令执行:
3 安装成功, 重启php
8. 安装测试用例
(1) 创建一个网站ceshi (apache太古老了,用openresty把)
(2) 下载测试网站到新创建的网站目录下面并解压
(3) 浏览器访问:
(4) 点点测试一个攻击,出现下面页面则拦截成功
个人用户或小企业用户,建站后没有运维怎么办?
旗鱼云梯, 专业的SAAS化服务器集群管理云平台, 免费的运维服务专业的技术, 您值得的拥有.