巡风风险扫描开源系统的一些演变

同程SRC团队开源巡风资产风险控制系统也有一段时间了,我们临时用它作为一个简单的soc平台来使用,期间也做了一些定制化开发,此次分享,权当做个笔记吧。基于巡风我们主要做了一下几个方面的工作:

1、因为要开发自己的模块,为了不使巡风的代码显得过于混乱,所以采用flask的blueprint(蓝图)对巡风的视图层进行了模块拆分。 2、后端数据越来越多且重要性比较高,为了提高数据容灾且保证SLA,就做了mongodb副本集 3、时常要用到xunfeng的资产数据,为了方便做数据分析,就开发了几个简单的api(没有做认证) 4、临时用的人越来越多,为了提高并发,就采用了nginx做反向代理 5、用的人多了,就牵涉到权限的问题,就取巧性的暂时做了个权限限制

下面一一介绍吧!

一、对xunfeng使用blueprint

1、使用blueprint 主要会对views目录下的文件有比较大的影响,views目录截图如下:

原始目录结构和使用blueprint后的目录结构

2、我们随便进入views目录下的两个视图模块,文件截图如下:

3、如何对xunfeng使用blueprint呢,以views/view模块为例

3.1、修改init.py文件,截图如下:

3.2、修改view.py文件,截图如下:

3.3、为了使views/view模块生效,我们需要修改根目录下的Run.py,截图如下:

二、巡风使用mongodb副本集

1、mongodb副本集配置注意事项

1.1、参考 http://www.runoob.com/mongodb/mongodb-replication.html

1.2、mongodb配置文件,借鉴下面这个:

注意bind_ip,我当时用的0.0.0.0,没有配置成功副本集,最好指定副本集节点的IP

2、连接副本集配置

2.1、修改Config.py文件:

2.2、xunfeng连接mongodb副本集,修改Conn.py文件,参考截图:

2.3、python操作mongodb副本集,采用读写分离的方式,读mongodb采用xunfeng的配置方式就可以,写mongodb参考下面的配置,参考截图:

三、开发restful api

1、接口模块位置:

2、接口view.py文件参考截图:

四、提高xunfeng的并发处理能力

1、安装nginx,不懂的自行百度

2、pip install uwsgi

3、uwsgi的配置参考截图:

4、启动,参考截图:

五、简单的权限限制

1、大概效果截图:

2、需要做控制的视图(view.py)代码参考截图:

3、权限控制@is_admin代码参考截图:

六:总结

本人开发能力有限,希望有机会能从各位大牛身上学些东西,最后贴下巡风的开源地址:

https://github.com/ysrc/xunfeng

*本文原创作者:无花无酒锄作田,本文属FreeBuf原创奖励计划,未经许可禁止转载

原文发布于微信公众号 - FreeBuf(freebuf)

原文发表时间:2018-04-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java架构沉思录

10分钟了解ZooKeeper

ZooKeeper是一个开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。

11920
来自专栏大魏分享(微信公众号:david-share)

如何构建一个安全的Glusterfs分布式文件系统集群?

36440
来自专栏张戈的专栏

CVE-2015-0235:Linux glibc高危漏洞的检测及修复方法

这几天复习运维知识,也没怎么关注业界新闻,可等我一关注,又“捅娄子”了,Linux 继上次CVE-2014-6271漏洞爆发以来,再次爆发一个严重漏洞:CVE-...

40640
来自专栏FreeBuf

一款功能丰富的Perl后门程序分析

最近通过Cowrie蜜罐捕获一枚有趣的后门程序,此程序用perl语言编写。功能包括:DDoS(udpflood、tcpflood、httpflood、sqlfl...

409100
来自专栏轮子工厂

Windows和Ubuntu系统如何远程连接Linux服务器

因为很多实验都要在工作站上面运行,为了避免拿着装着数据的硬盘在自己电脑和工作站之间来回跑,我简单总结一下在windows和Ubuntu系统下远程访问Linux服...

49240
来自专栏Vamei实验室

Linux开机启动(bootstrap)

计算机开机是一个神秘的过程。我们只是按了开机键,就看到屏幕上的进度条或者一行行的输出,直到我们到达登录界面。然而,计算机开机又是个异常脆弱的过程,我们满心期望的...

27680
来自专栏张戈的专栏

php平滑重启nginx,彻底清除WordPress的静态缓存

每一次分享技术文章,都是基于自己的痛点,基于自己的需求。这次也一样,所以分享具体方法之前,我先说一下我这次的需求与痛点: 一、需求痛点 在博客集成了代码版缓存功...

44390
来自专栏武军超python专栏

2018年7月30日初步熟悉ubuntu操作系统

今天遇到的新单词: initialize  v 初始化、 torrent n 种子 alien n外星人  ware n商品   alienware ...

16540
来自专栏F-Stack的专栏

F-Stack Q&A 第一期

Q1:F-Stack有中断模式吗,有计划支持吗?在计算密集型的应用中,轮询模式会占用更多的CPU资源? A1:F-Stack暂时只支持轮询模式,后续会支持中断+...

76450
来自专栏Python

linux目录结构详细介绍

31430

扫码关注云+社区

领取腾讯云代金券