企業ネットワークへのゲートウェイでもある「パブリック」サーバーへのSSHアクセスがあります。ネットワーク内にlocal Oracle Databaseサーバーが実行されている別のサーバーがあります(このサーバーの外部からのアクセスはなく、localhost DB接続のみが受け入れられます)。そしてもちろん、このサーバーへの別のSSHアクセスがあります。
ネットワークの外部からこのOracle Database 11gサーバーに参加する方法はありますか? sshトンネルチェーンのようなものがあるかどうか、およびそれをどのように構成するかを尋ねています。これは、たとえば、TOAD for Oracle(Oracleクライアント)の場合に便利です。
編集:ここに画像があります
ありがとう
はい、可能です。例えば。 Linuxでは、実行
ssh -N -Llocalport:dbserver:dbport yourname@connectionserver
どこ
同じことがPlink(PuTTYに付属)を使用してWindowsで実行できます。
plink -N -L localport:dbserver:dbport yourname@connectionserver
両方のマシン(ローカルマシンとアクセスできるサーバー)でこれを実行して、sshトンネルをチェーンします。例:
接続サーバー(Linuxを想定):
ssh -N -L1521:dbserver:1521 dblogin@dbserver
あなたのPC:
plink -N -L 1521:connectionserver:1521 connlogin@connectionserver
Tnsnames.oraエントリは、ローカルデータベースを実行しているように見える必要があります。
prodoverssh =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(Host = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = prod)
)
)
ありがとう!
私は呼びました ssh -N -LXXXX:server:YYYY login@server
2回。
最初に、私は電話した
ssh -L 9998:127.0.0.1:9997 [email protected]
私のPCで。
次に、このサーバー(SSHセッション中)で、
ssh -L 9997:localhost:1521 [email protected]
ここで、192.168.105.111はOracleが実行されていたサーバーです。
だから私がやったのはリダイレクトに従うことです:
1521 (COMPANY Oracle SERVER)
-> 9997 (COMPANY GATEWAY SERVER)
-> 9998 (LOCAL PC)
したがって、ローカルPCのポート9998でOracleにアクセスできました。
バックグラウンドでsshコマンドを実行する-f
オプションも追加できます。