English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Méthode de configuration du mot de passe de l'écouteur Oracle (LISTENER)

Le listener a-t-il aussi de la sécurité ? Oui ! Par défaut, tout utilisateur n'a pas besoin d'utiliser de mot de passe pour utiliser l'outil lsnrctl pour opérer ou fermer l'Oracle Listener, ce qui rend impossible la création de nouvelles sessions. 9i Le listener Oracle permet à n'importe qui d'utiliser l'outil lsnrctl pour gérer à distance le listener. Cela peut également facilement endommager la base de données.

1. Arrêt de l'écouteur sans mot de passe défini

[oracle@test ~]$ lsnrctl stop listener_demo92  --> arrêtez l'écouteur, vous pouvez voir qu'il n'est pas nécessaire de mot de passe pour arrêter 
LSNRCTL pour Linux : Version 9.2.0.8.0 - Production sur 26-JUN-2011 08:22:26          
Copyright (c) 1991, 2006, Oracle Corporation. Tous droits réservés.             
Se connectant à (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521))         
La commande a été exécutée avec succès 

2. Redémarrez l'écouteur et définissez le mot de passe

[oracle@test ~]$ lsnrctl                                                 
LSNRCTL pour Linux : Version 9.2.0.8.0 - Production sur 26-JUN-2011 08:24:09                         
Copyright (c) 1991, 2006, Oracle Corporation. Tous droits réservés.                            
Bienvenue dans LSNRCTL, tapez "help" pour obtenir de l'information.	                                    
LSNRCTL> set current_listener listener_demo92 --> configurer l'écouteur actuel                             
Le listener actuel est listener_demo92                                            
LSNRCTL> start       --> le processus de démarrage n'a pas besoin de mot de passe non plus, les détails de démarrage sont omis                         
LSNRCTL> change_password  --> utiliser change_password pour définir le mot de passe                                
Old password:                                                       
New password:                                                       
Reenter new password:                                                   
Se connectant à (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521))                        
Le mot de passe a été modifié pour listener_demo92                                           
La commande a été exécutée avec succès                                            
LSNRCTL> save_config    --> attention, l'échec de save_config ici                                 
Se connectant à (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521))                        
TNS-01169: The listener has not recognized the password                                  
LSNRCTL> set password    --> entrer le mot de passe récemment défini pour la validation                                    
Password:                                                         
La commande a été exécutée avec succès                                            
LSNRCTL> save_config    --> sauve_config réussi à nouveau                                     
Se connectant à (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521))                        
listener_demo sauvegardé92 paramètres de configuration.                                      
Fichier de paramètres de l'écouteur  /oracle/92/réseau/admin/listener.ora                              
Old Parameter File  /oracle/92/réseau/admin/listener.bak                                
La commande a été exécutée avec succès                                            
--> Après avoir ajouté le mot de passe, vous pouvez voir qu'il y a un enregistrement supplémentaire dans le fichier listener.ora, c'est-à-dire l'option de mot de passe (note : même s'il est utilisé un mode de gestion de mot de passe, le serveur d'écoute peut toujours être démarré sans mot de passe)
[oracle@test admin]$ more listener.ora                                          
	#----ADDED BY TNSLSNR 26-JUN-2011 05:12:48---                                      
	PASSWORDS_listener_demo92 =                                               
	#--------------------------------------------

3. Essayer d'arrêter l'écoute sans utiliser de mot de passe

[oracle@test ~]$ lsnrctl stop listener_demo92                        
LSNRCTL pour Linux : Version 9.2.0.8.0 - Production sur 26-JUN-2011 06:09:51          
Copyright (c) 1991, 2006, Oracle Corporation. Tous droits réservés.             
Se connectant à (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521))         
TNS-01169: The listener has not recognized the password  --> Message d'erreur reçu, l'authentification par mot de passe est nécessaire

4. Arrêter l'écoute avec un mot de passe

[oracle@test ~]$ lsnrctl                            
LSNRCTL> set current_listener listener_demo92                 
Le listener actuel est listener_demo92                      
LSNRCTL> stop                                 
Se connectant à (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521))   
TNS-01169: The listener has not recognized the password            
LSNRCTL> set password                             
Password:                                   
La commande a été exécutée avec succès                       
LSNRCTL> stop                                 
Se connectant à (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521))   
La commande a été exécutée avec succès                       
LSNRCTL> status                                
Se connectant à (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521))   
TNS-12541: Aucun listener TNS                           
 TNS-12560: Erreur d'adaptateur de protocole TNS                     
 TNS-00511: Aucun listener                            
  Erreur Linux : 111: Refus de connexion                    
Se connectant à (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))       
TNS-12541: Aucun listener TNS                           
 TNS-12560: Erreur d'adaptateur de protocole TNS                     
 TNS-00511: Aucun listener                            
  Erreur Linux : 2: Fichier ou répertoire introuvable	                 

5. Problème de sauvegarde de la configuration

--> Dans Oracle 9i, l'utilisation de la commande save_config échouera                                     
	LSNRCTL> save_config                                                 
	Se connectant à (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<hostname>)(PORT=<port>)))                  
	TNS-01169: The listener has not recognized the password	                               
--> Il devrait d'abord utiliser set password avant de sauvegarder la configuration, puis la sauvegarde de la configuration réussira.                              
	LSNRCTL> set password                                                
	Mot de passe: <le mot de passe que vous avez choisi>                                          
	La commande a été exécutée avec succès                          
/*dans Oracle 10g, il n'y aura pas de problème similaire, car dans10g, vous pouvez utiliser la méthode de vérification basée sur le système d'exploitation. Le listener détectera si l'utilisateur fait partie du groupe dba,
sera attribué les permissions de changer le mot de passe, sauvegarder la configuration et arrêter l'écoute, etc. */                                 

6. Configurer le paramètre ADMIN_RESTRICTIONS dans listener.ora

Parameter function:
After setting the ADMIN_RESTRICTIONS parameter in the listener.ora file, during the listener's operation, it is not allowed to execute any management commands, and the set command will be unavailable
It does not work whether it is executed locally on the server or remotely. At this time, the listener settings can only be manually modified in the listener.ora file, and to make the modification take effect, you must
Use the lsnrctl reload command or lsnrctl stop/reload the listener configuration information by the start command once again.
Modification method:
Manually add the following line to the listener.ora file
ADMIN_RESTRICTIONS_<listener_name> = ON

Below is the supplement from other netizens:

LSNRCTL> change_password
Old password:
New password:
Reenter new password:
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ecp-uc-bd1)(PORT=1521))
Password changed for LISTENER
La commande a été exécutée avec succès
LSNRCTL> set password
Password:
La commande a été exécutée avec succès
LSNRCTL> save_config
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ecp-uc-bd1)(PORT=1521))
Saved LISTENER configuration parameters.
Fichier de paramètres de l'écouteur /opt/oracle/produit/10.2.0/db_1/réseau/admin/listener.ora
Old Parameter File /opt/oracle/produit/10.2.0/db_1/réseau/admin/listener.bak
La commande a été exécutée avec succès
[oracle@ecp-uc-bd1 admin]$ cat listener.ora
#—-ADDED BY TNSLSNR 10-JUN-2011 18:13:24—
PASSWORDS_LISTENER = 6D7AA003392C436A
#——————————————–
note:10g数据库上需要上添加(重启监听)
LOCAL_OS_AUTHENTICATION_LISTENER = OFF

1、添加LOCAL_OS_AUTHENTICATION_LISTENER = OFF之前

Security ON: Password or Local OS Authentication

2、添加LOCAL_OS_AUTHENTICATION_LISTENER = OFF之后

Sécurité ACTIVÉE : Mot de passe
LSNRCTL> status
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ecp-uc-bd1)(PORT=1521))
TNS-01169: The listener has not recognized the password
LSNRCTL> stop
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ecp-uc-bd1)(PORT=1521))
TNS-01169: The listener has not recognized the password
LSNRCTL> set password 123456
La commande a été exécutée avec succès
LSNRCTL> status
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ecp-uc-bd1)(PORT=1521))
STATUT de l'ÉCOUTEUR
————————
Alias LISTENER
Version TNSLSNR pour Linux : Version 10.2.0.4.0 – Production
Date de démarrage 10-JUN-2011 18:15:49
Uptime 0 jours 0 hr. 1 min. 16 sec
Niveau de trace DÉSACTIVÉ
Sécurité ACTIVÉE : Mot de passe
SNMP DÉSACTIVÉ
Fichier de paramètres de l'écouteur /opt/oracle/produit/10.2.0/db_1/réseau/admin/listener.ora
Fichier journal de l'écouteur /opt/oracle/produit/10.2.0/db_1/réseau/log/listener.log
Résumé des points d'écoute actifs…
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ECP-UC-BD1)(PORT=1521))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Résumé des services…
Le service "PLSExtProc" a 1 instance(s).
Instance "PLSExtProc", statut INCONNU, a 1 gestionnaire(s) pour ce service…
Le service "ecp" a 1 instance(s).
Instance "ecp", statut PRÊT, a 1 gestionnaire(s) pour ce service…
Le service "ecpXDB" a 1 instance(s).
Instance "ecp", statut PRÊT, a 1 gestionnaire(s) pour ce service…
Le service "ecp_XPT" a 1 instance(s).
Instance "ecp", statut PRÊT, a 1 gestionnaire(s) pour ce service…
La commande a été exécutée avec succès

Vous pourriez aussi aimer