lsnrctl在debian上的安全设置
1. 限制访问权限
通过操作系统层面和监听器配置双重限制访问。操作系统层使用防火墙(如ufw
或iptables
)仅允许可信IP访问监听端口(默认1521),例如sudo ufw allow from 192.168.1.0/24 to any port 1521
;监听器层在listener.ora
中通过HOST
参数指定监听的IP地址(如HOST = 192.168.1.100
),避免监听所有接口。
2. 强化密码安全
为监听器设置强密码并定期更换。使用lsnrctl set password
命令设置密码(如lsnrctl set password StrongPass123
);在listener.ora
中配置SECURITY_LISTENER
参数要求客户端加密连接,增强密码传输安全性。
3. 启用SSL/TLS加密
配置监听器使用SSL/TLS加密通信,保护数据传输。在listener.ora
中添加加密参数:SECURITY_LISTENER = (ENCRYPTION_CLIENT = REQUIRED)(ENCRYPTION_TYPES_CLIENT = (AES256, AES192, AES128))(SSL_VERSION = 1.2)(SSL_CIPHER_SUITES = (TLS_AES_256_GCM_SHA384, TLS_AES_128_GCM_SHA256))
;生成SSL证书(如openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out cert.pem
)并配置listener.ora
添加TCPS监听端口(如ADDRESS = (PROTOCOL = TCPS)(HOST = your_host)(PORT = 1522)
)。
4. 遵循最小权限原则
确保监听器以最小权限运行。创建专用数据库用户组(如db_admin
),将授权用户加入该组;设置lsnrctl
脚本以oracle
用户身份运行(在脚本开头添加#!/bin/bash sudo -u oracle /path/to/lsnrctl "$@"
),并配置文件权限(chown -R oracle:db_admin /path/to/listener/files
,chmod -R 750 /path/to/listener/files
)。
5. 审计与日志监控
启用详细日志记录并定期审查。在listener.ora
中设置LOG_LEVEL_LISTENER = 16
(详细日志)和TRACE_FILE_LISTENER = listener_trace.log
(跟踪文件);定期检查$ORACLE_HOME/network/log/listener.log
日志文件,监控异常访问或攻击行为。
6. 定期更新补丁
保持Oracle数据库和监听器软件最新,修复已知安全漏洞。使用apt
包管理器更新系统及Oracle组件(如sudo apt update &
&
sudo apt upgrade oracle-database-listener
),及时应用安全补丁。
7. 备份配置文件
定期备份listener.ora
、tnsnames.ora
等关键配置文件,防止配置丢失或损坏。可使用tar
命令备份至安全目录(如tar -czvf listener_backup.tar.gz $ORACLE_HOME/network/admin/*.ora
)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: lsnrctl在debian上的安全设置
本文地址: https://pptw.com/jishu/725340.html