Ergebnis 1 bis 5 von 5

Hybrid-Darstellung

  1. #1
    VIP Avatar von SpaceRat
    Registriert seit
    12.08.2012
    Ort
    Midgard
    Beiträge
    416
    Thanks
    49
    Thanked 165 Times in 97 Posts
    Variante 1: Secure Shell/ssh mit (mehreren) Tunnel

    Teil 2a - Client (Windows; putty)

    Für den Zugriff per putty von einem Windows-Client aus ist es empfehlenswert, sich ein Profil anzulegen und abzuspeichern, um später jederzeit mit einem Klick eine Verbindung herstellen zu können.

    Verbindung herstellen

    1. Putty starten
    2. Profil-Grundeinstellungen
      In der Start-Ansicht von putty ...

      sind nur wenige Einstellungen vorzunehmen:
      1. Der Hostname (z.B. die MyFritz-Adresse) der Box, hier tut.dyn.ip
      2. Der Name des Profils, hier einfach "Tut"
      SSH und Port 22 sollten bereits eingestellt sein.
      Das Profil kann auf Wunsch jetzt bereits zwischengespeichert werden.
    3. Autorisierung auf "Private Key" umstellen
      Auf der linken Seite wechseln wir in die Ansicht "Connection -> SSH -> Auth" und nehmen folgende Einstellungen vor:

      1. Deaktivieren der "keyboard interactive"-Anmeldung
      2. Auswählen unseres in Teil 1 erzeugten "private keys"
    4. Einstellen des Benutzernamens
      Den Benutzernamen stellen wir in der Ansicht "Connection -> Data" ein:

      Hier ist einfach nur "root" einzutragen.
    5. Profil abspeichern
      Die Ansicht zurückwechseln auf "Session", dort die bereits vorab gespeicherte Sitzung "Tut" aus der Liste auswählen und auf [Save] klicken.
    6. Verbindung testen
      Mit Klick auf "Open" sollte sich ohne weiteres Zutun (Beim ersten Mal muß noch der Fingerabdruck des Servers auf der Box bestätigt werden) eine Terminal-Sitzung zu unserer Box öffnen:

      Auf diesem Bild habe ich etwas hochgescrollt, um zu überprüfen, daß der Login tatsächlich per public key erfolgt ist.

      Durch Eingabe von "exit" beendet sich die Sitzung und auch putty ...


    Es ist nach derzeitigem Wissensstand absolut sicher, eine solche Verbindung nach außen freizugeben.
    Um sicherzustellen, daß sich niemand mehr über Login/Passwort einloggen kann, kann (sollte) nach erfolgreichem Test die folgende Zeile in der Datei /etc/inetd.conf:
    Code:
    ssh  stream tcp6 nowait root /usr/sbin/dropbear dropbear -i
    wie folgt abgewandelt werden:
    Code:
    ssh  stream tcp6 nowait root /usr/sbin/dropbear dropbear -i -s
    Mit dieser Einstellung ist dann ein Login über Kennwort per ssh überhaupt nicht mehr möglich (Wohl aber noch per Telnet, Webinterface, etc. pp.).

    Shell-Zugriff auf die Box von außerhalb haben wir nun also ... aber das ist vermutlich für die meisten Benutzer unterwegs der uninteressanteste Aspekt.

    Wir haben aber in einem Rutsch auch gleich einen sftp-Server geschaffen, der sich - zumindest mit einem richtigen FTP-Client - auch genauso nutzen läßt wie ein normaler FTP-Server, nur eben sicher.
    Wie man z.B. den FileZilla-Client für den Zugriff auf diesen Server nutzt, wird hier erklärt.
    Auch hier ist - nach Anpassung der inetd.conf - keine Anmeldung über Benutzername und Kennwort mehr möglich, sondern nur für den Besitzer des privaten Schlüssels.

    Wie aber kommen wir nun auch sicher an das Web-Interface oder den Stream-Server?

    ssh-Tunnel einrichten

    1. putty erneut starten
    2. Profil laden
      Wir laden das vorher erstellte Profil durch Auswählen in der Liste und Klick auf "Load".
    3. Tunnel erstellen
      Wechseln in die Ansicht "Connection -> SSH -> Tunnels"
      und dort die gewünschten Einstellungen vornehmen:

      Es können beliebig viele Tunnel definiert werden, wobei jeweils einzustellen ist:
      1. Source Port = Der Port auf der lokalen Maschine (Dem Client)
      2. Destination = IP/Name plus Port auf der Zielmaschine (Der E2-Box)
      Im abgebildeten Beispiel wird der lokale Port 17080 auf den Port 80 auf der E2-Box selber umgeleitet.
      Diese beiden Angaben jeweils ausfüllen und auf [Add] klicken, danach ggf. für weitere Ports wiederholen.
    4. Profil wieder abspeichern
      Nachdem alle gewünschten Tunnel definiert wurden, einfach wieder auf die Ansicht "Sessions" zurückwechseln und das Profil durch Klick auf "Save" neu abspeichern.
    5. Tunnel starten
      Sobald nun mit diesem Profil wieder eine Verbindung hergestellt wird (Profil auswählen -> Load -> Open), werden gleichzeitig die eingestellten ssh-Tunnel geöffnet.

      Das bedeutet:
      Solange die ssh-Sitzung läuft, sind die eingestellten Zieladressen/Ports unter der Adresse des Clients plus dem eingestellten Port ansprechbar.
      Um also den Web-Server der E2-Box aufzurufen (Siehe Beispiel oben), wird einfach im Webbrowser des Clients die Adresse http://127.0.0.1:17080 aufgerufen. Dieser Aufruf wird dann von putty durch den ssh-Tunnel zur Box transportiert und auf dieser an "localhost:80" weitergereicht ... also den Webserver der Box.


    Komfort:

    Wenn alles zur Zufriedenheit eingerichtet hat, kann man sich ganz einfach eine Desktop-/Schnellstart-/Sonstwas-Verknüpfung
    mit dem Ziel
    d:\path\to\putty.exe -load "my session"
    also z.B.
    C:\Programme\putty\putty.exe -load "Tut"
    anlegen.

    Danach genügt ein Doppelklick auf diese Verknüpfung und putty startet, baut eine ssh-Verbindung auf und stellt alle eingestellten Tunnel her.
    Geändert von SpaceRat (29.04.2014 um 09:30 Uhr)

  2. The Following 6 Users Say Thank You to SpaceRat For This Useful Post:



Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •