| 
				   | 
				
| Zeile 39: | 
Zeile 39: | 
 | 
  |  | 
  | 
 | = TMP =  |  | = TMP =  | 
 | == SSH ==
  |  | 
 | === SSH-Server ===
  |  | 
 | ; Das Paket ''openssh-server'' installiert die serverseitige Komponente von SSH
  |  | 
 | 
  |  | 
 | ;  SSH Dienst starten mit [[systemd]]
  |  | 
 |  # systemctl start sshd.service
  |  | 
 |  # systemctl enable sshd.service
  |  | 
 | 
  |  | 
 | ===SSH-Client===
  |  | 
 | * Die Verbidung startet ssh
  |  | 
 | * Host-Namen bzw. die IP-Adresse wird angegeben
  |  | 
 | * Anschliessend folgt die Eingabe des Kennwortes
  |  | 
 |  $ ssh server
  |  | 
 |  root@server's password:
  |  | 
 | 
  |  | 
 | * Zwei Wege um sich mit einem alternativen Benutzerkonto anzumelden
  |  | 
 |  $ ssh -l willi server
  |  | 
 |  $ ssh willi@server
  |  | 
 | 
  |  | 
 | ====Grafische Anwendungen unter X tunneln====
  |  | 
 | * SSH-Verbindung wird von einem X-Terminal aus mit der zusätzlichen Option -X (großes X) initiiert
  |  | 
 |  $ ssh -X server
  |  | 
 | 
  |  | 
 | * Auf der Konsole des Remote-Systems führt man die Anwendung aus
  |  | 
 |  $ libreoffice
  |  | 
 | 
  |  | 
 | * Grafische Ausgabe und Bedienung erfolgt lokal am SSH-Client-Rechner
  |  | 
 | * Das hier beschriebene Verfahren wird als X11-Tunnel bezeichnet
  |  | 
 | 
  |  | 
 | ====Weiterleitung anderer Ports durch einen SSH-Tunnel====
  |  | 
 | 
  |  | 
 | * Als Beispiel, der Zugriff auf einen Terminalserver im entfernten Netzwerk hinter einem SSH-Server
  |  | 
 | 
  |  | 
 | * IP-Adresse des Terminalservers 192.168.50.10<br>
  |  | 
 | * Terminalserver lauscht an Port 3389<br>
  |  | 
 | * IP des SSH-Server 119.117.63.126
  |  | 
 | 
  |  | 
 | * Zunächst wird die SSH-Verbindung initiiert
  |  | 
 | 
  |  | 
 |  ssh 119.117.63.126 -L 4711:192.168.50.10:3389
  |  | 
 | 
  |  | 
 | * Option -L leitet Port 4711 an 192.168.50.10 mit Portnummer 3389 weiter
  |  | 
 | * Verbindungen werden an 192.168.50.10:3389 weitergeleitet
  |  | 
 | * Terminal-Dienste-Clients (z. B.  remmina) nutzen nun als Ziel localhost:4711<br>
  |  | 
 | 
  |  | 
 | ; Hinweis
  |  | 
 | : Auch vom Windows-Computer aus kann mittels PuTTy auf einen Linux-Host zugegriffen werden <br>
  |  | 
 | Läuft ein X-Server auf dem Windows-Computer (z. B.  Xming oder Cygwin), ist auch das Tunneln von Ports inklusive X11 durchführbar
  |  | 
 | 
  |  | 
 | === Konfigurationsdateien ===
  |  | 
 | ; /etc/ssh/sshd_config
  |  | 
 | * Die Konfigurationsdatei sshd_config dient der Konfiguration von sshd, also den SSH-Server
  |  | 
 | 
  |  | 
 |  Port 22
  |  | 
 |  Protocol 2
  |  | 
 |  ListenAddress 192.168.0.58
  |  | 
 |  PermitRootLogin no
  |  | 
 |  HostKey /etc/ssh/ssh_host_rsa_key
  |  | 
 |  HostKey /etc/ssh/ssh_host_ecdsa_key
  |  | 
 |  HostKey /etc/ssh/ssh_host_ed25519_key
  |  | 
 | 
  |  | 
 | ; Erläuterung
  |  | 
 | * sshd verwendet den Standardport 22
  |  | 
 | * Ausschließlich SSH-2-Verbindungen
  |  | 
 | * Zugriff auf Schnittstelle des Rechners: 192.168.0.58
  |  | 
 | * Kein login für root
  |  | 
 | * Als Hostkey kommen RSA, ECDSA und Ed25519 in Frage
  |  | 
 | 
  |  | 
 | ; Hinweis
  |  | 
 | : Auf die Authentifizierung mit Schlüsseln und ssh_known_hosts Datei wird später näher eingegangen
  |  | 
 | 
  |  | 
 | ; /etc/ssh/ssh_config
  |  | 
 | Konfiguration des SSH-Clients
  |  | 
 | * Clientseitige X11-Weiterleitung oder Passwortauthentifizierung
  |  | 
 | * RSA-Authentifizierung aktiv
  |  | 
 | * Standardport für ausgehende Verbindungen festlegen
  |  | 
 | * Die Optionsnamen innerhalb dieser Datei sind ansonsten selbsterklärend oder in der Manpage nachzuschlagen
  |  | 
 | * Die beiden gerade besprochenen Dateien kann man aufgrund ihrer Namensähnlichkeit schnell verwechseln
  |  | 
 | 
  |  | 
 | ; /etc/hosts.allow und /etc/hosts.deny
  |  | 
 | * Die Dateien steuern wie die oben beschriebenen Dateien, den Zugriff auf SSH
  |  | 
 | * ''hosts.allow'' hat Vorrang vor der Datei ''hosts.deny
  |  | 
 | * Wird einem Host der Zugriff auf SSH durch ''hosts.allow'' gewährt, kann das durch keinen Eintrag in hosts.deny zurückgenommen werden
  |  | 
 | 
  |  | 
 | ; /etc/nologin
  |  | 
 | * Mit dem erstellen einer leeren Datei namens /etc/nologin lässt sich der Zugriff auf SSH verhindern
  |  | 
 | * Nur root kann sich dann noch am System anmelden
  |  | 
 | * In dieser Datei kann auch eine Nachricht an Benutzer hinterlassen werden die sich lokal anmelden wollen
  |  | 
 | 
  |  | 
 | [[Kategorie:Linux/LPIC/102]]  |  | [[Kategorie:Linux/LPIC/102]]  | 
 | [[Kategorie:Kryptografie]]  |  | [[Kategorie:Kryptografie]]  |