mysql申请审核系统_Mysql审核工具archery

Mysql审核工具archery

系统:Centos6.8

ip:192.168.122.150

安装Python和virtualenv

编译安装

[root@www ~]# yum install wget gcc make zlib-devel openssl openssl-devel

[root@www src]# wget "https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz"

[root@www src]# tar -xvf Python-3.6.5.tar.xz

[root@www src]# cd Python-3.6.5

[root@www Python-3.6.5]# ./configure prefix=/usr/local/python3

[root@www Python-3.6.5]# make && make install

[root@www Python-3.6.5]# ln -fs /usr/local/python3/bin/python3 /usr/bin/python3

[root@www Python-3.6.5]# ln -fs /usr/local/python3/bin/pip3 /usr/bin/pip3

virtualenv

[root@www ~]# pip3 install virtualenv -i https://mirrors.ustc.edu.cn/pypi/web/simple/

[root@www ~]# pip3 install -U pip

[root@www ~]# ln -fs /usr/local/python3/bin/virtualenv /usr/bin/virtualenv

安装Archery

准备虚拟环境

编译安装python的使用

[root@www ~]# virtualenv venv4archery --python=python3

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

[root@www ~]# source venv4archery/bin/activate

安装ODBC依赖

[root@www Archery-1.5.3]# yum install unixODBC-devel -y

下载release包,安装依赖库

[root@www ~]# wget "https://github.com/hhyo/archery/archive/v1.5.3.tar.gz"

[root@www ~]# tar -xzvf v1.5.3.tar.gz

安装系统依赖

[root@www ~]# yum -y install gcc gcc-c++ python-devel mysql-devel openldap-devel unixODBC-devel gettext

安装依赖库

[root@www ~]# cd Archery-1.5.3/

[root@www Archery-1.5.3]# pip3 install -r requirements.txt -i https://mirrors.ustc.edu.cn/pypi/web/simple/

如果出现报一下错误

30cc1dd34abd8c786fb03fcef88b7af6.png

解决方法:

安装mysql5.7,然后安装以下依赖即可

[root@www Archery-1.5.3]# yum install mysql-devel -y

(venv4archery) [root@www Archery-1.5.3]# find / -name mysql_config.1.gz

/usr/share/man/man1/mysql_config.1.gz

(venv4archery) [root@www Archery-1.5.3]# find / -name mysql_config

/usr/bin/mysql_config

[root@www Archery-1.5.3]# pip3 install -r requirements.txt -i https://mirrors.ustc.edu.cn/pypi/web/simple/

3e7a8f4bdfcd9017fb98ab70badda949.png

出现报错

90cc665918a62a62563924847a424959.png

解决方法:

[root@www Archery-1.5.3]# yum install openldap -y

[root@www Archery-1.5.3]# yum install openldap-clients -y

[root@www Archery-1.5.3]# yum install openldap-devel -y

[root@www Archery-1.5.3]# pip3 install -r requirements.txt -i https://mirrors.ustc.edu.cn/pypi/web/simple/

(venv4archery) [root@www Archery-1.5.3]# echo $?

0

修改配置

[root@www Archery-1.5.3]# vim archery/settings.py

安全修改

修改Prpcrypt的key信息,该key用于数据库密码等信息加密,目前是硬编码在代码内 aes_decryptor.py

基础配置

关闭debug模式

DEBUG = False

设置ALLOWED_HOSTS,建议限制内网访问

ALLOWED_HOSTS = ['*']

请求大小限制,如果提交SQL语句过大可以修改该值

DATA_UPLOAD_MAX_MEMORY_SIZE = 15728640

密码校验,用户注册和添加密码校验规则

AUTH_PASSWORD_VALIDATORS = [

{

'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',

},

{

'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',

'OPTIONS': {

'min_length': 9,

}

},

{

'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',

},

{

'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',

},

]

MySQL配置

建议MySQL版本5.6以上

0055a8f06dd9c31bfdde69bed4c5019e.png

MongoDB配置

themis审核需要执行eval()命令,参考配置Allow user to execute eval() command on MongoDB 3.x}

创建角色

use admin

switched to db admin

db.createRole( { role: "executeFunctions", privileges: [ { resource: { anyResource: true }, actions: [ "anyAction" ] } ], roles: [] } )

{

"role" : "executeFunctions",

"privileges" : [

{

"resource" : {

"anyResource" : true

},

"actions" : [

"anyAction"

]

}

],

"roles" : [ ]

}

给用户分配角色

use themis

switched to db themis

db.grantRolesToUser("dbuser", [ { role: "executeFunctions", db: "admin" } ])

修改配置

MONGODB_DATABASES = {

"default": {

"NAME": 'themis', # 数据库

"USER": '', # 用户名

"PASSWORD": '', # 密码

"HOST": '127.0.0.1', # 数据库HOST

"PORT": 27017, # 数据库端口

},

}

Django-Q配置

默认配置即可,也可参考django-q文档修改

Q_CLUSTER = {

'name': 'archery',

'workers': 4,

'recycle': 500,

'timeout': 60,

'compress': True,

'cpu_affinity': 1,

'save_limit': 0,

'queue_limit': 50,

'label': 'Django Q',

'django_redis': 'default'

}

缓存配置

缓存使用redis

CACHES = {

"default": {

"BACKEND": "django_redis.cache.RedisCache",

"LOCATION": "redis://127.0.0.1:6379/0", # redis://host:port/db

"OPTIONS": {

"CLIENT_CLASS": "django_redis.client.DefaultClient",

}

}

}

mysql> create database archery default character set utf8;

Query OK, 1 row affected (0.14 sec)

mysql> grant all privileges on archery.* to root@'127.0.0.1' identified by 'abc123';

Query OK, 0 rows affected, 1 warning (0.46 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.14 sec)

mysql>exit

安装redis略

启动准备

数据库初始化

[root@www Archery-1.5.3]# python3 manage.py makemigrations sqlpython3 manage.py migrate

307248dab05bb1e0e195d0bca9c74d4f.png

[root@www Archery-1.5.3]# python3 manage.py migrate

8f65cd47fc8fdbe7532f044b47d1d7df.png

编译翻译文件

[root@www Archery-1.5.3]# python3 manage.py compilemessages

effc91f6a47bc787a4049a923fc316e2.png

创建管理用户

python3 manage.py createsuperuser

(venv4archery) [root@www Archery-1.5.3]# python3 manage.py createsuperuser

Username: admin #用户

Email address: #填写你的邮箱地址

Password: admin123

Password (again): admin123

Superuser created successfully.

启动Django-Q

需要保持后台运行,用于消息推送、工单执行、定时执行,可使用supervisor进行管理

source /opt/venv4archery/bin/activate

python3 manage.py qcluster &

b3367c246119723211c891cb3d5d59c2.png

启动服务

runserver启动

source /root/venv4archery/bin/activate

python3 manage.py runserver 0.0.0.0:9123 --insecure

关闭防火墙,或者开放9123端口 账号密码就是刚刚创建的admin admin123

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/289086.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iOS——Core Animation 知识摘抄(二)

阴影 主要是shadowOpacity 、shadowColor、shadowOffset和shadowRadius四个属性 shadowPath属性 我们已经知道图层阴影并不总是方的,而是从图层内容的形状继承而来。这看上去不错,但是实时计算阴影也是一个非常消耗资源的,尤其是图层有多个子…

Blazor University (11)组件 — 替换子组件的属性

原文链接:https://blazor-university.com/components/replacing-attributes-on-child-components/替换子组件的属性源代码[1]到目前为止,我们已经了解了如何创建代码生成的属性[2],以及如何捕获意外参数[3]。除了这两种技术之外,B…

HTTPS实现原理

HTTPS实现原理 HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL。其所用的端口号是443。…

Android之在ubuntu上过滤多条关键字日志

1 问题 比如我们在查问题的时候,需要过滤多个关键字,我平时的做法是一个终端执行下面的命令,然后几个关键字就几个终端,切换来切换去不方便看日志 adb logcat | grep **** 2 改进办法 今天看到同事用了grep -E,我们可以通过-E这个参数过滤多个关键字,比如 adb logcat | gre…

C#使用ServiceController控制windows服务

C#中,使用ServiceController类控制windows服务,使用之前要先添加引用:System.ServiceProcess,然后在命名空间中引用:using System.ServiceProcess。下面举例获取本机的所有已安装的Windows服务和应用,然后查找某一应用活服务是否已经安装。 代码: using System; using S…

电信aep平台是什么意思_江苏天鼎证券:股票平台跳水是什么意思?股票为什么会跳水?...

相信很多新手在刚玩股票的时候会遇到很多的专业的基础知识不能理解,比如什么是跳水?为什么会跳水呢?接下来就为大家详细来说股票的跳水以及为何会跳水。一、股票平台跳水是什么意思?股票跳水通常指股价在较短的时间内,出现从高位下降到低位的现象。出…

设计模式六大原则(5):迪米特法则

设计模式六大原则(5):迪米特法则 定义:一个对象应该对其他对象保持最少的了解。 问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。 解决方…

Android之非root手机run-as命令获取debug版本apk里面的数据(shared_prefs文件,lib下面的so,数据库文件)

1 问题 非root手机想要获取debug版本的apk里面的数据(shared_prefs文件,lib下面的so,数据库文件) 2 直接用run-as命令 adb shellrun-as package-name 然后就直接进入当前apk目录了,比如 如下 /data/data/packageName 我们可以看到很多文件执行命令ls -al命令,显示结果如…

mysql mgr简介_MySQL Group Replication(MGR)使用简介与注意事项

MySQL Group Replication(MGR)是MySQL官方在5.7.17版本引进的一个数据库高可用与高扩展的解决方案,以插件形式提供。MGR基于分布式paxos协议,实现组复制,保证数据一致性。内置故障检测和自动选主功能,只要不是集群中的大多数节点都…

css改变谷歌浏览器的滚动条样式

详细内容请点击 /*---滚动条默认显示样式--*/::-webkit-scrollbar-thumb{height:50px;outline-offset:-2px;outline:2px solid #fff;-webkit-border-radius:4px;border: 2px solid #fff;}/*---鼠标点击滚动条显示样式--*/::-webkit-scrollbar-thumb:hover{height:50px;-webkit-…

C#创建PDF文档

说明:本实例用到了第三方组件ICSharpCode.SharpZipLib.dll、itextsharp.dll,该组件可到网上下载。 代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text…

【矩阵乘法】OpenJ_POJ - C17F - A Simple Math Problem

算(74*sqrt(3))^n的整数部分(mod 1e97)。 容易想到矩乘快速幂,但是怎么算整数部分呢? (74*sqrt(3))^n一定可以写成ab*sqrt(3),同理(7-4*sqrt(3))^n一定可以写成a-b*sqrt(3),于是, (74*sqrt(3))^…

如果通过 C# 实现对象的深复制 ?

咨询区 NakedBrunch我想实现 引用类型对象 之间的深复制,也就是在新的对象上修改不会影响到老的对象,我用了 C# 提供的 Clone 方法。MyObject myObj GetMyObj(); // Create and fill a new object MyObject newObj myObj.Clone();但貌似这样行不通&…

centos安装与配置R语言

Linux下安装R语言 一、编译安装 由于采用编译安装,所以需要用到gcc编译环境,在编译前check文件时还会用到libXt-devel和readline-devel两个依赖,所以在编译R语言源码时先将这些工具和依赖包准备好。readline-devel 也可以不安装,不…

python beautifulsoup4 table tr_python BeautifulSoup解析表

牧羊人nacy这是通用的工作示例(表数据)标记。它返回带有内部列的行的列表。第一行仅接受一个(表头/数据)。def tableDataText(table): rows [] trs table.find_all(tr) headerow [td.get_text(stripTrue) for td in trs[0].find_all(th)] # header row i…

linux之让终端支持C++11/14编译cpp文件

1 问题 我们的项目很多智能指针,但是我linux的终端肯定不支持C11/14, 我们平时都是用的下面的命令编译c文件 g -g file.cpp -o file r 如果是用c11编译需要改成如下 g -g -Wall -stdc11 file.cpp -o file 如果是用C14编译需要改成如下 g -g -Wall -stdc14 file.cpp -o f…

clob字段怎么导出_Oracle 11g及12c+版本下为啥有些表不能exp导出?

【引言】今天有同事问了一个问题,在Oracle 11g下,为啥exp方式导出一个用户的数据表,在imp后却发现有些表并没有迁移过来。经查阅官方文档,发现和Oracle11g及12c 版本相对于10g,有一个新特性deferred_segment_creation(…

Python中第三方的库(library)、模块(module),包(package)的安装方法以及ImportError: No module named...

Python中,想要安装第三方安装包,即third library,package等,对于熟悉的人来说,很简单。但是对于新手,至少对于之前的我,很难,往往只是安装一个很小的包,都被搞得一头雾水…

C# 读写二进制文件

读写二进制文件的一种选择是直接使用流类型;在这种情况下,最好使用字节数组执行读写操作。另一个选择是使用为这个场景定义的读取器和写入器:BinaryReader和BinaryWriter。使用它们的方式类似于使用 StreamReader 和 StreamWriter&#xff0c…

推荐系统(1)--splitting approaches for context-aware recommendation

开篇语: 大一的时候。在实验室老师和师兄的带领下。我開始接触推荐系统。时光匆匆,转眼已是大三,因为大三课甚是少。于是便有了时间将自己所学的东西做下总结。第一篇博客。献给过去三年里带我飞的老师和师兄们,感谢你们的无私帮助…