当前位置:   article > 正文

手动部署SQL审计平台Archery(连接mysql8.x)_sql审核平台 archey

sql审核平台 archey

安装Python和virtualenv

从1.9.0版本开始,将不再支持python3.7及以下版本,手动安装也将使用3.9版本作为样例,移除yum安装方式

# 安装依赖

yum install libffi-devel wget gcc make zlib-devel openssl openssl-devel ncurses-devel openldap-devel gettext bzip2-devel xz-devel

wget "https://www.python.org/ftp/python/3.9.10/Python-3.9.10.tar.xz"

tar -xvJf Python-3.9.10.tar.xz

# 编译

cd Python-3.9.10

./configure prefix=/data/python3

make && make install

ln -fs /data/python3/bin/python3 /usr/bin/python3

ln -fs /data/python3/bin/pip3 /usr/bin/pip3

# virtualenv

pip3 install virtualenv -i https://mirrors.ustc.edu.cn/pypi/web/simple/

ln -fs /data/python3/bin/virtualenv /usr/bin/virtualenv

在执行的过程中不确定是否执行成功的时候echo $? 查看一下回显

# 编译安装python的使用

virtualenv venv4archery --python=python3

# 切换python运行环境到虚拟环境

source venv4archery/bin/activate

# CentOS 6 使用此命令

curl https://packages.microsoft.com/config/rhel/6/prod.repo > /etc/yum.repos.d/mssql-release.repo

# CentOS 7 使用此命令

curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo

# 卸载冲突驱动

sudo yum remove unixODBC-utf16 unixODBC-utf16-devel

# 安装驱动

sudo ACCEPT_EULA=Y yum install msodbcsql17 sudo ACCEPT_EULA=Y yum install mssql-tools

# 更新环境变量

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/.bashrc

# 安装ODBC依赖

sudo yum install unixODBC-devel

wget "https://github.com/hhyo/archery/archive/v1.8.5.tar.gz"

tar -xzvf v1.8.5.tar.gz

# 安装系统依赖

yum -y install gcc gcc-c++ python-devel mysql-devel openldap-devel unixODBC-devel gettext

# 安装依赖库

cd Archery-1.8.5/

pip3 install -r requirements.txt -i https://mirrors.ustc.edu.cn/pypi/web/simple/

安装Inception(MySQL审核、查询校验和数据脱敏)

二进制部署goInception

wget https://github.com/hanchuanchuan/goInception/releases/download/v1.3.0/goInception-linux-v1.3.0-42-g169e116.tar.gz

tar zxvf goInception-linux-v1.3.0-42-g169e116.tar.gz

注意config/config.toml.default 配置中从库必须要配置 不然goInception不生效

./goInception -config=config/config.toml.default & 放到后台启动

备MySQL、Redis实例

MySQL推荐版本>=5.7

Redis提供任务队列和缓存

修改配置

vi archery/settings.py

配置mysql实例

注意使用8.x数据库需要更换用户密码策略

use mysql

select host ,user ,plugin from user; 查看一下用户的密码策略

换成mysql_native_password 不然连接会报错

alter user 'slave'@'%' identified with mysql_native_password by 'Zxcvbnm@2023';

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': 'archery', # 数据库名称

'USER': 'slave', # 数据库用户

'PASSWORD': 'Zxcvbnm@2023', # 数据库密码

'HOST': '192.168.197.132', # 数据库地址

'PORT': '3306', # 数据库端口

'OPTIONS': { 'init_command': "SET sql_mode='STRICT_TRANS_TABLES'", # SQL_MODE,为了兼容select * group by,可以按需调整

Redis实例配置

启动准备

# 数据库初始化

cd Archery-1.8.5/

python3 manage.py makemigrations sql

python3 manage.py migrate

# 数据初始化

使用mysql8.x 在执行时报错 下载mysql8.x对应的驱动包

https://rhel.pkgs.org/7/mysql-8.0-x86_64/ 访问下载对应版本的包

wget https://repo.mysql.com/yum/mysql-8.0-community/el/7/x86_64/mysql-community-client-8.0.31-1.el7.x86_64.rpm

访问网站找不到下载路径的话 可以修改我的下载连接直接改成对应版本即可比如我要下载8.0.28版本

wget https://repo.mysql.com/yum/mysql-8.0-community/el/7/x86_64/mysql-community-client-8.0.28-1.el7.x86_64.rpm

强制安装不下载依赖

rpm -ivh mysql-community-client-8.0.31-1.el7.x86_64.rpm --force --nodeps

然后在执行就不会报错了

python3 manage.py dbshell<sql/fixtures/auth_group.sql

python3 manage.py dbshell<src/init_sql/mysql_slow_query_review.sql

# 创建管理用户 自定义即可

python3 manage.py createsuperuser

启动

source /data/Python-3.9.10/venv4archery/bin/activate

#启动Django-Q,需保持后台运行

python3 manage.py qcluster &

#启动服务

nohup python3 manage.py runserver 0.0.0.0:9123 --insecure &

如果要关闭的话 jobs 查看后台运行的进程 kill -9 %2 杀掉进程即可

部署完成访问web 192.168.197.138:9123 输入刚刚设置的用户名密码

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/912872
推荐阅读
相关标签
  

闽ICP备14008679号