centos sqlplus安全设置方法
导读:CentOS 上使用 SQL*Plus 的安全设置要点 一 登录与凭据防护 避免在命令行中直接书写密码,防止被 ps 与 history 泄露;推荐使用 /nolog 登录后再连接认证。示例:先执行 sqlplus /nolog,进入后使...
CentOS 上使用 SQL*Plus 的安全设置要点
一 登录与凭据防护
- 避免在命令行中直接书写密码,防止被 ps 与 history 泄露;推荐使用 /nolog 登录后再连接认证。示例:先执行
sqlplus /nolog,进入后使用conn username/password或conn / as sysdba完成认证。这样在进程列表与历史记录中均不会暴露口令明文。 - 脚本自动化场景可采用以下更安全的做法:交互式读取口令(
read -s隐藏输入);或将口令存入受限权限文件(如仅属主可读写的 600 权限文件)再读取;同时建议为 sqlplus 设置静默输出(-S)并关闭回显(set verify off)以减少日志泄露。示例:- 交互式:
read -s pwd; sqlplus -S /nolog < < EOF conn scott/\$pwd quit EOF - 文件方式:
chmod 600 db.pwd; pwd=$(cat db.pwd); sqlplus -S scott/\$pwd ...
上述方法均能有效降低口令在系统层面的暴露面。
- 交互式:
二 操作系统层账户与密码策略
- 为运行 sqlplus 的 操作系统账户(如 oracle)设置强口令策略与锁定策略,防止本地提权后滥用数据库账户。
- 建议策略示例:密码最长使用 90 天、修改后 7 天内不可再改、到期前 10 天 提醒;复杂度至少 12 位,包含大小写字母、数字与特殊字符,且不允许复用最近 5 次旧口令;连续失败 5 次 锁定 300 秒。
- 实施要点:
- 编辑 /etc/login.defs:设置
PASS_MAX_DAYS 90、PASS_MIN_DAYS 7、PASS_WARN_AGE 10。 - 配置 PAM 复杂度:在 /etc/pam.d/system-auth 与 /etc/pam.d/password-auth 的
pam_pwquality.so行加入minlen=12 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 remember=5。 - 配置失败锁定:在相应 PAM 文件添加
auth required pam_tally2.so deny=5 unlock_time=300 onerr=fail(按需作用于 sshd 或 login)。 - 注意:上述为操作系统账户策略,不等同于数据库内部口令策略,两者应分别配置。
- 编辑 /etc/login.defs:设置
三 数据库层账户与权限最小化
- 遵循最小权限原则:仅为应用账户授予必要权限,避免使用 DBA 角色进行日常连接;按需创建角色并设置为默认角色,减少高权限会话暴露面。示例:
- 创建用户:
CREATE USER app_user IDENTIFIED BY < strong_password> ; - 授予必要权限:
GRANT CREATE SESSION, CREATE TABLE TO app_user;(仅示例,按业务细化) - 设置默认角色:
ALTER USER app_user DEFAULT ROLE < role_list> ;
- 创建用户:
- 禁止在公网直连数据库,优先通过 SSH 隧道、TNS 加密监听、或在 VPC/专线 内访问;如必须开放监听端口,仅允许受控网段访问,并配合数据库防火墙/ACL 策略。
四 网络安全与监听加固
- 仅开放必要端口(Oracle 默认监听端口 1521/TCP),并在 firewalld 中做精确放行与持久化:
- 开放端口:
firewall-cmd --zone=public --add-port=1521/tcp --permanent - 重载规则:
firewall-cmd --reload
- 开放端口:
- 建议结合企业网络 ACL、主机防火墙与安全组,限制来源 IP 与端口访问,避免横向移动与暴力探测。
五 审计与监控
- 启用并定期检查数据库审计(如登录/关键 DML/DDL 审计),对异常登录、权限变更与数据导出行为进行告警与追溯。
- 在操作系统侧收集并集中审计 sqlplus 的登录与执行日志(命令历史、syslog、auditd),并与数据库审计关联分析,提升可观测性与响应速度。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos sqlplus安全设置方法
本文地址: https://pptw.com/jishu/756851.html
