Docker Yearning + Inception SQL审核平台搭建
【一】安装
【1.1】系统环境
系统环境:CentOS Linux release 7.6.1708 (Core)
系统内存:4G
系统内核:1
Python:3.6.4
关闭iptables and selinux
本次安装采用的是外部MySQL 5.7
【1.2】关闭 iptables
[root@localhost ~]# systemctl stop firewalld.service //关闭iptables
[root@localhost ~]# systemctl disable firewalld.service //开机 禁止启动 iptables
【1.3】禁用 selinux 以及安装 Python
[root@localhost ~]# vim /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled // 改成 disabled
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
【1.3.1】Python 安装
[root@localhost ~]# cd /root/software
[root@localhost software]# yum -y install zlib-*
[root@localhost software]# wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz
[root@localhost software]# tar -zxvf Python-3.6.4.tgz
[root@localhost software]# mkdir -p /usr/local/python3
[root@localhost software]# cd Python-3.6.4/
[root@localhost Python-3.6.4]# ./configure --prefix=/usr/local/python3
[root@localhost Python-3.6.4]# make
[root@localhost Python-3.6.4]# make install
[root@localhost Python-3.6.4]# mv /usr/bin/python /usr/bin/python_bak //修改旧版本
[root@localhost Python-3.6.4]# ln -s /usr/local/python3/bin/python3 /usr/bin/python //创建新的软连接
[root@localhost Python-3.6.4]# python -V //检查python的版本
Python 3.6.4
[root@localhost Python-3.6.4]# vim ~/.bash_profile //配置成功后,pip3用不了,需要进一步配置将/usr/local/python3/bin加入PATH
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin:/usr/local/python3/bin
export PATH
[root@localhost Python-3.6.4]# source ~/.bash_profile // 让环境变量生效
【1.3.2】配置 yum 源 否则 yum 不可用
[root@localhost Python-3.6.4]# yum -y update //显然上面的 except 是python2的写法,当然不能使用默认的Python3来执行了。于是把这个文件第1行的 #!/usr/bin/python 替换成 #!/usr/bin/python2.7
File "/usr/bin/yum", line 30
except KeyboardInterrupt, e: ^
SyntaxError: invalid syntax
[root@localhost Python-3.6.4]# vim /usr/bin/yum
于是把这个文件第1行的 #!/usr/bin/python 替换成 #!/usr/bin/python2.7
【1.4】安装 MySQL
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# vim mysql.repos
[mysql5.7-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=0
[root@localhost yum.repos.d]# yum -y install mysql-* //等待 安装 执行完成
【1.5】启动MySQL服务 以及 设置开机启动
[root@localhost yum.repos.d]# systemctl start mysqld
[root@localhost yum.repos.d]# systemctl enable mysqld
[root@localhost yum.repos.d]# systemctl daemon-reload
【1.6】查看 mysql 的初始密码
[root@localhost yum.repos.d]# grep 'temporary password' /var/log/mysqld.log
2019-06-25T03:27:20.334210Z 1 [Note] A temporary password is generated for root@localhost: GIutnKkR%7fe
【1.7】登录 mysql 环境做配置以及修改参数
[root@localhost yum.repos.d]# mysql -uroot -pGIutnKkR%7fe //回车进入数据库
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
mysql> set global validate_password_mixed_case_count=2;
mysql> show variables like 'validate_password%';
+--------------------------------------+-------+
| Variable_name | Value |
+--------------------------------------+-------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 6 |
| validate_password_mixed_case_count | 2 |
| validate_password_number_count | 1 |
| validate_password_policy | LOW |
| validate_password_special_char_count | 1 |
+--------------------------------------+-------+
7 rows in set (0.02 sec)
mysql> alter user 'root'@'localhost' identified by '123456';
mysql> flush privileges;
mysql> quit;
【1.8】创建 Yearning 数据库 与 用户 和 密码 并且授权
[root@localhost yum.repos.d]# mysql -uroot -p123456
mysql> create database Yearning charset utf8; //创建 Yearning 库
mysql> create user 'Yearning'@'%' identified by 'Yearning'; //创建 Yearning 用户
mysql> grant all on *.* to 'Yearning'@'%' identified by 'Yearning'; //授权 Yearning 用户权限
mysql> flush privileges;
mysql> quit;
【1.9】安装 docker
[root@localhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2 //安装 docker 的依赖包
【1.9.1】设置yum源
[root@localhost ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
【1.9.2】可以查看所有仓库中所有docker版本,并选择特定版本安装
[root@localhost ~]# yum list docker-ce --showduplicates | sort -r
已加载插件:fastestmirror, langpacks
已安装的软件包
可安装的软件包
* updates: ap.stykers.moe
Loading mirror speeds from cached hostfile
* extras: ftp.sjtu.edu.cn
docker-ce.x86_64 3:18.09.6-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.6-3.el7 @docker-ce-stable
docker-ce.x86_64 3:18.09.5-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.4-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.3-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.2-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.1-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.3.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.2.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 18.03.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.12.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.12.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.09.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.09.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.3.ce-1.el7 docker-ce-stable
docker-ce.x86_64 17.03.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
* base: ap.stykers.moe
【1.9.3】安装 docker 选择对应的版本
[root@localhost ~]# yum install docker-ce #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版18.03.1.ce
[root@localhost ~]# yum install <FQPN> # 例如:yum install docker-ce-18.03.1.ce
[root@localhost ~]# yum install -y docker-ce-18.03.1.ce //等待安装完成
【1.9.4】启动并加入开机启动
[root@localhost ~]# systemctl start docker
[root@localhost ~]# systemctl enable docker
【1.9.5】验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
[root@localhost ~]# docker version
Client:
Version: 18.09.6
API version: 1.39
Go version: go1.10.8
Git commit: 481bc77156
Built: Sat May 4 02:34:58 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.6
API version: 1.39 (minimum version 1.12)
Go version: go1.10.8
Git commit: 481bc77
Built: Sat May 4 02:02:43 2019
OS/Arch: linux/amd64
Experimental: false
【二】Inception 及 Yearning安装
【2.1】下载 Yearning 源码
[root@localhost ~]# mkdir -p /root/software
[root@localhost ~]# cd /root/software
[root@localhost software]# git clone https://github.com/cookieY/Yearning.git //获取 git Yearning 源码
[root@localhost software]# cd Yearning/install/yearning-docker-compose/init-sql // 进入 环境 变量下边去
[root@localhost init-sql]# mysql -uYearning -pYearning Yearning < install.sql // 导入 环境变量到数据库里面去
[root@localhost ~]# cd /root/software/Yearning/install/ // cd 到环境目录 解压 inception.tar 包
[root@localhost install]# tar -xvf inception.tar
[root@localhost install]# cd inception/bin/
[root@localhost bin]# mkdir -p /var/log/inception/ // 创建 inception 日志目录
[root@localhost bin]# mkdir -p /var/run/inception/ // 创建 inception.socket 目录
[root@localhost bin]# vim inc.cnf // 修改 inception 配置文件
[inception]
general_log=1
general_log_file=/var/log/inception/inception.log // inception 日志目录
port=6669
socket=/var/run/inception/inc.socket // inception.socket 存储目录
character-set-client-handshake=0
character-set-server=utf8
inception_support_charset=utf8mb4
inception_enable_nullable=0
inception_check_primary_key=1
inception_check_column_comment=1
inception_check_table_comment=1
inception_enable_blob_type=1
inception_check_column_default_value=1
inception_support_charset=utf8
inception_osc_on=OFF
inception_check_column_default_value=OFF
inception_check_column_comment=OFF
inception_check_table_comment=OFF
inception_enable_identifer_keyword=ON
inception_remote_backup_host = 192.168.1.150 // 备份数据库的 IP
inception_remote_backup_port = 3306 // 数据库默认端口
inception_remote_system_user = root // 数据库的权限用户_可根据自己定义
inception_remote_system_password = 123456 // 数据库的用户密码
【2.2】启动 inception 服务
[root@localhost bin]# pwd
/root/software/Yearning/install/inception/bin
[root@localhost bin]# nohup bin/Inception --defaults-file=inc.cnf & // 后台调度启用
【2.3】运行 Yearning 【备注:HOST=本机IP 与 MYSQL_ADDR=本机IP 后面的参数只要是按照本文操作可以不用选择。默认按照我的就行了】
[root@localhost bin]# docker run -d -e HOST=192.168.1.150 -e MYSQL_ADDR=192.168.1.150 -e MYSQL_USER=Yearning -e MYSQL_PASSWORD=Yearning -p8080:80 -p8000:8000 registry.cn-hangzhou.aliyuncs.com/cookie/yearning:v1.3.0
【三】相关配置
【3.1】访问 Yearning
访问Yearning(访问地址为你启动docker的IP地址)
登录管理员缺省值:admin / Yearning_admin
Docker Yearning + Inception SQL审核平台搭建的更多相关文章
- Yearning + Inception SQL审核平台搭建
Yearning 安装: 安装Nginxyum install nginx -y 按照顺序安装MySQLmysql-community-common-5.7.22-1.el6.x86_64.rpmmy ...
- Yearning 介绍(SQL审核平台)
介绍 Yearning SQL 审计平台 基于Vue.js与Django的整套mysql-sql审核平台解决方案.提供基于Inception的SQL检测及执行. GitHub:https://gith ...
- SQL审计 Yearning 介绍(SQL审核平台)
yearning SQL 是一个成熟的SQL审计平台
- 基于Inception搭建MySQL SQL审核平台Yearing
基于Inception搭建MySQL SQL审核平台Yearing Inception 1. Inceptionj简介 2. Inception安装 2.1 下载和编译 2.2 启动配置 Yearni ...
- SQL审核平台Yearning部署
SQL审核平台Yearning部署 Yearning优势: Yearning SQL 审计平台 基于Vue.js与Django的整套mysql-sql审核平台解决方案.提供基于Inception的S ...
- Yearning v1.3.0 发布,Web 端 SQL 审核平台
企业级MYSQL web端 SQL审核平台. Website 官网 www.yearning.io Feature 功能 数据库字典自动生成 SQL查询 查询工单 导出 自动补全,智能提示 查询语句审 ...
- Inception SQL审核注解
Inception SQL审核注解 1.建表语句 建表语句检查项 表属性的检查项 这个表不存在 对于create table like,会检查like的老表是不是存在. 对于create table ...
- SQL审核平台-Yearning安装部署实践
相关文档: https://guide.yearning.io/ yearning简介 http://python.yearning.io/install/ yearning安装 Yearning ...
- inception+archery SQL审核平台
关闭防火墙和selinux 宿主机安装mysql,创建archery数据库,并给所有权限,允许远程连接到该数据库 grant all privileges on *.* to 'root'@'%' i ...
随机推荐
- SpringBoot--⼯具表达式对象
⼯具表达式对象除了这些基本的对象之外,Thymeleaf将为我们提供⼀组⼯具对象,这些对象将帮助我们在表达式中执⾏常⻅任务.#execInfo:有关正在处理的模板的信息.#messages:⽤于在变量 ...
- 洛谷 P3320 [SDOI2015]寻宝游戏
因为寻宝路径是一个环,所以寻宝花费的最小时间与起点无关.宝应当按照所有宝藏所在位置的 dfs 序进行才能够使得花费的时间最短.设 \(dist_i\) 表示 \(i\) 到树根的最短距离,那么树上任意 ...
- 还在用逆向工程?太Low了,试试通用Mapper吧!
什么是通用Mapper? 通用mapper 可以极大的方便开发人员进行ORM,提供极其方便的单表增删改查. 什么是通用mapper,一句话简单说,它就是个辅助mybatis极简单表开发的组件.它不是为 ...
- redis之常见操作
目录 redis的常见操作 1. redis客户端登录方式 2. 设置密码 3. 获取redis的配置 4. redis键(key) 语法 实例 Redis keys (黄色为重点) redis的常见 ...
- C. Magic Grid 构造矩阵
C. Magic Grid time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- 浏览器之本地缓存存储 localStorage 和 sessionStorage的区别以及用法
区别: localStorage永久保存在浏览器 :sessionStorage在浏览器关闭之后存储的数据就会销毁 用法:两者用法差不多,但是取值有所不同 编辑页面逻辑代码为: 这是给 id=btn ...
- stm32_f103使用gcc编译的环境下printf打印函数的实现
前记 gcc编译使用的printf打印函数需要的底层函数是和其他编译器不同的,以前的是无法使用的,这里有两种方法,一种是使用gcc库里面的printf函数,自己实现底层IO函数_write.另外一 ...
- 小米xiaomi9 google play卡在检查信息
终于在今年淘汰掉用了三年的果6s,换了小米9 ,结果发现科学..上网后,可以正常打开google网页,却无法登陆,gmail也无法使用.一直卡在“正在核对信息”. 检查服务,小米9 全系列自带了谷歌框 ...
- FieldByName().AsFloat只可以保留四位小数,四位以上应使用Value
FieldByName('a').AsFloat to FieldByName('a').Value
- Codestorm:Game with a Boomerang
题目连接:https://www.hackerrank.com/contests/codestorm/challenges/game-with-a-boomerang 上一篇博客不知怎么复制过来题目, ...