第一步:下载jdk-8u131-linux-x64.tar.gz文件
第二步:新建/usr/java文件夹,将jdk-8u131-linux-x64.tar.gz放到该文件夹中并解压,将工作目录切换到/usr/java目录下
第三步:通过以上步骤,jdk1.8就已经全部安装完成了
第四步:配置环境变量
①、使用vim /etc/profile编辑profile文件
②、在/etc/profile底部加入如下内容:
JAVA_HOME=/usr/java/jdk1.8.0_131
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME CLASSPATH
unzip DM7数据库安全监视软件v2.1-release-20230426.zip
1、使用DM7 manager 连接目标DM7, 并用管理员权限用户登陆;
2、如果没有SYSJOB模式,请点击“代理”->“创建代理环境”;
备注:在早期DM7版本中,没有SYSJOB.SYSJOBHISTORIES2系统表,须关闭【数据计划任务执行失败】这一监控指标,初始化时,不创建视图VW_KAFKA_JOB_FAILURE
3、运行“预处理脚本.sql”脚本,只需成功运行一次即可;
下述相关命令见《程序运行命令.txt》;
(1)cd到DMKafkaIniCreater根目录;
(2)计算DM7KafkaInspector.jar校验编码:
将DM7KafkaInspector目录中的DM7KafkaInspector.jar包复制到DMKafkaIniCreater目录(若已存在可跳过),执行“计算DM7KafkaInspector.jar校验编码”对应的命令,计算结果见“DM7KafkaInspector-jar-md5.txt”;
(3)修改配置文件明文,并生成配置文件密文:
a)打开init_conf_dm7.txt;
b)修改文件中的配置信息,其中CHECK_CODE项设为上述计算所得的编码;
c)执行“加密配置文件”对应的命令,生成init_conf_dm7.key文件;
备注:
a)配置目录中的必需文件为:lib、privateKey.key、publicKey.key、init_conf_dm7.txt、DM7KafkaInspector.jar、DMKafkaIniCreater.jar;
b) privateKey.key文件是程序保密措施的关键,不可外泄,非涉密人员不可接触。
(1)cd到DM7KafkaIniCreater根目录;
(2)将上述生成的init_conf_dm7.key文件复制到本路径中;
(3)运行“执行信息监控”对应的命令,程序开始运行;
备注:
a)init_conf_dm7.txt中的配置信息发生变化时,须重新生成init_conf_dm7.key文件并进行替换,监控程序须重启方可生效;
b)运行目录中的必需文件为:lib、DM7KafkaInspector.jar、init_conf_dm7.key、launch.key、publicKey.key;
init_conf_dm7.txt
#数据库状态监控信息发送目的端
KAFKA_TOPIC = pf_database #kafka消息主题topic配置(请酌情设置)
KAFKA_BROKER_LIST = x.x.x.x:x #kafka集群代理IP端口号列表(请酌情设置 格式为ip:port,ip:port)
#数据库配置项核查交互配置
#下述两项对应发送指令的IP、端口、topic
KAFKA_TOPIC_CONSUMMER = pf_database #kafka消息主题topic配置(请酌情设置)
KAFKA_BROKER_LIST_CONSUMER = x.x.x.x:x #kafka集群代理IP端口号列表(请酌情设置 格式为ip:port,ip:port)
#下述两项对应接收核查结果的IP、端口、topic
KAFKA_TOPIC_PRODUCER = pf_database #kafka消息主题topic配置(请酌情设置)
KAFKA_BROKER_LIST_PRODUCER = pf_database #kafka集群代理IP端口号列表(请酌情设置 格式为ip:port,ip:port)
init_conf_dm6.txt
##全部配置项目格式为 key=value,“#”号后面内容为注释
##安全校验
CHECK_FILE = ./DM6KafkaInspector.jar #本格式为Windows环境中的格式,在Linux环境中应写为./DM6KafkaInspector.jar
CHECK_CODE = xxxxxxxxxxxxxxxxxxx #DM6KafkaInspector.jar的检验编码(md5值)
##运行模式
RUN_MODE = 多线程 #监测程序运行模式(单线程、多线程)
##起始版本
MONITORING_BANNER = 2017.05.26
##监测内容
MONITORING_CONTENT_CPUINSPECTION = 是 #开关(是、否)(CPU使用率)
MONITORING_CONTENT_MEMORYINSPECTION = 是 #开关(是、否)(内存使用率)
MONITORING_CONTENT_DATAFILE = 是 #开关(是、否)(数据文件)
MONITORING_CONTENT_ARCHIVEFILE = 是 #开关(是、否)(归档文件)
MONITORING_CONTENT_BACKUPFILE = 是 #开关(是、否)(备份文件)
MONITORING_CONTENT_TABLESPACEINSPECTION = 是 #开关(是、否)(数据库表空间使用情况)
MONITORING_CONTENT_CONNECTIONSTATUSINSPECTION = 是 #开关(是、否)(数据库连接使用情况)
MONITORING_CONTENT_DATABASESTATUSINSPECTION = 是 #开关(是、否)(数据库状态)
MONITORING_CONTENT_DATABASEACTIONINSPECTION = 是 #开关(是、否)(数据库操作信息)
MONITORING_CONTENT_USERPRIORITYACTIONINSPECTION = 是 #开关(是、否)(数据库用户信息变更信息)
MONITORING_CONTENT_USERLOGINHISTORYINSPECTION = 是 #开关(是、否)(数据库用户登录信息)
MONITORING_CONTENT_UNAUTHORIZEDIPACCESSINSPECTION = 否 #开关(是、否)(非授权IP访问数据库)
MONITORING_CONTENT_TABLENUMBERINSPECTION = 否 #开关(是、否)(数据库总表数量)
MONITORING_CONTENT_UNAUTHORIZEDUSERACCESSINSPECTION = 否 #开关(是、否)(业务黑名单操作)
MONITORING_CONTENT_DROPACTION = 是 #开关(是、否)(DROP操作)
MONITORING_CONTENT_SQLCC = 否 #开关(是、否)(疑似CC攻击)
MONITORING_CONTENT_USERLOGINFAILUREINSPECTION = 是 #开关(是、否)(数据库用户连续登录失败)
MONITORING_CONTENT_JOBFAILUREINSPECTION = 是 #开关(是、否)(数据计划任务执行失败)
MONITORING_CONTENT_DIRTYPAGEINSPECTION = 是 #开关(是、否)(数据库脏页面占比)
MONITORING_CONTENT_CLEARDDLTABLEINSPECTION = 是 #开关(是、否)(清空DDL表)
MONITORING_CONTENT_DBRESTARTDETECTION = 是 #开关(是、否)(数据库重启)
DATABASE_CONFIGURATION_CHECK = 否 #开关(是、否)(数据库配置项核查)
##目标数据库基本配置项目
SERVER_IP = x.x.x.x #数据库IP地址(请酌情设置)
SERVER_PORT = 12345 #数据库端口号(请酌情设置)
SOCKET_PORT = 12344
LOGIN_NAME = SYSDBA #数据库登陆用户名(请酌情设置)
LOGIN_PASSWORD = xxxx #数据库登陆密码(请酌情设置)
##kafka集群连接配置
#数据库状态监控信息发送目的端
KAFKA_TOPIC = pf_database #kafka消息主题topic配置(请酌情设置)
KAFKA_BROKER_LIST = x.x.x.x:x #kafka集群代理IP端口号列表(请酌情设置 格式为ip:port,ip:port)
#数据库配置项核查交互配置
#下述两项对应发送指令的IP、端口、topic
KAFKA_TOPIC_CONSUMMER = pf_database #kafka消息主题topic配置(请酌情设置)
KAFKA_BROKER_LIST_CONSUMER = x.x.x.x:x #kafka集群代理IP端口号列表(请酌情设置 格式为ip:port,ip:port)
#下述两项对应接收核查结果的IP、端口、topic
KAFKA_TOPIC_PRODUCER = pf_database #kafka消息主题topic配置(请酌情设置)
KAFKA_BROKER_LIST_PRODUCER = pf_database #kafka集群代理IP端口号列表(请酌情设置 格式为ip:port,ip:port)
##kafka消息本地打印配置
SHOULD_PRINT_KAFKA_MESSAGE_LOCALLY = yes #是否在本地打印发送的kafka消息(调试时使用,请酌情设置,值为yes或no)
SHOULD_PRINT_CHECK_COMMAND_LOCALLY = yes #是否在本地打印收到的核查指令(调试时使用,请酌情设置,值为yes或no)
SHOULD_PRINT_CHECK_RESPOND_LOCALLY = yes #是否在本地打印发送的核查结果(调试时使用,请酌情设置,值为yes或no)
##运行信息配置
#1.数据库CPU使用率监控 运行信息配置
CPU_PERIOD = 1分钟 #数据库CPU使用率监控上报周期(单位:小时、分钟)
CPU_THRESHOLD = 1% #数据库CPU使用率监控上报阈值(单位: %)
#2.数据库内存使用率监控 运行信息配置
MEMORY_PERIOD = 1分钟 #数据库内存使用率监控上报周期(单位:小时、分钟)
MEMORY_THRESHOLD = 1% #数据库内存使用率监控上报阈值(单位: %)
#3.数据库磁盘信息-数据文件监控 运行信息配置
DATA_FILE_PERIOD = 1小时 #数据文件监控上报周期(单位:小时、分钟)
DATA_FILE_THRESHOLD = 1T #数据文件监控上报阈值(单位: T、G)
#4.数据库磁盘信息-归档文件监控 运行信息配置
ARCHIVE_FILE_PERIOD = 1分钟 #归档文件监控上报周期(单位:小时、分钟)
ARCHIVE_FILE_THRESHOLD = 50G #归档文件监控上报阈值(单位: T、G)
#5.数据库磁盘信息-备份文件监控 运行信息配置
BACKUP_FILE_PERIOD = 1分钟 #备份文件监控上报周期(单位:小时、分钟)
BACKUP_FILE_THRESHOLD = 20G #备份文件监控上报阈值(单位: T、G)
#6.数据库表空间使用情况监控 运行信息配置
TABLE_SPACE_PERIOD = 1分钟 #数据库表空间使用情况监控上报周期(单位:小时、分钟)
TABLE_SPACE_THRESHOLD = 200G #数据库表空间使用情况监控上报阈值(单位: T、G)
#7.数据库连接使用情况监控 运行信息配置
CONNECTION_STATUS_PERIOD = 1分钟 #数据库连接使用情况监控上报周期(单位:小时、分钟)
CONNECTION_STATUS_LOGIN_NAME_NUMBER = 20 #数据库连接使用情况监控上报连接最多的用户名个数
#8.数据库运行时长监控 运行信息配置
DATA_BASE_RUN_TIME_PERIOD = 20分钟 #数据库运行时长监控上报周期(单位:小时、分钟)
#9.数据库状态监控 运行信息配置
DATA_BASE_STATUS_PERIOD = 1分钟 #数据库状态监控上报周期(单位:小时、分钟)
#10.数据库操作信息监控
DATA_BASE_ACTION_WITH_NAME = 0 #是否发送登录名(0:不发送;1:发送)
#11.数据库用户信息变更信息监控
#12A.登录历史信息监控 运行信息配置
USER_LOGIN_HISTORY_TIME_PERIOD = 1分钟 #用户登录信息监控上报周期(单位:分钟、秒)
USER_LOGIN_HISTORY_TIME_SPAN = 1分钟 #用户 信息监控上报追溯期(单位:分钟、秒)
#12.数据库非法访问-非授权IP访问数据库 运行信息配置
UNAUTHORIZED_IP_ACCESS_PERIOD = 1分钟 #非授权IP访问数据库监控上报周期(单位:小时、分钟)
WHITE_IP_NUMBER = 1个 #IP白名单个数
WHITE_IP_1 = 127.0.0.1
#13.数据库总表数量 运行信息配置
TABLE_NUMBER_PERIOD = 1分钟 #数据库总表数量监控上报周期(单位:小时、分钟)
TABLE_NUMBER_THRESHOLD = 100 #数据库总表数量监控上报阈值(单位: 个)
#14.数据库非法用户-非授权用户访问数据库 运行信息配置
UNAUTHORIZED_USER_ACCESS_PERIOD = 1分钟 #非授权用户访问数据库监控上报周期(单位:小时、分钟)
WHITE_USER_NUMBER = 1个 #USER白名单个数
WHITE_USER_1 = SYSDBA
#15.数据库非法访问-无效SQL 运行信息配置
#16.危险操作-DROP DDL操作信息监控 运行信息配置
DROP_ACTION_PERIOD = 1分钟 #DROP DDL操作信息监控上报周期(单位:小时、分钟)
#17.危险操作-DELETE DML操作信息监控 运行信息配置
#18.危险操作-疑似CC攻击监控 运行信息配置
#上报周期:数据库CPU使用率监控或数据库内存使用率监控上报时监控上报
SQL_CC_CPU_THRESHOLD = 80% #疑似CC攻击监控上报-CPU使用率阈值(单位: %)
SQL_CC_MEMORY_THRESHOLD = 80% #疑似CC攻击监控上报-MEMORY使用率阈值(单位: %)
##安全信息配置
#1.数据库用户连续登录失败监控 安全信息配置
USER_LOGIN_TIME_PERIOD = 30秒 #连续登录失败监控上报周期(单位:分钟、秒)
USER_LOGIN_TIME_SPAN = 15分钟 #在该配置的一段时间内用户连续登陆失败将产生告警(单位:小时、分钟)
USER_LOGIN_FAILURE_NUMBER = 5 #用户连续登陆失败达到配置次数将产生告警
#2.sql语句长时间未提交 安全信息配置
SQL_SUBMIT_TIME_SPAN = 1分钟 #经过该配置的一段时间后尚未提交的SQL将被告警上报(单位:小时、分钟)
#3.数据计划任务执行失败 安全信息配置(无配置项)
#4.sql语句执行时间异常 安全信息配置
SQL_EXCUTE_TIME_SPAN = 20分钟 #经过该配置的一段时间后尚未执行完毕的SQL将被告警上报(单位:小时、分钟)
#5.数据库脏页面占比情况监控 安全信息配置
DIRTY_PAGE_PERIOD = 1分钟 #数据库脏页面占比情况监控上报周期(单位:小时、分钟)
DIRTY_PAGE_THRESHOLD = 90% #数据库表空间使用情况监控上报阈值(单位:%)
##数据库配置信息核查
DB_CONF_CHECK_PERIOD = 5秒 #读取核查指令周期(单位:分钟、秒)
##日志管理参数配置
LOG_RETAIN_SPAN = 30 #日志保留时长,过期日志自动删除(单位:天)
LOG_DIR_MAX_SIZE = 1 # 日志文件夹占用磁盘空间大小上限,超过此上限,停止更新日志(单位:G)
文章
阅读量
获赞