Sichere entfernte Rechnernutzung und Dateitransfer

15.3.2014

Holger Trapp

base64 -d <<<aG9sZ2VyLnRyYXBwQGhyei50dS1jaGVtbml0ei5kZQo=

Remote Access

Grundfunktionen

Optionen

verfügbare Techniken

wünschenswert / notwendig

SSH - Secure Shell

SSH-Versionen

SSH: Entwurfsziele & Sicherheit

Teil-Protokolle von SSHv2

  1. Transport
    • sicherer (chiffrierter, HMAC-gesicherter) Transport-Tunnel mit Server-Authentifizierung
    • Diffie-Hellman-basierter Schlüsselaustausch, authentifiziert durch Signatur mit Public Host-Key des Servers
    • Verifikation der Public Keys:
      • standardmäßig über eine lokale Datenbasis (textuelle Schlüsseldateien)
      • optionale Nutzung von CA-Zertifikaten im Protokoll vorgesehen
  2. Authentifizierung
    • Nutzerauthentifizierung an Hand diverser Verfahren bis zum ersten Erfolg oder endgültigen Misserfolg
    • z.B.: gssapi-keyex, gssapi-with-mic, hostbased, publickey, password
  3. Sitzung
    • logische Kanäle im SSH-Tunnel:
      • interaktive Sitzungen: Shell, Applikation, eingebautes Subsystem (sftp)
      • X11-, Agenten-, TCP-Portweiterleitung

OpenSSH

OpenSSH-Anwendungsbeispiele

OpenSSH-Anwendungsbeispiele

OpenSSH-Anwendungsbeispiele

OpenSSH-Anwendungsbeispiele

Nutzung eigener Schlüsselpaare

# RSA-Identität (Schlüsselpaar) erzeugen: ~/.ssh/id_rsa
ssh-keygen -b 4096

# den SSH-Agenten starten und die RSA-Identität laden
eval $(ssh-agent)
ssh-add

# Public Key ~/.ssh/id_rsa.pub beim Zielnutzer hinterlegen
cp ~/.ssh/id_rsa.pub ~ziel/.ssh/authorized_keys
ssh-copy-id -i ~/.ssh/id_rsa.pub user@server

# ggf. Optionen in authorized_keys ergänzen
command="hostname;date;uptime" ssh-rsa ...

# passwortloses Login mit RSA-Identität
ssh server
  

OpenSSH-Konfiguration

NX 3.5

NX 3.5

NX 4

X2go

X2go vs. NX 3.5

/

#