Donnerstag, 22. Januar 2015

SSH

Secure Shell (SSH) ist ein Netzwerkprotokoll, das den Daten zwischen zwei Systemen verschlüsselt überträgt.

Möglichkeiten

  • remote Terminal
  • X11-Festerübertragung (grafisches Interface)
  • Dateiübertragung
    • SCP (Secure Copy)
      • zum kopieren von einzelnen Datein
    • SFTP (Secure File Transfer Protocol)
      • Secure File Transfer Protocol
    • rsync
      • zum Synchronisieren von Ordnern
  • Passwortfreie Authentifizierung mit Keys

Remote Terminal

ssh user@server
z.B. ssh knoppix@169.254.69.13

 

X11-Fensterübertragung

ssh -X user@example.com

Nun kann man graphische Programme am Server starten, die am Client angezeigt werden (z.B. Wireshark)

 

RSync

Programm zur Synchronisation von Daten

Basic Syntax
rsync <Quelle> <Ziel>
z.B
rsync Images/2014 user@server:Images/2014

Verwenden der schnellsten (aber auch unsicheren) Verschlüsselungsmethode RC4
rsync -a -v -e "ssh -c ARCFOUR" <Quelle> <Ziel>

 

Passwortfreie Authentifizierung

Der Vorteil der Key-based-authentication besteht darin, dass anstatt eines Passworts, welches der Benutzer eingibt, der private Schlüssel, welcher am Client gespeichert ist, verwendet wird. Dies ist durch asymetrische Verschlüsselungsverfahren abgesichert (RSA)
Der private Schlüssel kann für besondere Sicherheit mit einem Kennwort abgesichert werden.

 

Setup

Wir generieren ein Schlüsselpaar (public & private) am Client
user@client$ ssh-keygen
Nun wird man nach Speicherort und Passphrase gefragt:
Der Speicherort sollte gleichbelassen bleiben (~/.ssh/id_rsa)
Eine Passphrase kann für zusätzliche Sicherheit eingegeben werden.

Nun sind 2 Datein entstanden
  • ~/.ssh/id_rsa
    • dies ist der private Schlüssel
    • darf das System nicht verlassen
  • ~/.ssh/id_rsa.pub
    • dies ist der öffentliche Schlüssel
    • kann jedem frei zur Verfügung gestellt werden
Den öffentlichen Schlüssel kopieren wir nun auf den Server
user@client$ scp ~/.ssh/id_rsa.pub user@example.com:.ssh/user@client.pub
den Inhalt dieser Datei fügen wir nun der Datei .ssh/authorized_keys am Server hinzu
user@server$ cd ~/.ssh/
user@server$ cat user@client.pub >> authorized_keys

jetzt kann sich der Client zum Server verbinden ohne ein Kennwort einzugeben.

Keine Kommentare:

Kommentar veröffentlichen