ITPub博客

首页 > Linux操作系统 > Linux操作系统 > lsnrctl中设置口令

lsnrctl中设置口令

原创 Linux操作系统 作者:fengjin821 时间:2009-06-14 15:38:14 0 删除 编辑
lsnrctl中设置口令,不管用

在lsnrctl中设置侦听器的口令,为本机环境,不管用
步骤如下:
在cmd中设置 Set oracle_sid=test;
进入lsnrctl
步骤1:   命令 change_password 后输入旧口令(无),新口令 pass
步骤2:  命令 save_config
步骤3:  测试stop   直接就stop了

后又步骤一,步骤二,退出lsnrctl,再进,仍然可以直接stop

 

----------------------------------------------------------------------------------------------------


设置listener password是为了防止 **远程** stop listener。当然也防止没经过本地OS验证的用户stop listener。
你可以用status 《listener_name》查看,应该会看到:
Security                  ON: Password or Local OS Authentication
这样就代表设置password成功了。你能stop仅仅是因为通过了Local OS Authentication。

你可以通过在远程另一台host上设置相同的listener到listener.ora里,然后status或者stop,就会出现这样的提示信息了:
LSNRCTL>  set current_listener LISTENER_xxx
Current Listener is LISTENER_xxx
LSNRCTL> status
Connecting to (ADDRESS=(PROTOCOL=TCP)(HOST=host1)(PORT=xxx)(SDU=8192)(TDU=8192)(QUEUESIZE=40))
TNS-01169: The listener has not recognized the password
TNS-01189: The listener could not authenticate the user
LSNRCTL> set password 111
The command completed successfully
LSNRCTL> status
Connecting to (ADDRESS=(PROTOCOL=TCP)(HOST=host1)(PORT=xxx)(SDU=8192)(TDU=8192)(QUEUESIZE=40))
STATUS of the LISTENER
------------------------
Alias                     LISTENER_xxx
Version                   TNSLSNR for Solaris: Version 10.2.0.3.0 - Production
Start Date                13-JUN-2009 23:05:08
Uptime                    0 days 0 hr. 0 min. 50 sec
Trace Level               off
Security                  ON: Password or Local OS Authentication
SNMP                      OFF
Listener Parameter File   /xxx/listener.ora
Listener Log File         /xxx/listener_xxx.log
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=host1)(PORT=xxx)))
Services Summary...
Service "xxx" has 1 instance(s).
  Instance "xxx", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully

 

----------------------------------------------------------------------------------------------------

 

In Oracle 10, the TNSListener is secure out of the box and there should not be a need to set a listener password as in older versions of the Oracle listener.

Oracle10g以后,设置Listener密码已经不是安全检查的必要条件了,因为默认在10g里面除了启动监听的用户之外,其它用户都无法停止Listener(还有另外一些lsnrctl的命令也同样被禁止了,比如trace, reload等),即使Listener没有设置密码。

在默认情况下,启动Listener或者使用lsnrctl status命令查看监听状态,可以看到:

Security                  ON: Password OR LOCAL OS Authentication
这表明Listener的安全机制使用了Password方式或者Local OS Authentication方式,在这种状态下,即使是设置了监听密码,对于启动监听的user来说,也仍然是不需要任何密码就可以停止监听的。

如果我们想去除自Oracle10g之后的这种新安全机制,那么需要在listener.ora文件中添加:

LOCAL_OS_AUTHENTICATION_[listener name] = OFF
重新启动Listener之后,将会只看到:

Security                  ON: Password
这就又回复到了Oracle9i时的状态,只要有密码存在,无论是谁尝试停止监听都会被要求set password。

D:\Temp>lsnrctl

LSNRCTL for 32-bit Windows: Version 11.1.0.7.0 - Production on 20-MAY-2009 11:15:41

Copyright (c) 1991, 2008, Oracle.  All rights reserved.

Welcome to LSNRCTL, type "help" for information.

LSNRCTL> status
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=kamus-laptop)(PORT=1521)))
TNS-01169: The listener has not recognized the password
LSNRCTL> stop
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=kamus-laptop)(PORT=1521)))
TNS-01169: The listener has not recognized the password
LSNRCTL> set password
Password:
The command completed successfully
LSNRCTL> status
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=kamus-laptop)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 32-bit Windows: Version 11.1.0.7.0 - Production
Start Date                20-MAY-2009 11:14:22
Uptime                    0 days 0 hr. 1 min. 34 sec
Trace Level               off
Security                  ON: Password
SNMP                      OFF
Listener Parameter File   D:\oracle\product\11.1.0\db_1\network\admin\listener.ora
Listener Log File         d:\oracle\diag\tnslsnr\kamus-laptop\listener\alert\log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=kamus-laptop)(PORT=1521)))
Services Summary...
Service "orcl11g" has 1 instance(s).
  Instance "orcl11g", status READY, has 1 handler(s) for this service...
Service "orcl11g_XPT" has 1 instance(s).
  Instance "orcl11g", status READY, has 1 handler(s) for this service...
The command completed successfully
LSNRCTL> stop
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=kamus-laptop)(PORT=1521)))
The command completed successfully
LSNRCTL>


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13165828/viewspace-606283/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-04-29

  • 博文量
    191
  • 访问量
    505321