SeMF安装指南
Posted hi-blog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SeMF安装指南相关的知识,希望对你有一定的参考价值。
基础环境安装
安装依赖
# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make -y
安装python3
# yum install python3 -y # python3 -V Python 3.6.8
安装erlang
# cd /tmp # wget http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el7.centos.x86_64.rpm # rpm -ivh erlang-19.0.4-1.el7.centos.x86_64.rpm # erl -version Erlang (ASYNC_THREADS,HIPE) (BEAM) emulator version 8.0.3
安装Rabitmq
# cd /tmp # wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.9/rabbitmq-server-3.6.9-1.-el7.noarch.rpm # 下载 # yum install rabbitmq-server-3.6.9-1.el7.noarch.rpm -y # 安装 # service rabbitmq-server start # 启动rabbitmq-server Redirecting to /bin/systemctl start rabbitmq-server.service # rabbitmq-plugins enable rabbitmq_management # 开启web The following plugins have been enabled: amqp_client cowlib cowboy rabbitmq_web_dispatch rabbitmq_management_agent rabbitmq_management Applying plugin configuration to rabbit@localhost... started 6 plugins.
rabbitmq基本操作
# rabbitmqctl add_user admin admin # 创建用户 Creating user "admin" ... # rabbitmqctl add_vhost semf # 添加vhost Creating vhost "semf" ... # rabbitmqctl set_user_tags admin administrator # 设置标签 Setting tags for user "admin" to [administrator] ... # rabbitmqctl set_permissions -p semf admin ".*" ".*" ".*" # 设置权限 Setting permissions for user "admin" in vhost "semf" ...
安装nmap
# yum install nmap -y
防火墙设置
开放rabbitmq端口。
# systemctl start firewalld.service # 启动防火墙 # firewall-cmd --zone=public --add-port=5672/tcp --permanent # rabbitmq api 端口 success # firewall-cmd --zone=public --add-port=15672/tcp --permanent # rabbitmq web 端口 success # firewall-cmd --reload # 刷新规则 success # firewall-cmd --zone=public --list-ports # 查看开放端口 5672/tcp 15672/tcp
安装SeMF
创建一个SeMF的专属目录进行操作。
# cd /opt/
# mkdir SeMF
# cd SeMF/
# yum install git -y # git clone https://gitee.com/gy071089/SecurityManageFramwork # cd SecurityManageFramwork/ # ls ArticleManage cnvd_xml logs RBAC SeMFSetting TaskManage AssetManage cnvd_xml.py manage.py README.md SeMF使用指南-2018-06-20.pdf templates ChartManage initdata.py MappedManage requirements.txt SeMF安装指南-2018-06-12.pdf tmp cnnvd_xml.py LICENSE NoticeManage SeMF static VulnManage
修改配置文件
需修改邮箱和队列存储信息。
# vim /opt/SeMF/SecurityManageFramwork/SeMF/settings.py ... #设置邮箱 EMAIL_HOST = ‘smtp.qq.com‘ #SMTP地址 EMAIL_PORT = 25 #SMTP端口 EMAIL_HOST_USER = ‘your-email‘ #我自己的邮箱 EMAIL_HOST_PASSWORD = ‘your-password#‘ #我的邮箱密码 EMAIL_SUBJECT_PREFIX = u‘[SeMF]‘ #为邮件Subject-line前缀,默认是‘[django]‘ EMAIL_USE_TLS = True #与SMTP服务器通信时,是否启动TLS链接(安全链接)。默认是false ...
#设置队列存储 BROKER_URL = ‘amqp://admin:admin@localhost/semf‘ #设置与rabbitmq一致 CELERY_ACCEPT_CONTENT = [‘pickle‘, ‘json‘, ‘msgpack‘, ‘yaml‘]
数据库的话我们就用默认sqlite就好了,省懒。
安装依赖
# cd /opt/SeMF/SecurityManageFramwork/
# sudo python3 -m pip install -r requirements.txt
安装可能会比较慢,可能需要多试几次,如果还无法安装,请使用其它pip源。
初始化数据库
# python3 manage.py makemigrations # 初始化数据表
# python3 manage.py migrate # 初始化数据库
创建超级用户
# python3 manage.py createsuperuser
此处输入密码有复杂度要求,此处为登录SeMF界面的超管账户。
初始化漏洞库
CNNVD 漏洞数据 ,测试环境可不执行,执行过程中出现 fail 表明漏洞信息不完善或不重要,可忽略,因漏洞数据较多,需要耗费一定的时间,大概10min+。
# python3 cnvd_xml.py
初始化权限信息
主要包含菜单,权限以及管理员角色信息,该信息可在后台调整。
# python3 initdata.py
initassettype ok
initassettypeinfo ok
initrole ok
initrole ok
initsuperuser ok
initarticle ok
开启异步任务,执行celery
# celery -A SeMF worker -l info
启动服务器。
# python3 manage.py runserver 192.168.8.15:8000 # 虚拟机地址
使用
界面演示
访问http://192.168.8.15:8000/。
可以看到左边栏:资产管理、漏洞管理、任务管理、报表中心及用户管理等。
资产扫描
点击资产管理 》 资产列表 》 新增资产 》 填写相关新即可,其中唯一标记可填单个ip或网段。
资产发现
如果填写了个172.16.80.0/24子网段,就可以点击资产发现,用来探测子网段中存活的主机。
【注】经测试,资产发现实现功能有问题,未能正确识别资产和探测存活情况,应该简单修改就能修正这个Bug。
以上是关于SeMF安装指南的主要内容,如果未能解决你的问题,请参考以下文章
VS Code 安装与使用,Python 顶级 IDE 编程指南!
Vue3官网-高级指南(十七)响应式计算`computed`和侦听`watchEffect`(onTrackonTriggeronInvalidate副作用的刷新时机`watch` pre)(代码片段
在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途