数据库审计平台---基础环境部署

数据库审计平台 --- 介绍

数据库审计平台 --- 依赖环境部署

 

环境说明
操作系统 
RedHat

RedHat Enterprise Linux 7.4

软件版本 

Python

Python2.7(系统自带)

Mongodb

mongodb-linux-x86_64-enterprise-rhel70-3.6.5.tgz

Redis

redis-3.2.3.tar.gz

Mysql

mysql-5.7.21-el7-x86_64.tar.gz

cx_Oracle

cx_Oracle-5.1.2-11g-py27-1.x86_64.rpm

oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm

oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm

virtualenv

virtualenv-15.2.0.tar.gz (通过互联网安装‘pip2.7 install virtualenv'的版本是最新版)

pip

setuptools-19.6.tar.gz

pip-8.0.2.tar.gz

PyH

PyH-0.1.1.tar.gz

Celery

celery-4.1.1.zip

WTForms

WTForms-JSON-0.3.3.tar.gz

Themis

themis-master.zip

软件获取链接
Themis

https://github.com/CreditEaseDBA/Themis

pyh

https://github.com/hanxiaomax/pyh

Celery

https://github.com/celery/celery/tree/v4.1.1

wtforms

https://github.com/kvesteri/wtforms-json

WTForms

https://pypi.org/project/WTForms-JSON/#files

PyH

https://code.google.com/archive/p/pyh/downloads

操作系统环境配置

目录结构

操作系统最小化安装

 

配置yum源

mount /dev/cdrom /mnt

vi /etc/yum.repos.d/1.repo

 

 

[sqltuning]
name=sqltuning
baseurl=file:///mnt/
enable=1
gpgcheck=0

安装系统工具包

 

yum install gcc python-devel unzip

 

配置全局环境变量

vi /etc/profile

export MONGODB_HOME=/opt/mongodb
export ORACLE_HOME=/usr/lib/oracle/12.1/client64
export MYSQL_HOME=/opt/mysql
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export TNS_ADMIN=$ORACLE_HOME/network/admin
export REDIS_HOME=/opt/redis
export PATH=$PATH:$REDIS_HOME/bin:$MONGODB_HOME/bin:$ORACLE_HOME/bin:$MYSQL_HOME/bin

配置开机启动

 

vi /etc/rc.d/rc.local

/opt/mongodb/bin/mongod -f /opt/mongodb/bin/mongodb.conf

安装所有组件

安装mongodb

 

cd /opt/media

 

tar -zxvf mongodb-linux-x86_64-enterprise-rhel70-3.6.5.tgz

 

mv mongodb-linux-x86_64-enterprise-rhel70-3.6.5 /opt/mongodb

 

mkdir -p /opt/mongodb/db /opt/mongodb/logs

 

cd /opt/mongodb/bin

 

vi /opt/mongodb/bin/mongodb.conf

dbpath=/opt/mongodb/db
logpath=/opt/mongodb/logs/mongodb.log
port=27017
fork=true
bind_ip=10.6.0.169,127.0.0.1

启动mongodb

/opt/mongodb/bin/mongod --auth -f /opt/mongodb/bin/mongodb.conf

 

教程 http://www.runoob.com/mongodb/mongodb-tutorial.html

 

配置mongodb

 

>use admin
>db.createUser(
  {
    user: "dba", //用户名
    pwd: "sqltuning", //密码
    roles: [ { role: "root", db: "admin" } ] //设置权限
  }
)
#因为执行eval需要anyAction,故创建新角色
>db.createRole({  
role: "sysAdmin",  
privileges: [{  
resource: {  
anyResource: true  
},  
actions: ['anyAction']  
}],  
roles: []  
})  
>use sqlreview	---创建sqlreview
>db.createUser(
  {
    user: "sqlreview", //用户名
    pwd: "sqlreview", //密码
    roles: [
 { role: "dbOwner", db: "sqlreview" } ,
{role:"sysAdmin",db:"admin"}
] //设置权限
  }
)
#finish

安装redis

 

cd /opt/media

tar -zxvf redis-3.2.3.tar.gz

mkdir -p /opt/redis

cd /opt/media/redis-3.2.3

make PREFIX=/opt/redis install

cp /opt/media/redis/utils/redis_init_script /etc/rc.d/init.d/redis

vi /etc/rc.d/init.d/redis

 

chkconfig -add redis

mkdir -p /etc/redis

cp /opt/media/redis/redis.conf /etc/redis/6379.conf

 

配置redis

 

vi /etc/redis/6379.conf

dir /opt/redis/db
requirepass sqltuning

启动redis

systemctl status redis.service

systemctl restart redis.service

 

安装mysql

 

groupadd mysql

useradd -g mysql mysql

passwd mysql

cd /opt/media

tar -zxvf mysql-5.7.21-el7-x86_64.tar.gz

mv mysql-5.7.21-el7 /opt/mysql

mkdir -p /opt/mysql/data /opt/mysql/log

/opt/mysql/bin/mysql_install_db --user=mysql --basedir=/opt/mysql/ --datadir=/opt/mysql/data/

/opt/mysql/bin/mysqld --user=mysql --basedir=/opt/mysql/ --datadir=/opt/mysql/data/

 

注:/var/lib/mysql这个目录是否存在,如果不存在自行创建,并授权

mkdir -p /var/lib/mysql

chown -R mysql.mysql /var/lib/mysql

/opt/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/opt/mysql/data

 

vi /opt/mysql/support-files/mysql.server

 

修改basedir、datadir以及脚本中的所有目录

 

ln -s /opt/mysql/bin/mysql /usr/bin

vi /etc/my.cnf

#[mysqld]
#datadir=/var/lib/mysql
#socket=/var/lib/mysql/mysql.sock
## Disabling symbolic-links is recommended to prevent assorted security risks
#symbolic-links=0
## Settings user and group are ignored when systemd is used.
## If you need to run mysqld under a different user or group,
## customize your systemd unit file for mariadb according to the
## instructions in http://fedoraproject.org/wiki/Systemd

#[mysqld_safe]
#log-error=/var/log/mariadb/mariadb.log
#pid-file=/var/run/mariadb/mariadb.pid

##
## include all files from the config directory
##
#!includedir /etc/my.cnf.d


##########################################################################



[mysqld]
basedir=/opt/mysql
datadir=/opt/mysql/data
port		= 3306
socket		= /var/lib/mysql/mysql.sock
character-set-server = utf8 
#skip-grant-tables

skip-name-resolve
#skip-external-locking
lower_case_table_names=1
log_bin_trust_function_creators =1
back_log = 512
#skip-networking
max_connections = 500
max_connect_errors = 100
table_open_cache = 4096
#external-locking
max_allowed_packet = 16M



max_heap_table_size = 64M
read_buffer_size = 8M
read_rnd_buffer_size = 16M
sort_buffer_size = 8M
join_buffer_size = 8M

thread_cache_size = 64
#thread_concurrency = 8
thread_stack = 192K

query_cache_size = 64M
query_cache_limit = 2M

ft_min_word_len = 4

#memlock

default-storage-engine = INNODB
transaction_isolation = REPEATABLE-READ

tmp_table_size = 64M


binlog_cache_size = 1M
log-bin=/opt/mysql/log/mysql-bin
binlog_format=mixed

slow_query_log
slow_query_log_file=/opt/mysql/log/mysql_solw.log
long_query_time = 2
log-error=/opt/mysql/log/mysql_error.log

# ***  Replication related settings 
server-id = 1

#*** MyISAM Specific options
key_buffer_size = 32M
bulk_insert_buffer_size = 64M
myisam_sort_buffer_size = 128M
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1

# *** INNODB Specific options ***
#skip-innodb
#innodb_additional_mem_pool_size = 16M
innodb_buffer_pool_size = 3G

innodb_data_file_path = ibdata1:10M:autoextend
#innodb_data_home_dir = <directory>
innodb_write_io_threads = 8
innodb_read_io_threads = 8
#innodb_force_recovery=1
innodb_thread_concurrency = 16
innodb_flush_log_at_trx_commit = 2
#innodb_fast_shutdown
innodb_log_buffer_size = 8M
innodb_log_file_size = 256M
innodb_log_files_in_group = 3
#innodb_log_group_home_dir
innodb_max_dirty_pages_pct = 90
#innodb_flush_method=O_DSYNC
innodb_lock_wait_timeout = 120


[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
#safe-updates
[myisamchk]
key_buffer_size = 512M
sort_buffer_size = 512M
read_buffer = 8M
write_buffer = 8M
[mysqlhotcopy]
interactive-timeout
[mysqld_safe]
open-files-limit = 8192

cp /opt/mysql/support-files/mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld

chkconfig -add mysqld

chkconfig --level 2345 mysqld on

 

vi /etc/my.cnf

[mysqld]
skip-grant-tables

systemctl restart mysql.service

注:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

 

mysql -u root -p (一路直接回车)

 

update mysql.user set authentication_string=password('sqltuning') where user='root';
flush privileges;

systemctl restart mysql.service

 

 

mysql -uroot -p

sqltuning

setup password = password('sqltuning');

flush privileges;

 

配置mysql

 

?????????????????

 

 

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
附件: 数据库审计系统需求说明 序号 指标项 具体要求 1 硬件指标 标准机架式设备,不少于 6个1000M电口,不少于 2个SFP光口(带SFP模块), 具备独立的管理口和 HA 口;可用磁盘空间不小于 2T;吞吐能力》2000M峰值处 理能力》18000条/秒,根据任意sql条件查询性能》2000万条/秒;日志存储量 > 6亿条;双冗余电源。 2 工作模式 旁路镜像模式部署,不影响数据库性能和网络架构;支持 IPV6环境部署和IPV6 环境数据库审计;支持分布式部署,管理中心可实现统一配置、统一报表、 统一查询。 管理中心和探测器都可存储审计数据,实现大数据环境下磁盘空间的有效利用和 扩展;管理中心和探测器直接的数据传输速率、时间、端口都可自定义。 3 协议支持 支持主流数据库: Oracle、SQLServer、Mysql、DB2 infomix、Sybase、CACH、 达梦、人大金仓、神舟 Oscar、南大通用 GBASE数据仓库teradata。 支持主流业务协议: TeInet、SMTP POP3 DCOM 4 审计内容 审计日志包括账号、 SQL语句、表、字段、存储过程、客户端工具、 IP、MAC实 例名、主机名等条件。 支持双向审计,特别是返回字段和结果、执行状态、返回行数、执行时长等内容, 并能够根据返回结果设置审计策略,要求在不连接被审计数据库情况下完成。 支持HTTP请求审计,提取URL POST/GETf直、cookie、操作系统类型、浏览器 类型、原始客户端IP、MAC地址、提交参数等。 可与堡垒主机进行联动,实现用户信息的定位。 5 智能发现 自动识别流量中存在的数据库,也可通过扫描发现网络中的数据库。 支持定期自动扫描数据库漏洞和不安全配置,提供漏洞扫描报告。 6 运维审计 支持tel net、ftp、SSH协议及其他私有协议的旁路会话审计;会话审计日志应含 源IP、目的IP、会话起始时间、会话结束时间、连接时长、会话总流量等维度。 支持数据库协议解析成会话形式,并支持一键关联到具体的 SQL操作会话。 支持根据目的IP、目的端口、源IP及时间范围对会话进行检索。 7 模型分析 可智能学习数据库的访问行为建立模型。 可通过行为轨迹图方式展示数据库访问行为。 可基于账号、IP地址、访问权限、客户端工具等维度对行为模型做钻取分析、变 更分析,对学习的安全基线以外的行为自动智能的进行告警。 可以自动对比不冋时期的行为模型,以区分其审计日志数趋势、用户、 IP地址、 工具、访问权限的差异情况。 8 规则分析 支持账号、IP地址、MAC地址、操作类型、返回行数、执行时 、表、字段、主 数据库审计系统需求说明全文共2页,当前为第1页。 数据库审计系统需求说明全文共2页,当前为第1页。 机名、操作系统名、关联表数,实现对敏感信息的精细监控。 支持基于返回结果集大小、返回内容、具体报文内容的细粒度审计规则。 内置高危SQL查询和注入、远程命令执行、跨站脚本攻击、 FTP和telnet高危指 令等审计规则不少于 300种。 规则可支持导入、导出、优先级调整、分组、批量加载等。 9 白名单 支持用户名、操作类型、IP地址、客户端工具、系统用户名、主机名、 MAC地址、 SQL语句等条件设置白名单,条件不少于 10个。 10 告警与报表 支持短信、邮件、syslog、snmp ftp等告警方式,支持冋时发送多人、 聚合发送、 单条发送、重发、发生统计等高级告警功能。 可以根据单个库、数据库组生成报表,包括支持严格按照塞班斯( SOX法案、等 级保护标准要求生成多维度综合报告。 支持按照数据库访问行为生成报表,智能识别帐号的增删、权限变更、密码修改、 特权操作等行为。 支持按照时间曲线统计流量、在线用户数、并发会话、 DDL操作数、DML操作数、 执行量取多的SQL语句等报表。 11 日志数据管 理 审计数据保留策略应至少满足天数和百分比两个控制参数,且支持 web界面可配 置,且恢复数据不影响正常的审计功能。 支持自动备份审计日志,备份完后通过 FTP方式外送到外部设备;备份文件需要 进行加密,且必须导入设备才能够进行恢复查看。 12 系统排错 系统内置故障排错系统,可以支持一键排错对服务异常、许可证异常、流量异常 等大部分常见故障的检测,并可提供快速的解决办法。 支持流量分析功能,包括抓包、包内容查看、自动探测 sql语句等。 13 资质要求 具备公安部颁发的《计算机信息系统安全专用产品销售许可证》。 14 售后服务 原厂五年售后服务,包括安装调试、硬件质保、软件升级、特征库升级等。 数据库审计系统需求说明全文共2页,当前为第2页。 数据库审计系统需求说明全文共2页,当前为第2页。 数据库审计系统需求说明
管理K8S平台应用和Oracle数据库搭建的环境可以采取以下措施: 1. 应用部署和管理:使用Kubernetes来管理应用程序的部署和运行。您可以创建适当的Pod、Deployment、Service等资源对象来部署和管理应用程序的不同组件。通过Kubernetes的命令行工具或者图形界面,您可以轻松地创建、更新和删除这些资源对象,以实现应用程序的管理和维护。 2. 数据库备份和恢复:对于Oracle数据库,您可以使用Oracle提供的备份和恢复工具来管理测试环境中的数据库。您可以定期执行数据库备份,并将备份数据存储在安全的位置,以便在需要时进行恢复。同时,您还可以使用Oracle的恢复工具来进行数据库的恢复操作,以确保数据的完整性和可恢复性。 3. 监控和日志管理:使用适当的监控工具来监视测试环境中的应用程序和数据库。Kubernetes提供了一些内建的监控功能,您可以使用这些功能来监视应用程序的资源使用情况、运行状态等。对于Oracle数据库,您可以使用Oracle提供的监控工具来监视数据库的性能指标、会话活动等。同时,确保将应用程序和数据库的日志记录到适当的位置,以便进行故障排除和问题分析。 4. 安全管理:对于测试环境中的应用程序和数据库,确保采取适当的安全措施来保护数据系统的安全性。这包括限制访问权限、加密敏感数据、使用安全的网络连接等。对于Kubernetes集群和Oracle数据库,确保采用最新的安全补丁和更新,并定期进行安全审计和漏洞扫描。 综上所述,通过合理配置和管理Kubernetes平台上的应用程序和Oracle数据库,您可以有效管理测试环境,并确保应用程序和数据库的正常运行和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值