كيف يمكنني الاتصال بخادم Oracle Database 11G من خلال سلسلة نفق SSH (نفق مزدوج ، خادم في شبكة الشركة)؟
-
01-10-2019 - |
سؤال
لديّ SSH وصول إلى خادم "عام" ، وهو أيضًا بوابة لشبكة الشركة. يوجد خادم آخر في الشبكة ، حيث محلي يعمل خادم قاعدة بيانات Oracle (لا يوجد وصول من خارج هذا الخادم ، يتم قبول اتصالات DB LocalHost فقط). وبالطبع ، لدي وصول آخر SSH إلى هذا الخادم.
هل هناك أي طريقة للانضمام إلى خادم Oracle Database 11G من خارج الشبكة؟ أنا أسأل عما إذا كان هناك شيء مثل سلسلة نفق SSH ، وكيف أقوم بتكوينه. يمكن أن يكون هذا مفيدًا ، على سبيل المثال ، لـ Toad for Oracle (Oracle Client).
تعديل: هنا الصورة
شكرًا
المحلول
انه من الممكن. على سبيل المثال على Linux ، قم بتشغيل
ssh -N -Llocalport:dbserver:dbport yourname@connectionserver
أين
- LocalPort هو المنفذ الموجود على جهازك الذي سيتم إعادة توجيهه (يمكن أن يكون 1521 إذا لم يكن هناك مثيل محلي لتشغيل Oracle)
- DBServer هو اسم أو IP لخادم قاعدة البيانات
- DBPort هو منفذ قاعدة البيانات (عادة 1521)
- yourname هو تسجيل الدخول على connectionerver
- Connectionerver هو الجهاز الذي يمكنك الوصول إليه من SSH
يمكن القيام الشيء نفسه على Windows باستخدام Plink (الذي يأتي مع المعجون):
plink -N -L localport:dbserver:dbport yourname@connectionserver
قم بذلك على كلا الجهازين (جهازك المحلي والخادم الذي يمكنك الوصول إليه) لسلسلة أنفاق SSH. مثال:
خادم الاتصال (على افتراض Linux):
ssh -N -L1521:dbserver:1521 dblogin@dbserver
جهاز الكمبيوتر الخاص بك:
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
مرتين.
أولا ، اتصلت
ssh -L 9998:127.0.0.1:9997 login@gate.company.cz
على جهاز الكمبيوتر الخاص بي.
ثم ، على هذا الخادم (أثناء جلسة SSH) ، اتصلت
ssh -L 9997:localhost:1521 root@192.168.105.111
حيث 192.168.105.111 هو خادم حيث كان Oracle قيد التشغيل.
إذن ما فعلته هو اتباع إعادة التوجيه:
1521 (COMPANY ORACLE SERVER)
-> 9997 (COMPANY GATEWAY SERVER)
-> 9998 (LOCAL PC)
لذلك حصلت على Oracle Access في جهاز الكمبيوتر المحلي الخاص بي في Port 9998!
يمكنك إضافة كذلك -f
الخيار الذي يدير أمر SSH في الخلفية.