Come posso collegare al server Oracle Database 11g attraverso la catena ssh tunnel (doppio tunnel, server nella rete aziendale)?
-
01-10-2019 - |
Domanda
Ho accesso SSH al server 'pubblico', che è anche la porta di rete aziendale. C'è un altro server nella rete, in cui locali server Oracle Database è in esecuzione (Non v'è alcun accesso dall'esterno di questo server, sono accettate solo le connessioni DB localhost). E, naturalmente, ho un altro accesso SSH al server.
C'è un modo per unirsi a questa Oracle Database 11g server al di fuori della rete? Mi chiedo se c'è qualcosa di simile catena di tunnel SSH, e come configurarlo. Questo può essere utile, ad esempio, per il ROSPO per Oracle (client Oracle).
Modifica Ecco immagine
Grazie
Soluzione
Si, è possibile. Per esempio. su Linux, a conduzione
ssh -N -Llocalport:dbserver:dbport yourname@connectionserver
dove
- localport è la porta sulla vostra macchina che sarà trasmesso (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 (di solito 1521)
- nomeutente è il login sul connectionServer
- connectionServer è la macchina dove si ha accesso ssh
Lo stesso può essere fatto su Windows utilizzando Plink (che viene fornito con mastice):
plink -N -L localport:dbserver:dbport yourname@connectionserver
Effettuare questa operazione su entrambe le macchine (computer locale e il server si ha accesso a) per la catena dei tunnel ssh. Esempio:
Server Connection (supponendo Linux):
ssh -N -L1521:dbserver:1521 dblogin@dbserver
Il tuo PC:
plink -N -L 1521:connectionserver:1521 connlogin@connectionserver
La voce tnsnames.ora deve guardare come si esegue un database locale, per es.
prodoverssh =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = prod)
)
)
Altri suggerimenti
Grazie!
ho chiamato ssh -N -LXXXX:server:YYYY login@server
due volte.
In primo luogo, ho chiamato
ssh -L 9998:127.0.0.1:9997 login@gate.company.cz
sul mio PC.
Quindi, su questo server (durante la sessione SSH), ho chiamato
ssh -L 9997:localhost:1521 root@192.168.105.111
dove 192.168.105.111 è il server in cui è in esecuzione Oracle.
Quindi quello che ho fatto è seguito reindirizzamento:
1521 (COMPANY ORACLE SERVER)
-> 9997 (COMPANY GATEWAY SERVER)
-> 9998 (LOCAL PC)
Così ho avuto l'accesso ORACLE nel mio PC locale al porto 9998!
è possibile aggiungere anche l'opzione -f
che corrono il comando ssh in background.