设置listener 的安全机制

设置listener 的安全机制

设置listener password后,在LSNRCTL中执行stop或者save_config之前,需要使用set password指定密码。

1.设置密码
进入LSNRCTL:
LSNRCTL> change_password
Old password:
New password:
Reenter new password:
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=CCBU-3038)(PORT=1521)))
LISTENER的口令已更改
命令执行成功
LSNRCTL>
LSNRCTL> set password
Password:
命令执行成功
LSNRCTL> save_config
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=CCBU-3038)(PORT=1521)))
保存的LISTENER配置参数。
监听器参数文件          D:\oracle\ora92\network\admin\listener.ora
旧的参数文件D:\oracle\ora92\network\admin\listener.bak
命令执行成功
LSNRCTL>
LSNRCTL>exit


查看listener.ora文件中多出一段密码的信息:
#----ADDED BY TNSLSNR 10-1月 -2005 17:44:28---
PASSWORDS_LISTENER = 9954B30C9A1B9049
#---------------------------------------------


2.测试密码
重新进入LSNRCTL:

LSNRCTL> stop
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=CCBU-3038)(PORT=1521)))
TNS-01169: 监听器尚未识别口令
LSNRCTL> save_config
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=CCBU-3038)(PORT=1521)))
TNS-01169: 监听器尚未识别口令
LSNRCTL>
LSNRCTL>
LSNRCTL> set password
Password:
命令执行成功
LSNRCTL> stop
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=CCBU-3038)(PORT=1521)))
命令执行成功
LSNRCTL>

3.设置ADMIN_RESTRICTIONS_LISTENER
在listener.ora最后添加
ADMIN_RESTRICTIONS_LISTENER = on

这样可以阻止在listener运行期间类似于set命令的修改,除非stop listener并且将该参数置为off的时候,才可以。
例如:
ADMIN_RESTRICTIONS_LISTENER = on

LSNRCTL> set log_file
Parameter Value: d:\a.log
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=CCBU-3038)(PORT=1521)))
TNS-12508: TNS:监听器无法分解给定的 COMMAND
LSNRCTL> stop
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=CCBU-3038)(PORT=1521)))
命令执行成功

修改ADMIN_RESTRICTIONS_LISTENER = off
LSNRCTL> start
启动tnslsnr:请稍候...
......
命令执行成功
LSNRCTL> set log_file
Parameter Value: d:\a.log
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=CCBU-3038)(PORT=1521)))
LISTENER 参数 \log_file\ 被设为 d:\a.log
命令执行成功
LSNRCTL>
原文地址:https://www.cnblogs.com/xiaotaoliang/p/105875.html