GaussDB数据库配置安全SSH协议

GaussDB数据库配置安全SSH协议,第1张

1. *** 作系统特殊配置

1.1配置安全SSH协议

配置项名称 配置安全SSH协议 检查方法 grep -P '^[^#]*Protocols*' /etc/ssh/sshd_config *** 作步骤 以root身份在/etc/ssh/sshd_config文件中配置参数Protocol,设置之后需要重启SSH服务生效。
su - root
vim /etc/ssh/sshd_config
service sshd restart #重启SSH服务 *** 作风险等级

1.2  配置安全 SSH 服务允许组

配置项名称 配置安全SSH服务允许组 检查方法 grep -P '^[^#]*AllowGroupss*' /etc/ssh/sshd_config *** 作步骤 以root身份在/etc/ssh/sshd_config文件中配置参数AllowGroups,设置完成之后需要重启SSH服务生效。
su - root
vim /etc/ssh/sshd_config
service sshd restart #重启SSH服务 *** 作风险等级

1.3配置安全SSH协议服务root 用户允许登录方式

配置项名称 配置安全SSH协议服务root 用户允许登录方式 检查方法 grep -P '^[^#]*Protocols*' /etc/ssh/sshd_config *** 作步骤 以root身份在/etc/ssh/sshd_config文件中配置参数PermitRootLogin,设置完成之后需要重启SSH服务。
su - root
vim /etc/ssh/sshd_config
service sshd restart #重启SSH服务 *** 作风险等级

1.4配置安全SSH协议服务监听IP地址

配置项名称 配置安全SSH协议服务监听IP地址 检查方法 grep -P '^[^#]*PermitRootLogins*' /etc/ssh/sshd_config *** 作步骤 以root身份在/etc/ssh/sshd_config文件中配置参数PermitRootLogin,设置完成之后需要重启SSH服务。
su - root
vim /etc/ssh/sshd_config
service sshd restart #重启SSH服务 *** 作风险等级

1.5配置安全SSH协议服务密码认证方式

配置项名称 配置安全SSH协议服务密码认证方式 检查方法 grep -P '^[^#]*PasswordAuthenTIcaTIons*' /etc/ssh/sshd_config *** 作步骤 以root身份在/etc/ssh/sshd_config文件中配置参数PasswordAuthenTIcaTIon,设置之后需要重启SSH服务生效。
su - root
vim /etc/ssh/sshd_config
service sshd restart #重启SSH服务 *** 作风险等级

1.6配置安全SSH服务互信IP访问权限

配置项名称 配置安全SSH服务互信IP访问权限 检查方法 cat ~/.ssh/authorized_keys *** 作步骤 以用户账户身份在~/.ssh/authorized_keys文件中配置from字段。
vim ~/.ssh/authorized_keys 
配置内容见如下示例(在建立互信后检查该文件中,是否配置有from字段,如没有,请添加需要使用互信的主机IP和主机名称):
from="10.180.40.100,10.180.40.101,10.180.40.102,plat1,plat2,plat3"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEArMU/cd5QDIkA/
trmLpfj1W1zBk2pW8zyDjMEvc7JiAdtOlsOIFyRpdmdMv39WuQfZ6G/
+zbAc9JJwYLP8/3aYgkNSJ10+c4VcyQJ8jBsLJyKLW/Pt2t3IlY+zG35UUyhyDo9P8Bt/uZ0d1XbgRrWuVrO8idWIFncallJYrmaTvd5b7CULKMSrFI+CMys9FLYOk5lGHVdQSQUE0uNor/k63plsyyL7+fVqG2ZDRbB77nVC+ah5PMfogBym24g1ouiuxQPIihOTt2dDPeqnnWpC0/WzhB/PjIoeHCK
+HbGFg92eWdi7CJexb7H6OiG/Ylvej2ED4yc8WqEnCSZmWQDow==xijie_trunk@plat1 *** 作风险等级

1.7修改数据库安装的omm密码

配置项名称 修改数据库安装的omm密码 检查方法 使用默认密码登录时登录失败,使用新设置密码时登录成功 *** 作步骤 以root身份修改数据库安装用户omm密码。 *** 作风险等级

2.数据库文件限制

2.1限制home、data目录权限

配置项名称 限制home、data目录权限 检查方法 find ${GAUSSHOME} -prune( ! -user ${GAUSSUSER} -o ! -group${GAUSSGROUP} -o -perm/ g=rwx,o=rwx )
find${GAUSSDATA} -prune ( ! -user${GAUSSUSER} -o ! -group ${GAUSSGROUP} -o -perm / g=rwx,o=rwx ) *** 作步骤 chmod0700 ${GAUSSHOME}
chmod 0700 ${GAUSSDATA}
环境变量{GAUSSUSER}和{GAUSSGROUP}需要配置为集群的安装用户和用户组 *** 作风险等级

2.1限制postgresql.conf、pg_hba.conf文件权限

配置项名称 限制postgresql.conf、pg_hba.conf文件权限 检查方法 find ${GAUSSDATA}/postgresql.conf ( ! -user ${GAUSSUSER} -o ! -group ${GAUSSGROUP} -o -perm / u=x,g=rwx,o=rwx )
find ${GAUSSDATA}/pg_hba.conf ( ! -user ${GAUSSUSER} -o ! -group${GAUSSGROUP} -o -perm / u=x,g=rwx,o=rwx ) *** 作步骤 chmod 0600 {GAUSSDATA}/postgresql.conf
chmod0600 {GAUSSDATA}/pg_hba.conf 
其中GAUSSDATA为CN以及DN的data目录。环境变量{GAUSSUSER}和{GAUSSGROUP}需要配置为集群的安装用户和用户组 *** 作风险等级

3.连接设置

3.1监听地址不允许包括*或 0.0.0.0

配置项名称  监听地址不允许包括*或 0.0.0.0 检查方法 SELECT name,setting FROM pg_settings WHERE name = 'listen_addresses'AND (setting = '*' OR setting = '0.0.0.0'); *** 作步骤 在postgresql.conf配置文件中修改参数listen_addresses为“localhost”,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

3.2端口使用非默认端口

配置项名称 端口使用非默认端口 检查方法 SELECT name,setting FROM pg_settings WHERE name = 'port' AND setting = '25308'; *** 作步骤 在postgresql.conf配置文件中修改服务器监听端口参数port为非25308的值,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

3.3配置数据库最大并发连接数

配置项名称 配置数据库最大并发连接数 检查方法 SELECTname,setting FROM pg_settings WHERE name = 'max_connections';  *** 作步骤 在postgresql.conf配置文件中修改参数max_connections为800,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

3.4配置系统管理员使用的连接数

配置项名称 配置系统管理员使用的连接数 检查方法 SELECTname,setting FROM pg_settings WHERE name='sysadmin_reserved_connections';    *** 作步骤 在postgresql.conf配置文件中修改参数sysadmin_reserved_connections为3,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

4.安全认证设置

4.1配置客户端认证超时时间

配置项名称 配置客户端认证超时时间 检查方法 SELECTname,setting FROM pg_settings WHERE name = 'authentication_timeout';   *** 作步骤 在postgresql.conf配置文件中修改参数authentication_timeout为1min,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

4.2配置SSL协议

配置项名称 配置SSL协议 检查方法 SELECTname,setting FROM pg_settings WHERE name='ssl'; *** 作步骤 在postgresql.conf配置文件中修改参数ssl为on,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

4.3配置SSL协议加密算法

配置项名称 配置SSL协议加密算法 检查方法 SELECTname,setting FROM pg_settings WHERE name='ssl_ciphers';   *** 作步骤 在postgresql.conf配置文件中修改参数ssl_ciphers为ALL,然后重启数据库,配置参数ssl_ciphers为ALL,GaussDB A默认会选择AES256-SHA。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

5.用户身份鉴别配置和访问控制

5.1配置密码复杂度检查

配置项名称 配置密码复杂度检查 检查方法 SELECT name,setting FROM pg_settings WHERE name='password_policy'and setting !=1; *** 作步骤 gs_guc reload-Z coordinator -D ${BIGDATA_DATA_HOME}/mppdb/data1/coordinator -c "password_policy=1" *** 作风险等级

5.2配置密码存储加密方式

配置项名称 配置密码存储加密方式 检查方法 SELECTname,setting FROM pg_settings WHERE name='password_encryption_type' and setting!=1; *** 作步骤 gs_guc reload-Z coordinator -D ${BIGDATA_DATA_HOME}/mppdb/data1/coordinator -c "password_encryption_type=1" *** 作风险等级

5.3配置密码不可重用天数

配置项名称 配置密码不可重用天数 检查方法 SELECTname,setting FROM pg_settings WHERE name='password_reuse_time';     *** 作步骤 gs_guc reload-Z coordinator -D ${BIGDATA_DATA_HOME}/mppdb/data1/coordinator -c "password_reuse_time=60" *** 作风险等级

5.4配置登录失败尝试次数

配置项名称 配置登录失败尝试次数 检查方法 SELECTname,setting FROM pg_settings WHERE name='failed_login_attempts';   *** 作步骤 gs_guc reload-Z coordinator -D ${BIGDATA_DATA_HOME}/mppdb/data1/coordinator -c "failed_login_attempts=10" *** 作风险等级

5.5配置账户锁定后自动解锁时间

配置项名称 配置账户锁定后自动解锁时间 检查方法 SELECTname,setting FROM pg_settings WHERE name='password_lock_time';    *** 作步骤 gs_guc reload-Z coordinator -D ${BIGDATA_DATA_HOME}/mppdb/data1/coordinator -c "password_lock_time=1" *** 作风险等级

6.权限控制

6.1回收 PUBLIC 角色拥有的CREATE 权限

配置项名称 回收 PUBLIC角色拥有的CREATE权限 检查方法 SELECT CAST(has_schema_privilege('public','public','CREATE') ASTEXT); *** 作步骤 REVOKE CREATE ON SCHEMA PUBLIC FROM public; *** 作风险等级

6.2所有对象权限不允许授予public

配置项名称 配所有对象权限不允许授予public 检查方法 SELECT relname,relacl FROM pg_class WHERE CAST(relacl AS TEXT) LIKE '%,=%}' OR CAST(relacl AS TEXT) LIKE '{=%}'; *** 作步骤 REVOKE ALL ON FROM public; *** 作风险等级

6.3开启三权分离配置

配置项名称 开启三权分离配置 检查方法 SELECTname,setting FROM pg_settings WHERE name = 'enableSeparationOfDuty' andsetting!='on';  *** 作步骤 在postgresql.conf配置文件中修改参数enableSeparationOfDuty为on,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

7.数据库审计

7.1开启数据库审计

配置项名称 开启数据库审计 检查方法 SELECTname,setting FROM pg_settings WHERE name = 'audit_enabled' andsetting!='on';       *** 作步骤 在postgresql.conf配置文件中修改参数audit_enabled为on,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

7.2开启登录注销审计

配置项名称 开启登录注销审计 检查方法 SELECTname,setting FROM pg_settings WHERE name = 'audit_login_logout';    *** 作步骤 gs_guc reload-Z coordinator -D ${BIGDATA_DATA_HOME}/mppdb/data1/coordinator -c "audit_login_logout =7" *** 作风险等级

7.3开启数据库启动、停止、恢复和切换审计

配置项名称 开启数据库启动、停止、恢复和切换审计 检查方法 SELECTname,setting FROM pg_settings WHERE name = 'audit_database_process';    *** 作步骤 gs_guc reload-Z coordinator -D ${BIGDATA_DATA_HOME}/mppdb/data1/coordinator -c "audit_database_process =1" *** 作风险等级

7.4开启数据库锁定和解锁审计

配置项名称 开启数据库锁定和解锁审计 检查方法 SELECTname,setting FROM pg_settings WHERE name = 'audit_user_locked';  *** 作步骤 gs_guc reload-Z coordinator -D ${BIGDATA_DATA_HOME}/mppdb/data1/coordinator -c "audit_user_locked =1" *** 作风险等级

7.5开启权限授予和回收审计

配置项名称 开启权限授予和回收审计 检查方法 SELECTname,setting FROM pg_settings WHERE name = 'audit_grant_revoke';           *** 作步骤 gs_guc reload-Z coordinator -D ${BIGDATA_DATA_HOME}/mppdb/data1/coordinator -c "audit_grant_revoke =1" *** 作风险等级

7.6对数据库对象的增加、删除、修改进行审计

配置项名称 对数据库对象的增加、删除、修改进行审计 检查方法 SELECTname,setting FROM pg_settings WHERE name = 'audit_system_object';    *** 作步骤 gs_guc reload-Z coordinator -D ${BIGDATA_DATA_HOME}/mppdb/data1/coordinator -c "audit_system_object =7" *** 作风险等级

7.7配置日志审计文件最小保存时间

配置项名称 配置日志审计文件最小保存时间 检查方法 SELECTname,setting FROM pg_settings WHERE name = 'audit_file_remain_time'; *** 作步骤 在postgresql.conf配置文件中修改参数audit_file_remain_time为180天,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

7.8开启日志收集器

配置项名称 开启日志收集器 检查方法 SELECTname,setting FROM pg_settings WHERE name='logging_collector' AND setting !='on';  *** 作步骤 在postgresql.conf配置文件中修改参数logging_collector为on,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

7.9配置日志路径

配置项名称 配置日志路径 检查方法 SELECTname,setting FROM pg_settings WHERE name='log_directory';   *** 作步骤 在postgresql.conf配置文件中修改参数log_directory为pg_log,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

7.10开启用户登录时日志记录功能

配置项名称 开启用户登录时日志记录功能 检查方法 SELECTname,setting FROM pg_settings WHERE name='log_connections' AND setting!='on';     *** 作步骤 在postgresql.conf配置文件中修改参数log_connections为on,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

7.11开启用户注销时日志记录功能

配置项名称 开启用户注销时日志记录功能 检查方法 SELECTname,setting FROM pg_settings WHERE name='log_disconnections' AND setting!='on';    *** 作步骤 在postgresql.conf配置文件中修改参数log_disconnections为on,然后重启数据库。
vim ${GAUSSDATA}/postgresql.conf
pgs_ om-t stop
pgs_ om-t start
其中GAUSSDATA为CN的data目录。 *** 作风险等级

编辑:黄飞

 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2711420.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-17
下一篇 2022-08-17

发表评论

登录后才能评论

评论列表(0条)

保存