oracle - servidor - no puedo crear una conexion en sql developer
¿Cómo puedo conectarme al servidor de Oracle Database 11g a través de la cadena de túnel ssh(túnel doble, servidor en la red de la empresa)? (3)
Tengo acceso SSH al servidor ''público'', que también es la puerta de entrada a la red de la compañía. Hay otro servidor en la red, donde se está ejecutando el servidor local de Oracle Database (no hay acceso desde el exterior de este servidor, solo se aceptan las conexiones DB de host local). Y, por supuesto, tengo otro acceso SSH a este servidor.
¿Hay alguna forma de unirse a este Servidor de Oracle Database 11g desde fuera de la red? Me pregunto si hay algo así como la cadena de túnel ssh, y cómo lo configuro. Esto puede ser útil, por ejemplo, para TOAD for Oracle (cliente ORACLE).
EDITAR: Aquí está la imagen
Gracias
¡Gracias!
Llamé a ssh -N -LXXXX:server:YYYY login@server
dos veces.
Primero, llamé
ssh -L 9998:127.0.0.1:9997 [email protected]
en mi PC.
Luego, en este servidor (durante la sesión SSH), llamé
ssh -L 9997:localhost:1521 [email protected]
donde 192.168.105.111 es el servidor donde se estaba ejecutando ORACLE.
Entonces, lo que hice fue seguir la redirección:
1521 (COMPANY ORACLE SERVER)
-> 9997 (COMPANY GATEWAY SERVER)
-> 9998 (LOCAL PC)
¡Así que obtuve el acceso ORACLE en mi PC local en el puerto 9998!
Si es posible. Por ejemplo, en Linux, ejecuta
ssh -N -Llocalport:dbserver:dbport yourname@connectionserver
dónde
- puerto local es el puerto de su máquina que se reenviará (puede ser 1521 si no hay una instancia local de Oracle funcionando)
- dbserver es el nombre o IP del servidor de la base de datos
- dbport es el puerto de la base de datos (generalmente 1521)
- yourname es el inicio de sesión en el servidor de conexiones
- servidor de conexión es la máquina donde tienes acceso ssh
Lo mismo se puede hacer en Windows usando Plink (que viene con masilla):
plink -N -L localport:dbserver:dbport yourname@connectionserver
Haga esto en ambas máquinas (su máquina local y el servidor al que tiene acceso) para encadenar los túneles ssh. Ejemplo:
Servidor de conexión (asumiendo Linux):
ssh -N -L1521:dbserver:1521 dblogin@dbserver
Tu computador:
plink -N -L 1521:connectionserver:1521 connlogin@connectionserver
La entrada tnsnames.ora debe parecer que está ejecutando una base de datos local, por ejemplo
prodoverssh =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = prod)
)
)
También puede agregar la opción -f
que ejecuta el comando ssh en segundo plano.