首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Oracle 監聽器安全配置全攻略:口令設置、遠程關閉風險、Net Manager 圖形化部署

     編輯:Oracle 資料庫相關知識

一、監聽器核心風險

默認安裝無口令保護,任何能連通監聽器端口的用戶均可遠程執行 LSNRCTL STOP 關閉監聽器,導致整個數據庫服務拒絕服務。

二、設置監聽器口令

方法 1:Net Manager 圖形化(推薦)

  1. 啟動:Windows 開始→程序→Oracle - OraHome92→Configuration and Migration Tools→Net Manager;Linux netmgr;
  2. 選中「監聽程序」→ 右鍵「添加監聽程序」→ 命名(默認 LISTENER);
  3. 「監聽位置」→ 添加地址 → 協議 TCP/IP → 主機名/IP → 端口(默認 1521);
  4. 「數據庫服務」→ 添加數據庫 → 全局數據庫名(如 orcl.example.com)→ Oracle Home → SID;
  5. 關鍵步驟:在監聽器屬性頁設置「口令」字段,保存;
  6. 生成 listener.ora 包含 PASSWORDS_LISTENER = 。

方法 2:手工編輯 listener.ora

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521))
    )
  )
PASSWORDS_LISTENER = 8F4A2B1C3D5E  -- 加密口令
ADMIN_RESTRICTIONS_LISTENER = ON   -- 禁止遠程修改配置

設置口令後,LSNRCTL 操作需先 SET PASSWORD。

三、本地服務名配置

  1. Net Manager →「本地」→「服務命名」→ 添加;
  2. 服務名(如 ORCL)→ 協議 TCP/IP → 主機 IP → 端口 1521 → 服務名 orcl.example.com;
  3. 測試:更改登錄用戶為業務賬號(非 scott/tiger)→ 測試連接成功;
  4. 生成 tnsnames.ora。

四、客戶端無法連接排查清單

五、進階安全建議

  1. 啟用 ADMIN_RESTRICTIONS_LISTENER=ON 禁止遠程配置修改;
  2. 監聽器日志 LOG_DIRECTORY_LISTENER、LOG_FILE_LISTENER 定期審計;
  3. 防火牆限制 1521 端口僅對應用服務器 IP 開放;
  4. SSL/TLS 加密監聽器通訊(PROTOCOL=TCPS、Wallet 配置);
  5. 定期輪換監聽器口令,納入密碼管理策略。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
現象可能原因驗證命令
ORA-12541監聽器未啟動lsnrctl status
ORA-12514SERVICE_NAME 未註冊lsnrctl services
ORA-12154tnsnames.ora 找不到服務名tnsping service_name
ORA-12505SID 未註冊檢查 SERVICE_NAMES 參數
ORA-28547監聽器口令錯誤lsnrctl set password 正確口令