Ssh Clientseite

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Clientseite

  • ssh (OpenSSH client) ist ein Programm um auf einen entfernten Rechner zuzugreifen und dort Kommandos auszuführen.
  • Es ersetzt die Programme rlogin und rsh und stellt eine sichere verschlüsselte Verbindung zwischen zwei Rechnern her.
  • ssh verbindet sich mit dem Zielrechner, worauf der Benutzer seine Identität über verschiedene Methoden nachweisen muss.

Aufruf

  • ssh [Optionen] Benutzer@Zielrechner [Kommando]
Wenn ein Kommando angegeben wird, wird dieses anstelle der Login-Shell ausgeführt.

SSH Optionen

SSH Beispiele

Zugriff auf einen bisher unbekannten Zielrechner

  • ssh root@alita
The authenticity of host 'alita (192.168.242.10)' can't be established.
RSA key fingerprint is 8c:d1:1f:d2:5e:76:cd:75:74:c4:b7:b2:c7:f6:50:78.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'alita,192.168.242.10' (RSA) to the list of known hosts.
root@alita's password: Passwort_das_nicht_angezeigt_wird
...
root@alita:~#

Um die Identität des Zielrechners zu verifizieren, kann man den den Fingerprint des öffentlichen RSA Schlüssels auf der Serverseite ausgeben lassen. Dieser kann dann mit dem oben angezeigten verglichen werden. ==Zugriff auf bekannten Zielrechner

  • ssh alita
root@alita's password: Passwort_das_nicht_angezeigt_wird
...
root@alita:~#

Zugriff als Benutzer christian und auf Port 9998

root@zero:~# ssh alita -l christian -p 9998
christian@alita's password: Passwort_das_nicht_angezeigt_wird
...
christian@alita:~$

Ausführen eines Kommandos auf dem Zielrechner

root@zero:~# ssh alita cat /etc/hostname
root@alita's password:
alita
root@zero:~#

Ausführen eines grafischen Programms auf dem Zielrechner und lokal anzeigen

root@zero:~# ssh -X root@alita kate

Datei:Kate.jpg

Authentifizierung mit Schlüssel

Schlüsselpaar erstellen

xinux@zero:~$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/xinux/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/xinux/.ssh/id_rsa.
Your public key has been saved in /home/xinux/.ssh/id_rsa.pub.
The key fingerprint is:
a7:13:ec:54:a3:4f:29:32:f8:98:04:ea:0c:b9:62:04 xinux@zero
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|E .       o      |
|.o . . . o o     |
|+.  o o S +      |
|=. . + = B       |
|o+  o . + .      |
|o        .       |
|                 |
+-----------------+
xinux@zero:~$

Übertragen des öffentlichen Schlüssels

Ubuntu
xinux@zero:~$ ssh-copy-id -i .ssh/id_rsa.pub root@alita
root@alita's password: Passwort_das_nicht_angezeigt_wird
Now try logging into the machine, with "ssh 'root@alita'", and check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

xinux@zero:~$
ESXI
xinux@zero:~$ cat .ssh/id_rsa.pub | ssh root@esxi \ 
'cat >> /etc/ssh/keys-root/authorized_keys'

Einloggen auf Remoterechner

root@zero:~# ssh root@alita
Linux alita 2.6.28-13-generic #44-Ubuntu SMP Tue Jun 2 07:57:31 UTC 2009 i686

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright. 

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/ 

0 packages can be updated.
0 updates are security updates.

Last login: Thu Jul  2 13:54:13 2009 from zero.alpha.quadrant
root@alita:~#


scp secure copy

scp steht für Secure Copy und ermöglicht es, Dateien in einem Netzwerk zu kopieren. Es baut auf ssh auf und benutzt entsprechend Authentifizierung und Verschlüsselung.

scp [Optionen] Benutzer@Rechner1:/Pfad/zu/Datei lokaler_Dateipfad
scp [Optionen] lokaler Dateipfad Benutzer@Rechner2:/Pfad/zu/Datei2

Optionen

  • -1 : Erzwingt die ausschließliche Benutzung von ssh Protokollversion 1
  • -2 : Erzwingt die ausschließliche Benutzung von ssh Protokollversion 2
  • -4 : Erzwingt die ausschließliche Benutzung von IPv4 Adressen
  • -6 : Erzwingt die ausschließliche Benutzung von IPv6 Adressen
  • -C : Benutzt Komprimierung
  • -P port: Benutzt Port auf dem Zielrechner; Achtung: großes P!
  • -p : Verändert nicht die Zeiten der letzten Veränderung der Datei
  • -r : rekursives Kopieren; scp folgt dabei auch symbolischen Links
  • -v : ausführliche Ausgabe


Beispiele

Kopieren aller Dateien und Verzeinissen von einem lokalen Verzeichnis in ein entferntes Verzeichnis

root@zero:~# scp -r /etc/* root@alita:/tmp/
root@alita's password: 
powerbtn.sh                                 100%  517     0.5KB/s   00:00 
...

Kopieren eines entfernten Verzeichnisses in ein lokales Verzeichnis

root@zero:~# scp -r root@alita:/root /root/alita_backup/
root@alita's password:     
.bashrc                                      100% 2227     2.2KB/s   00:00  
...

vpn-pppd ssh Tunnelscript

ssh nagus
cat /usr/local/sbin/vpn-pppd

enable diffie-hellman-group1-sha1 key exchange

mit dem direkten befehl:

  • ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 123.123.123.123

dauerhaft eintragen:

  • /etc/ssh/ssh_config
Host 123.123.123.123
    KexAlgorithms +diffie-hellman-group1-sha1