Sim é possivel. Por exemplo. no Linux, execute
ssh -N -Llocalport:dbserver:dbport [email protected]
Onde
- localport é a porta em sua máquina que será encaminhada (pode ser 1521 se não houver nenhuma instância local do oracle em execução)
- dbserver é o nome ou IP do servidor de banco de dados
- dbport é a porta do banco de dados (geralmente 1521)
- seunome é o login no servidor de conexões
- connectionserver é a máquina onde você tem acesso ssh
O mesmo pode ser feito no Windows usando o Plink (que vem com o Putty):
plink -N -L localport:dbserver:dbport [email protected]
Faça isso em ambas as máquinas (sua máquina local e o servidor ao qual você tem acesso) para encadear os túneis ssh. Exemplo:
Servidor de conexão (assumindo Linux):
ssh -N -L1521:dbserver:1521 [email protected]
Seu computador:
plink -N -L 1521:connectionserver:1521 [email protected]
A entrada tnsnames.ora deve parecer que você está executando um banco de dados local, por exemplo.
prodoverssh =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = prod)
)
)