Dnes je: 21. května 2012
| Zabezpečení listeneru pomocí hesla |
|
Listener můžete zabezpečit dvěma způsoby a to buď heslem v textové nebo zakódované formě. Doporučuji použít zakódovanou formu, neboť heslo se ukládá do souboru listener.ora a zde by mohlo být přečteno. Jak to tedy udělat prakticky? Přihlaste se jako uživatel oracle a spusťte utilitu lsnrctl. [oracle@centos53 ~]$ lsnrctl Read More Po přihlášení si nastavte listener, který chcete zabezpečit. Na serveru může běžet více listeneru, proto je potřeba určit jménem, který vás zajimá. To uděláme příkazem set current_listener a jméno listeneru. Zde se jedná o předdefinovaný, jménem listener. LSNRCTL> set current_listener listener Current Listener is listener Listener máte nastavený, teď tedy změnte heslo. Při žádosti o staré heslo klepněte na tlačítko enter, protože listener nemá žádné heslo nastavené. Pak si zvolte vaše vlastní. LSNRCTL> change_password Old password: New password: Reenter new password: Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521))) Password changed for listener The command completed successfully Po změně hesla je potřeba změněnou konfiguraci uložit. To uděláte příkazem save_config. LSNRCTL> save_config Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521))) Saved listener configuration parameters. Listener Parameter File /u01/app/oracle/product/11.1.0/db_1/network/admin/listener.ora Old Parameter File /u01/app/oracle/product/11.1.0/db_1/network/admin/listener.bak The command completed successfully Nyní se podívejte, že je vše v pořádku. V listeneru.ora byste měli mít následující řádky. LOCAL_OS_AUTHENTICATION_LISTENER = OFF LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = centos53)(PORT = 1521)) ) ) #----ADDED BY TNSLSNR 13-OCT-2009 08:52:37--- PASSWORDS_LISTENER = 1DF5C2FD0FE9CFA2 #-------------------------------------------- Zkusíte-li nyní zastavit listener, objeví se stejná chyba jako na výpisu níže. [oracle@centos53 admin]$ lsnrctl stop ... Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=centos53)(PORT=1521))) TNS-01169: The listener has not recognized the password Od této chvíle může být listener spuštěn nebo vypnut jen pomocí utility lsnrctl a to po zadání hesla příkazem set password. Zrušit zabezpečení můžete udělat ve třech krocích. Zastavit listener, odmazat heslo ze souboru listener.ora a opět nastartovat. Poznámka: Parameter LOCAL_OS_AUTHENTICATION_LISTENER = OFF nám potlačuje základní nastavení způsobu ověřování uživatele pomocí operačního systému. U databáze verze 10g a vyšší je standardně povolené ověřování pomocí operačního systému. Je-li zapnuté pak pro uživatele Oracle, který daný proces spustil toto heslo neplatí a může s listenerem dělat cokoli, bez nutnosti znát heslo. V tomto případě je potřeba vypnout ověřování v souboru listener.ora. Způsob ověření vidíte ve výpisu příkazu lsnrctl status. Security ON: Password or Local OS Authentication Security ON: Local OS Authentication Security ON: Password V případě, že chcete použít nezakódované heslo stačí, když ručně upravíte soubor listener.ora a napíšete zde požadované heslo. PASSWORDS_{jméno_listeneru}=našebezpečnéheslo Metalink: Note 372717.1 Password Not Required When Stopping or Administering 10g Listener Note 260986.1 Setting Listener Passwords With an Oracle 10g Listener Note 332785.1 How To Disable Local Os Authentication For Lsnrctl Utility Note 361919.1 How To Start/Stop A Password Protected Listener From A Script
|
Partnerské internetové stránky:
www.oracledba.cz www.asktom.cz www.tomas-solar.cz