Si è possibile. Per esempio. su Linux, esegui
ssh -N -Llocalport:dbserver:dbport [email protected]
dove
- localport è la porta sulla tua macchina che verrà inoltrata (può essere 1521 se non c'è un'istanza locale di Oracle in esecuzione)
- dbserver è il nome o l'IP del server di database
- dbport è la porta del database (solitamente 1521)
- il tuo nome è il login sul connectionserver
- connectionserver è la macchina su cui hai accesso ssh
Lo stesso può essere fatto su Windows usando Plink (che viene fornito con Putty):
plink -N -L localport:dbserver:dbport [email protected]
Fallo su entrambe le macchine (la tua macchina locale e il server a cui hai accesso) per concatenare i tunnel ssh. Esempio:
Server di connessione (supponendo Linux):
ssh -N -L1521:dbserver:1521 [email protected]
Il tuo PC:
plink -N -L 1521:connectionserver:1521 [email protected]
La voce tnsnames.ora deve sembrare che tu stia eseguendo un database locale, ad es.
prodoverssh =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = prod)
)
)