Para configurar la instancia de Oracle Database, realice los siguientes pasos:
Nota:
Estos pasos solo son necesarios si no se ha creado previamente una cartera de Oracle. Los siguientes pasos no son necesarios si se utiliza la herramienta de interfaz gráfica de usuario de las carteras de Oracle en el servidor de base de datos.C:\> cd %ORACLE_HOME% C:\oracledb\12.1.0\home> mkdir wallet C:\oracledb\12.1.0\home> orapki wallet create -wallet wallet -pwd password1 -auto_loginPuede ignorar los mensajes que le pidan que use
-auto_login_local
en la línea de comandos orapki
. Si se produce un error de autenticación SSL, consulte Identificador de documento 2238096.1 para solucionar el problema.
Asimismo, compruebe el permiso de seguridad del archivo cwallet.sso
(en el directorio de la cartera) y asegúrese de que el usuario del servicio de listener de Oracle tiene permiso de lectura para este archivo. Sin permiso de lectura, el establecimiento de comunicación SSL fallará más adelante. Esto sucederá si la instancia de Oracle Database se ha instalado con el usuario de Oracle sugerido que no tiene permiso para iniciar sesión. Si la instancia de Oracle Database se ha instalado con el usuario de Oracle, el listener TNS debe ejecutarse como un usuario distinto.
C:\oracledb\12.1.0\home> orapki wallet add -wallet wallet -pwd password1 -dn "CN={FQDN of db server}" - keysize 1024 -self_signed -validity 3650
La contraseña password1
del ejemplo anterior debe coincidir con la contraseña especificada en el paso 1.
C:\oracledb\12.1.0\home> orapki wallet export -wallet wallet -pwd password1 -dn "CN={FQDN of db server}" -cert %COMPUTERNAME%-certificate.crt
1522
. El puerto usado habitualmente para las conexiones SSL es el 2484
, pero puede usar cualquier puerto disponible. Compruebe que el puerto que desea usar está disponible en el servidor de base de datos antes de continuar y haga los ajustes pertinentes.SQLNET.ORA
. El elemento DIRECTORY de la declaración WALLET_LOCATION debe apuntar a la cartera creada en el paso 1.
SQLNET.AUTHENTICATION_SERVICES= (TCPS, NTS, BEQ) NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) WALLET_LOCATION= (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = C:\oracledb\12.1.0\home\wallet) ) ) SSL_CLIENT_AUTHENTICATION = FALSE
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = CLRExtProc) (ORACLE_HOME = C:\oracledb\12.1.0\home) (PROGRAM = extproc) (ENVS = "EXTPROC_DLLS=ONLY:C:\oracledb\12.1.0\home\bin\oraclr12.dll") ) ) SSL_CLIENT_AUTHENTICATION = FALSE WALLET_LOCATION= (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = C:\oracledb\12.1.0\home\wallet) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = myServer)(PORT = 1521)) ) (DESCRIPTION = (ADDRESS = (PROTOCOL = TCPS)(HOST = myServer)(PORT = 1522)) ) (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) ) ADR_BASE_LISTENER = C:\oracledb
TNSNAMES.ORA
para el nuevo puerto.
ORCL_SSL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCPS)(HOST = myServer)(PORT = 1522)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = myServer_service) ) )
Debe especificar el mismo puerto que se identificó en el paso 5a y se utilizó en el paso 5c.
C:\oracledb\12.1.0\home>lsnrctl stop C:\oracledb\12.1.0\home>lsnrctl start
C:\oracledb\12.1.0\home>tnsping orcl_ssl TNS Ping Utility for 64-bit Windows: Version 12.1.0.2.0 - Production on 10-SEP-2019 15:43:22 Copyright (c) 1997, 2014, Oracle. All rights reserved. Used parameter files: C:\oracledb\12.1.0\home\network\admin\sqlnet.ora Used TNSNAMES adapter to resolve the alias Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCPS)(HOST = myServer) (PORT = 1522)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = myServer_service))) OK (130 msec)