`
jiangpan
  • 浏览: 53919 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论

oracle listener 的密码

阅读更多

oracle 的监听机制 是外部应用程序连接oracle的入口。用oracle提供的lsnrctl 程序进行管理。一般很多人在管理oracle的时候,往往忽略对listener 的安全管理:监听在端口1521(默认端口)上的oracle tnslsnr未设置口令保护!

    这会存在这个安全隐患:远程的Oracle tnslsnr服务器没有被设置密码,一个攻击者可以利用这个问题随意关闭oracle tnslsnr服务器或者设置新的口令,这将影响合法用户的正常使用。攻击者也可以获取数据库的一些细节信息以发动进一步攻击。结合其他漏洞,攻击者甚至可以在目标系统上创建或者修改文件,进而入侵系统。
   这里对关于oracle监听模块密码安全设置的几个方法进行说明:
1. 如何进行远程操作:
    在远程机器上修改listerner.ora 文件,增加对异地oracle服务器的配置,例如:
   ls_oratest =
(DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.10)(PORT = 1521))
    )
   )      
这里的HOST = 192.168.1.10 即是指明远程的oracle服务器。如果默认的,oracle服务器上没有设置
listener 的管理密码,则在远程机器上只要执行:
     lsnrctl stop ls_oratest
   即可停止192.168.1.10 服务器上的监听服务。
2.如何修改密码:
    listener的密码策略对start无效,目的是防止恶意stop(start ,如果有在运行,则不成功,所以也就不需要保护了)
     lsnrctl >
       set current_listener listener_oratest <-- 设置当前监听器的配置名称
       Old password: <原来的口令> <-- 如果原来没有设置口令就直接回车,否则输入原来的口令
        New password: <新口令>
       Reenter new password: <新口令>
        Connecting to (ADDRESS=(PROTOCOL=ipc)(KEY=XXX))
         Password changed for listener_oratest
          The command completed successfully
      <--这里设置或者修改了当前运行监听进程的密码,如果监听程序重启,则密码仍然为原来的密码。
      <--所以需要执行保存密码的过程
        set password
        Password: <输入新口令>
        save_config (此步重要,保存当前设置)
        exit
     
    说明:
      a.执行save_config 需要再执行一次 set password 提供新密码,是因为在lsnrctl 管理工具中,是通过 set password 命令来设置当前环境的密码。设置了正确的密码后,就可以执行一些重要的操作,如save_config, stop 等。
      b 设置密码后,密码记录在listerner.ora 文件 中,
             比如:PASSWORDS_listener_oratest = AF15F0B512F2229A
          形式为:PASSWORDS_监听名称 = 密码密文。如果忘记密码,可以去掉该行,则密码为空。
       c.设置了密码后,远程机器如果需要stop监听的时候,则需要提供密码,否则操作失败。


   3.如何管理设置密码后的监听进程:
       a.如果是人工交互的操作,则只需在执行操作前面键入两个命令:
        lsnrct<
           set current_listener listener_oratest <-- 设置当前监听器的配置名称
           set password
           Password: <输入口令>
           stop
       b.如果是脚本自动执行,则需要提供密码的密文(由isterner.ora 文件获得)
          #!/bin/sh
          lsnrctl << eof
            set current_listener listener_oratest
            set password AF15F0B512F2229A
            stop
           eof

(以上内容转自:http://blog.chinaunix.net/u/16889/showart_1097899.html

3. 以下是我在本地测试的过程记录:

Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\lcm>lsnrctl

LSNRCTL for 32-bit Windows: Version 9.2.0.3.0 - Production on 30-7月 -2009 14:14
:24

Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.

欢迎来到LSNRCTL,请键入"help"以获得信息。

LSNRCTL> help
以下操作可用
星号 (*) 表示修改符或扩展命令:

start               stop                status
services            version             reload
save_config         trace               change_password
quit                exit                set*
show*

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

分享到:
评论

相关推荐

    针对Oracle的TNS listener的攻击原理及方法介绍

    首先,应为TNS Listener设置一个强壮的口令,并确保所有默认口令,特别是具有DBA权限的用户(如Sys和System),都被修改成不易猜测的强密码。此外,要定期更新Oracle数据库及其组件,以修补已知的安全漏洞。对于日志...

    oracle_listener_详解

    ### Oracle Listener 详解 #### 一、Oracle Listener 概述 **Oracle Listener** 是 Oracle 数据库系统中的一个重要组件,负责监听来自客户端的连接请求,并基于这些请求管理与客户端的通信。Listener 的主要职责...

    Integrigy_OracleDB_Listener_Security.pdf

    ### Oracle Database Listener安全指南 #### 一、简介 在Integrigy发布的《Oracle Database Listener Security Guide》(Oracle TNS Listener 安全指南)中,该文档提供了关于Oracle数据库监听器的安全配置与管理...

    Oracle_LISTENER监听文件参数详

    "Oracle LISTENER 监听文件参数详解及 Lsnrctl 命令综述" Oracle LISTENER 监听文件参数详解: LISTENER 监听文件参数是 Oracle Net Listener 的配置文件,用于定义监听器的行为和参数。下面是 LISTENER 监听文件...

    Oracle监听器维护管理v1.1

    Oracle监听器是数据库系统的重要组成部分,它在Oracle数据库与客户端应用程序之间起着桥梁的作用。本文档详细介绍了Oracle监听器的工作原理、主要功能、基本操作、动态注册与静态注册、监听日志管理和分析以及针对...

    oracle修改密码手册

    ### Oracle 修改密码手册 本文将详细介绍如何在Oracle环境中修改不同用户账户的密码,包括普通用户、sys用户以及特定管理用户如dbsnmp和sysman等,并提供了在Oracle Enterprise Manager (EM)不可用时的应对策略及EM...

    Oracle 监听器密码设置方法(LISTENER)

    在缺省的情况下,任意用户不需要使用任何密码即通过lsnrctl 工具对Oracle Listener进行操作或关闭,从而造成任意新的会话都将无法建立连接。在Oracle 9i 中Oracle监听器允许任何一个人利用lsnrctl从远程发起对监听器...

    如何连接oracle数据库及故障解决办法

    在连接 Oracle 数据库时,可能会遇到各种问题,例如,无法连接数据库、无法启动 listener、无法启动数据库等问题。这些问题的解决办法如下: * 无法连接数据库:检查 tnsnames.ora 文件的配置是否正确,检查 ...

    Oracle用户密码含有特殊字符导致无法登陆解决方法

    然而,在本例中,即便是直接在Oracle服务器上使用SQL*Plus登录也遇到了同样的问题,提示“ORA-12541: TNS: nolistener”,这表明问题并不在于网络配置或监听器。 进一步调查发现,出现问题的用户(`system`和`sys`...

    Oracle经典教程.pdf

    * 主要的 Oracle 服务包括 Listener 服务、Database 服务和 Agent 服务。 * Oracle 服务可以根据需要进行启动、停止和重启。 五、Oracle 启动和关闭 * Oracle 启动需要执行相应的命令或使用图形化管理工具。 * ...

    listener与tnsnames配置示例

    Oracle数据库系统是企业级广泛应用的关系型数据库管理系统,其在服务器端的网络通信主要依赖于Listener(监听器)和tnsnames.ora配置。这两个组件对于数据库的连接和管理至关重要。本文将详细介绍这两个组件以及如何...

    Oracle11G日常维护手册.pdf

    * 检查 Oracle Listener:在登录到数据库之前,需要检查 Oracle Listener 的状态,确保其处于活动状态。 用户管理 在 Oracle 11G 中,用户管理是非常重要的。用户是数据库的基本组成部分,需要对用户进行创建、...

    Oracle 11gr2连Oracle 19c 报ORA-28040 ORA-01017解决方法.pdf

    在Oracle 19c的配置中,特别需要注意的是ADR_BASE_LISTENER变量的设定,它指定了监听器的基础目录。 在处理这些问题时,还需要注意的是,如果配置文件在安装过程中不是以默认的“Install and Configure”模式安装的...

    远程登录并启动oracle数据库 解决ORA-01031

    总结来说,远程登录并启动Oracle数据库涉及多个步骤,包括确保Listener正常运行、正确配置连接信息以及启用密码认证等。遵循本文所述步骤,可以有效避免因权限不足而导致的连接失败问题,从而确保远程管理Oracle...

    Oracle客户端连接Oracle服务器.docx

    用户可以通过TOAD输入服务器信息,包括主机名、端口号和服务名,然后输入用户名和密码来连接Oracle服务器。 4. **数据字典查询**: - 数据字典是Oracle数据库中存储系统信息的特殊表,如`USER_TABLES`用于查看当前...

    Oracle19C RAC通过gateways连接SQL server数据库

    Oracle 19C RAC(Real Application Clusters)是一种高可用性和可伸缩性的数据库解决方案,它允许多个实例共享同一个物理数据库。在本场景中,我们探讨的是如何在Oracle 19C RAC环境中通过Oracle数据库网关(Gateway...

Global site tag (gtag.js) - Google Analytics