Julia: SQL-Developer mit SSH-Tunnel

Hallo Forum,

ich muss eine Verbindung zum Oracle-DB Server per SSH realisieren.

Folgende Informationen habe ich:

  • uni_username
  • uni_passwort
  • oracle_username
  • oracle_passwort
  • uni_host
  • uni_port
  • uni_sid
  • my_port (=22)
  1. Ich habe ein Windows-Rechner, also nutze ich PuTTy. Da habe ich folgende Einstellungen getroffen:

session:

  • Host Name: uni_host
  • Port: my_port

tunnels:

  • destination: uni_host:uni_port
  • port: uni_port

Damit habe ich auch den Uni-Server erreichen können, also auf meine Verzeichnisse zugreifen usw.

War das korrekt?

  1. Dann habe ich Oracle SQL-Developer installiert. Und hier möchte ich auch SSH-Tunnel nutzen. Ich habe eine neue Verbindung erstellt mit den Angaben:
  • Verbindungsname: name

  • Benutzername: oracle_username

  • Kennwort: oracle_passwort

  • Hostname: uni_host

  • Port: uni_port

  • SID: uni_sid

Aber wenn ich auf "Testen" drücke, kommt eine Fehlermeldung: "Status: Nicht erfolgreich -Test nicht erfolgreich: I/O-Fehler: The Network Adapter could not establish the connection"

Was mache ich falsch?

  1. Ich habe noch einen weiteren Versuch unternommen. Ich habe in SQL-Developer SSH-Host erstellt.
  • Name: name
  • Host: uni_host
  • Port: uni_port
  • Benutzername: oracle_name

Hier kriege ich auch eine Fehlermeldung : "Beim Öffnen der Hostverbindung ist ein Fehler aufgetreten."

Was habe ich hier falsch gemacht?

Und die Hauptfrage: Wie mache ich es richtig?

Danke im Voraus!

Julia

  1. Tach!

    Und die Hauptfrage: Wie mache ich es richtig?

    Wenn man einen SSH-Tunnel baut, dann muss man auch da hinein gehen. Das Netzwerk weiß nicht, dass es einen Tunnel gibt, und benutzt stattdessen die üblichen Mechanismen, wenn du den Zielhost als Ziel angibst, und geht damit am Tunnel vorbei.

    So ein Tunnel hat auf dem localhost einen Port geöffnet und das ist die Stelle, zu der man sich verbinden muss, damit man am anderen Ende herauskommt. Also Tunnel konfigurieren mit einem lokalen Port (localport) und Zielhost und Zielport, dann verbinden zum localhost:localport, dann kommt man getunnelt am anderen Ende raus.

    dedlfix.

  2. hi

    Aber wenn ich auf "Testen" drücke, kommt eine Fehlermeldung: "Status: Nicht erfolgreich -Test nicht erfolgreich: I/O-Fehler: The Network Adapter could not establish the connection"

    Dann kommst Du schonmal gar nicht über den localhost hinaus. Prüfe ob der remote host überhaupt erreichbar ist, also Deine lokale IP Konfiguration, Nameservers und Gateway.

    MfG

    1. Hallo zusammen,

      vielen Dank für Eure Antworten!

      In Putty hat der Tunnel, meiner Meinung nach schon funktioniert, zumindest kann ich in event-log folgendes sehen: Local port 1521 forwarding to uni_port:1521

      Ist es richtig?

      Ich habe jetzt versucht den DB-Server zu pingen und kann ihn nicht erreichen. Deswegen werde ich das Ganze auf morgen verschieben müssen.

      Noch mal schönen Dank!

      Julia

      1. Tach!

        In Putty hat der Tunnel, meiner Meinung nach schon funktioniert, zumindest kann ich in event-log folgendes sehen: Local port 1521 forwarding to uni_port:1521

        Ist es richtig?

        Der lokale Port wird auf irgendein Ziel im Netzwerk der SSH-Gegenstelle konfiguriert. Das kann localhost sein (was dann der Zielrechner selbst ist) oder irgendein anderer Rechner, dazu jeweils die dort zu erreichende Port-Nummer.

        Ich habe jetzt versucht den DB-Server zu pingen und kann ihn nicht erreichen.

        Das geht durch einen einfachen SSH-Tunnel nicht, weil der nur ein Port forwardet, nicht aber den gesamten Verkehr zum Zielrechner.

        dedlfix.

        1. Hallo dedlfix,

          vielen Dank für Deine Antwort!

          Ich habe den Tunnel inzwischen erstellt. Meine PuTTy-Konfiguration ist nicht ganz korrekt gewesen. Allerdings musste ich noch einen zweiten Tunnel erstellen. Und da hat es wiederum nicht geklappt.

          Ich kriege folgendes im Event-Log: Local port 1521 forwarding to server1:1521 Local port 5432 forwarding to server2:5432 failed: Network error: Permission denied

          Woran könnte es liegen? Ich habe bei mir bereits testhalber komplette Windows-Firewall ausgeschaltet, aber es klappt leider immer noch nicht.

          An der Firewall im Router kann es nicht liegen, da es auf einem anderen Rechner, der an dem Router hängt, funktioniert.

          Julia

          1. Local port 1521 forwarding to server1:1521 Local port 5432 forwarding to server2:5432 failed: Network error: Permission denied

            "Permission denied" kann hier bedeuten, dass der zu öffnende Port bereits (oder noch) belegt ist.

            An der Firewall im Router kann es nicht liegen, da es auf einem anderen Rechner, der an dem Router hängt, funktioniert.

            Was meine Vermutung quasi bestätigt. Versuche einen anderen entfernten Port.

            1. Hallo,

              "Permission denied" kann hier bedeuten, dass der zu öffnende Port bereits (oder noch) belegt ist.

              Du hast recht, ein anderer Port geht und netstat -ano | findstr /r 0.0:5432 gibt mir ein Ergebnis aus (das ich nicht deuten kann).

              Wie finde ich denn heraus, welches Programm den Port belegt?

              Julia

              1. Hallo,

                Wie finde ich denn heraus, welches Programm den Port belegt?

                Schon gefunden.

                Jetzt läuft alles, vielen Dank für den Tip!

                Julia