• SQL审核平台-Yearning安装部署实践


    相关文档:

    https://guide.yearning.io/ yearning简介

    http://python.yearning.io/install/  yearning安装

    Yearning SQL 审计平台 基于Vue.js与Django的整套mysql-sql审核平台解决方案。提供基于Inception的SQL检测及执行。

    GitHub:https://github.com/cookieY/Yearning

    文档:https://cookiey.github.io/Yearning-document/

    搭建环境

    MySQL版本:5.7.24

    linux系统:CentOS7

    Python版本:3.6 

    Yearning安装

    Yearning_python

    下载yearning1.4.7版本

    git地址:https://github.com/cookieY/Yearning/tree/v1.4.7

     直接点击下载压缩包即可

    创建yearning数据库

    在自己的数据库实例中创建yearning所需的数据库

    create database Yearning DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

    安装python依赖包

    cd Yearning/src
    pip install -r requirements.txt 

    配置Yearning配置文件

    编辑Yearning/src/deploy.conf文件

    [mysql]
    db = 所创建的库名
    address = 数据库地址
    port = 数据库端口
    password = 数据库密码
    username = 数据库用户
     
    [host]
    ipaddress = 服务器ip地址:端口 (涉及跨域十分重要!!设置不正确将无法登陆!!)
                如 本机地址为192.168.137.13 nginx设置端口为80
                则应填写为 192.168.137.13:80 之后通过该地址访问平台。
     
    [Inception]
    ip = Inception地址
    port = Inception端口
    user = Inception用户名
    password  = Inception密码
    backupdb = 备份数据库地址
    backupport = 备份数据库端口
    backupuser = 备份数据库用户名
    backuppassword = 备份数据库密码
     
    [LDAP] LDAP相关设置
    LDAP_SERVER = LDAP服务地址
    LDAP_SCBASE = LDAP dc 设置 如 dc=xxx,dc=com
    LDAP_DOMAIN = LDAP域名 如 xxx.com
     
    [email] 邮箱推送相关设置
    username = 邮箱发件账号 如 xxxx@163.com
    password = 邮箱发件账号密码
    smtp_server = 邮箱stmp地址, 具体地址请咨询对应邮箱提供者
    

      

    初始化数据库

    python3  manage.py makemigrations
    python3  manage.py migrate 

    这一步可能会报错

    1.没有使用python3,

    SyntaxError: Non-ASCII character 'xe6' in file /data/mysql/opdir/Yearning-1.4.7/src/settingConf/settings.py on line 154, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
    

    2.使用python3启动

    ModuleNotFoundError: No module named 'Crypto'  

     没有Crypto模块,需要安装该模块

    [root@XXX ~]# pip install crypto   安装该模块
    

      

    添加初始化用户

     echo "from core.models import Account;Account.objects.create_user(username='admin', password='admin123456', group='admin',is_staff=1)" | python3 manage.py shell
    

     

    复制编译好的静态文件到nginx html目录下

    cd /data/mysql/opdir/Yearning-1.4.7/webpage
    npm install
    

     

    npm install phantomjs-prebuilt@2.1.16 --ignore-scripts(上面如果有问题,执行这条就ok)
    

      

     

    如果没有npm,需要先安装前段相关的软件

    npm
    yum install npm
    
    node
    npm install node
    
    前端相关安装
    npm install --global vue-cli
    npm install -g webpack
    npm install webpack webpack-cli -g
    npm install --global vue-cli
    webpack -v #查看下是否安装成功
    vue -V #查看下是否安装成功
    
    nginx 自己装(前端代理用)
    yum install nginx
    

      

    Yearning_go

    python支持的yearning已经不再维护,建议使用go-yearning

    安装2.1.6版本yearning

    安装文档:https://guide.yearning.io/install.html

    如果登陆界面现实密码错误,就吧yearning库删除掉,重新执行初始化命令

     以下信息表示yearning初始化成功

     

     Yearning下载

    下载2.1.6版本(目前最新)

     https://github.com/cookieY/Yearning/releases

    解压后的目录结构

     修改配置文件

    cat conf.toml
    [Mysql]
    Db = "Yearning"
    Host = "127.0.0.1"
    Port = "3306"
    Password = "xxxx"
    User = "root"
    
    [General]   #数据库加解密key,只可更改一次。
    SecretKey = "dbcjqheupqjsuwsm"
    

     

    关于SecretKey

    SecretKey是token/数据库密码加密/解密的salt。

    建议所有用户在初次安装Yearning之前将SecretKey更改(不更改将存在安全风险)

    格式: 大小写字母均可, 长度必须为16位

    特别注意:

    此key仅可在初次安装时更改!之后不可再次更改!如再次更改会导致之前已存放的数据源密码无法解密,最终导致无法获取相关数据源信息

     

    使用帮助

    ./Yearning -h 

     

    初始化数据结构

    ./Yearning -m
    

      

    启动服务

    默认启动
    ./Yearning -s
    参数启动
    ./Yearning -s -b "172.27.80.35" -p "8000"
    

      

    配置nginx

    server{
            listen 80;
            client_max_body_size 75M;
            server_name xxx.com;
            location / {
                proxy_redirect off;
                proxy_pass http://127.0.0.1:8090;
            }
        }
    

     

     

  • 相关阅读:
    手把手带你画一个 时尚仪表盘 Android 自定义View
    新手自定义view练习实例之(二) 波浪view
    新手自定义view练习实例之(一) 泡泡弹窗
    增加辅助的数据库组件
    解决Plugin is too old,please update to a more recent version,or set ANDROID_DAILY_OVERRIDE..
    Android 自定义View -- 简约的折线图
    android 开源图表库MPChart最简单使用方法示例教程Demo--折线图 柱状图
    改善database schema
    题解报告:hdu 2057 A + B Again
    hdu 2087 剪花布条(KMP入门)
  • 原文地址:https://www.cnblogs.com/asea123/p/11982494.html
Copyright © 2020-2023  润新知