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。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM