Debian中sqlplus的安全设置有哪些
导读:Debian上使用 sqlplus 的安全设置清单 一 登录与会话安全 避免在命令行中直接拼接密码,防止被 ps 或 history 泄露;推荐先以 /nolog 进入,再执行 conn / as sysdba 或 conn user/p...
Debian上使用 sqlplus 的安全设置清单
一 登录与会话安全
- 避免在命令行中直接拼接密码,防止被 ps 或 history 泄露;推荐先以 /nolog 进入,再执行 conn / as sysdba 或 conn user/pass 完成认证。示例:sqlplus /nolog → conn scott/tiger。这样口令不会出现在进程列表或命令历史中。
- 脚本中禁止明文写口令;可采用交互式输入、受控口令文件或操作系统认证方式(如 / as sysdba 的本机认证,前提是严格限制本地安全)。
- 最小化以 SYSDBA 登录,日常运维使用普通 DBA 或应用专用账户;必要时再临时提升权限。
二 账户与权限最小化
- 遵循最小权限原则:仅为账户授予完成工作所需的最小权限,避免滥用 DBA 角色。
- 应用/报表账户至少授予 CREATE SESSION,否则会出现 “user … lacks CREATE SESSION privilege; logon denied”。示例:grant connect, resource to app_user; (按需细化到具体对象/操作)。
- 高权限操作(如 CREATE USER、DROP USER、GRANT ANY 等)单独授权给极少数管理账户,并定期审计。
三 口令与系统层安全
- 启用强口令策略:在 Debian 上通过 /etc/login.defs 设置 PASS_MAX_DAYS(如 30/90 天)以强制周期更换;对 Oracle 账户同样应制定周期更换与复杂度要求。
- 使用 PAM 强化口令复杂度与历史:安装 libpam-pwquality 或 libpam-cracklib,在 /etc/pam.d/common-password 配置如 minlen=12、ucredit=-1、lcredit=-1、dcredit=-1、ocredit=-1、difok=4、reject_username、enforce_for_root,提升口令强度与抗猜测能力。
- 限制本地暴力登录:可结合 pam_tally2 在 /etc/pam.d/common-auth 配置失败锁定策略(如 deny=5 unlock_time=300),降低密码猜测风险。
- 脚本若必须读取口令文件,设置权限为仅属主可读(如 chmod 600),避免泄露。
四 网络安全与访问控制
- 仅开放必要网络路径:在数据库服务器与客户端之间使用 TLS/SSL 加密传输,限制监听地址与端口,仅允许受控网段访问。
- 强化操作系统访问控制:将 sqlplus 与脚本归属到专用的 oracle 系统用户/组,按需设置目录与文件的 属主/属组/权限(chown/chmod),禁止其他用户读取敏感脚本与配置文件。
- 审计与监控:开启数据库审计(登录/权限变更/关键 DML/DDL),并在系统层记录 sqlplus 执行日志,配合集中审计与告警。
五 脚本与自动化安全实践
- 推荐使用 -S(静默)与 Here Document/管道方式执行,关闭回显与交互输出,减少泄露面:sqlplus -S /nolog < < ‘EOF’ … EOF。
- 交互式输入口令或使用受控的口令文件(权限 600),严禁硬编码在脚本中;必要时通过外部密钥管理系统注入。
- 避免在 cron 中明文调用含口令的命令;使用包装脚本与权限隔离,确保日志与输出文件不被非授权用户读取。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Debian中sqlplus的安全设置有哪些
本文地址: https://pptw.com/jishu/788158.html
