Security Monkey安装指南:构建云端安全监控系统

Security Monkey安装指南:构建云端安全监控系统

security_monkey Security Monkey monitors AWS, GCP, OpenStack, and GitHub orgs for assets and their changes over time. security_monkey 项目地址: https://gitcode.com/gh_mirrors/se/security_monkey

前言

Security Monkey是Netflix开源的云端安全监控与合规审计工具,能够持续监控AWS、GCP等云平台的配置变更,并识别潜在的安全风险。本文将详细介绍如何在Linux系统上部署Security Monkey服务。

系统准备

环境要求

在开始安装前,请确保系统满足以下条件:

  • Ubuntu/Debian系列操作系统
  • Python 3.6及以上版本
  • PostgreSQL数据库服务
  • 至少2GB可用内存

基础环境配置

首先创建必要的日志目录并设置权限:

sudo mkdir /var/log/security_monkey
sudo mkdir /var/www
sudo chown -R `whoami`:www-data /var/log/security_monkey/
sudo chown www-data /var/www

启用universe软件源并安装依赖包:

sudo add-apt-repository universe
sudo apt update
sudo apt install -y python3 python3-dev python3-venv postgresql postgresql-contrib libpq-dev nginx process-manager git libffi-dev gcc redis-server

数据库配置

PostgreSQL安装与设置

Security Monkey支持本地PostgreSQL或云数据库服务。本地安装步骤如下:

sudo apt install postgresql postgresql-contrib

配置数据库用户和schema:

CREATE DATABASE "secmonkey";
CREATE ROLE "securitymonkeyuser" LOGIN PASSWORD 'securitymonkeypassword';
CREATE SCHEMA secmonkey;
GRANT Usage, Create ON SCHEMA "secmonkey" TO "securitymonkeyuser";
set timezone TO 'GMT';
select now();

源码部署

获取代码并创建虚拟环境

建议将代码放在/usr/local/src目录下:

cd /usr/local/src
sudo git clone --depth 1 --branch develop https://github.com/Netflix/security_monkey.git
sudo chown -R `whoami`:www-data /usr/local/src/security_monkey
cd security_monkey

设置Python虚拟环境:

export LC_ALL="en_US.UTF-8"
export LC_CTYPE="en_US.UTF-8"
python3 -m venv venv
source venv/bin/activate

安装Python依赖

升级pip并安装依赖包:

pip install --upgrade setuptools pip
pip install --upgrade urllib3[secure]  # 解决安全警告
pip install -r requirements.txt

根据云平台选择安装额外依赖:

  • GCP平台需要额外安装google-compute-engine等包
  • OpenStack需要安装cloudaux[openstack]

最后安装Security Monkey本体:

pip install .

重要提示:所有后续操作都必须在虚拟环境中执行,可通过source venv/bin/activate重新激活环境。

前端构建

安装Dart SDK

Security Monkey前端使用Dart开发,需要先安装Dart SDK:

curl https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
curl --output ./dart_1.23.0-1_amd64.deb https://storage.googleapis.com/download.dartlang.org/linux/debian/pool/main/d/dart/dart_1.23.0-1_amd64.deb
sudo dpkg -i dart_1.23.0-1_amd64.deb

编译前端代码

cd /usr/local/src/security_monkey/dart
/usr/lib/dart/bin/pub get
/usr/lib/dart/bin/pub build

部署编译后的静态文件:

sudo mkdir -p /usr/local/src/security_monkey/static/
sudo /bin/cp -R /usr/local/src/security_monkey/dart/build/web/* /usr/local/src/security_monkey/static/
sudo chgrp -R www-data /usr/local/src/security_monkey

应用配置

修改配置文件

编辑env-config/config.py文件,关键配置项包括:

  • FQDN: 服务访问地址(IP或域名)
  • SQLALCHEMY_DATABASE_URI: 数据库连接字符串
  • SECRET_KEY: 随机密钥,用于加密会话
  • SECURITY_PASSWORD_SALT: 密码加密盐值

数据库连接字符串格式示例: postgresql://securitymonkeyuser:securitymonkeypassword@localhost:5432/secmonkey

初始化数据库

执行数据库迁移命令创建表结构:

export SECURITY_MONKEY_SETTINGS=/usr/local/src/security_monkey/env-config/config.py
monkey db upgrade

后续步骤

完成上述安装后,下一步需要:

  1. 配置监控的云平台账号
  2. 设置定时任务执行监控扫描
  3. 配置Nginx反向代理
  4. 设置邮件/Slack等告警通知

Security Monkey的强大之处在于其可扩展的监控架构,用户可以根据需要添加自定义的审计规则和监控项,构建符合自身业务需求的安全监控体系。

security_monkey Security Monkey monitors AWS, GCP, OpenStack, and GitHub orgs for assets and their changes over time. security_monkey 项目地址: https://gitcode.com/gh_mirrors/se/security_monkey

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

邵金庆Peaceful

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值