كيف يمكنني الاتصال بخادم Oracle Database 11G من خلال سلسلة نفق SSH (نفق مزدوج ، خادم في شبكة الشركة)؟

StackOverflow https://stackoverflow.com/questions/3653788

سؤال

لديّ SSH وصول إلى خادم "عام" ، وهو أيضًا بوابة لشبكة الشركة. يوجد خادم آخر في الشبكة ، حيث محلي يعمل خادم قاعدة بيانات Oracle (لا يوجد وصول من خارج هذا الخادم ، يتم قبول اتصالات DB LocalHost فقط). وبالطبع ، لدي وصول آخر SSH إلى هذا الخادم.

هل هناك أي طريقة للانضمام إلى خادم Oracle Database 11G من خارج الشبكة؟ أنا أسأل عما إذا كان هناك شيء مثل سلسلة نفق SSH ، وكيف أقوم بتكوينه. يمكن أن يكون هذا مفيدًا ، على سبيل المثال ، لـ Toad for Oracle (Oracle Client).

تعديل: هنا الصورة

alt textشكرًا

هل كانت مفيدة؟

المحلول

انه من الممكن. على سبيل المثال على 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 في الخلفية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top