5 ssh_einrichten
kraeml edited this page 2023-10-02 07:26:29 +00:00

SSH einrichten

  • Voraussetzung sind die Maschinen foo und baa von hier.

lxc-ssh Vorbereiten

Um SSH als Client zu verwenden, um von einer Maschine (z. B. "foo") auf eine andere (z. B. "baa") zuzugreifen, sind einige grundlegende Schritte erforderlich:

/etc/hosts Einträge

...
10.0.3.110      foo
10.0.3.55       baa
...

Die IP Adressen entsprechend anpassen.

  1. SSH-Client überprüfen: Stellen Sie sicher, dass der SSH-Client auf der Maschine "rdf-dev" (Vagrantmaschine) installiert ist. In den meisten Linux-Distributionen ist OpenSSH standardmäßig installiert.
apt policy openssh-client
openssh-client:
  Installiert:           1:8.2p1-4ubuntu0.9
...
  1. SSH-Server auf "baa" überprüfen: Stellen Sie sicher, dass der SSH-Server auf der Maschine "baa" aktiv ist und läuft. In den meisten Linux-Distributionen ist auch der SSH-Server (OpenSSH) standardmäßig installiert und aktiviert.
nmap --script ssh2-enum-algos -sV -p 22 foo
Starting Nmap 7.80 ( https://nmap.org ) at 2023-09-26 22:22 CEST
Nmap scan report for foo (10.0.3.110)
Host is up (0.00014s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.9 (Ubuntu Linux; protocol 2.0)
| ssh2-enum-algos: 
|   kex_algorithms: (9)
|       curve25519-sha256
|       curve25519-sha256@libssh.org
|       ecdh-sha2-nistp256
|       ecdh-sha2-nistp384
|       ecdh-sha2-nistp521
|       diffie-hellman-group-exchange-sha256
|       diffie-hellman-group16-sha512
|       diffie-hellman-group18-sha512
|       diffie-hellman-group14-sha256
|   server_host_key_algorithms: (5)
|       rsa-sha2-512
|       rsa-sha2-256
|       ssh-rsa
|       ecdsa-sha2-nistp256
|       ssh-ed25519
|   encryption_algorithms: (6)
|       chacha20-poly1305@openssh.com
|       aes128-ctr
|       aes192-ctr
|       aes256-ctr
|       aes128-gcm@openssh.com
|       aes256-gcm@openssh.com
|   mac_algorithms: (10)
|       umac-64-etm@openssh.com
|       umac-128-etm@openssh.com
|       hmac-sha2-256-etm@openssh.com
|       hmac-sha2-512-etm@openssh.com
|       hmac-sha1-etm@openssh.com
|       umac-64@openssh.com
|       umac-128@openssh.com
|       hmac-sha2-256
|       hmac-sha2-512
|       hmac-sha1
|   compression_algorithms: (2)
|       none
|_      zlib@openssh.com
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.78 seconds
  1. SSH-Schlüsselpaar erstellen (optional): Um die Sicherheit zu verbessern und sicheres Passwortloses Anmelden zu ermöglichen, können Sie ein SSH-Schlüsselpaar auf der Maschine "foo" erstellen:
ssh-keygen -t rsa

Dieser Befehl generiert ein Schlüsselpaar (öffentlicher und privater Schlüssel) in Ihrem Heimatverzeichnis. Sie können die Standardeinstellungen akzeptieren oder anpassen.

  1. Öffentlichen Schlüssel auf "baa" hinzufügen (falls Schlüsselpaar erstellt wurde): Wenn Sie ein Schlüsselpaar erstellt haben, müssen Sie den öffentlichen Schlüssel auf "baa" hinzufügen, damit Sie sich ohne Passwort anmelden können. Kopieren Sie den Inhalt der Datei ~/.ssh/id_rsa.pub (oder die entsprechende Datei, die Sie erstellt haben) auf "rdf-dev" und fügen Sie ihn in die ~/.ssh/authorized_keys-Datei auf "baa" ein:
ssh-copy-id user@baa

Wobei "user" Ihr Benutzername auf "baa" ist.

  1. SSH-Verbindung herstellen: Jetzt können Sie eine SSH-Verbindung von "rdf-dev" zu "baa" herstellen:
ssh user@baa

Ersetzen Sie "user" durch Ihren Benutzernamen auf "baa" und "baa" durch die tatsächliche IP-Adresse oder den Hostnamen von "baa".

  1. Passwort eingeben (falls nicht passwortlos): Wenn Sie kein Schlüsselpaar erstellt oder nicht hinzugefügt haben, werden Sie nach Ihrem Passwort für den Benutzer auf "baa" gefragt.

Sobald Sie diese Schritte befolgt haben, können Sie SSH verwenden, um eine sichere Verbindung zwischen den beiden Maschinen herzustellen. Beachten Sie, dass dies eine grundlegende Anleitung ist, und je nach den spezifischen Konfigurationen Ihrer Maschinen und Ihres Netzwerks weitere Schritte erforderlich sein könnten.

SSH Fingerprint ausgeben

Um den SSH-Fingerprint anzuzeigen, kannst du den Befehl ssh-keygen verwenden. Hier ist eine einfache Anleitung:

  1. Öffne dein Terminal.

  2. Gib den folgenden Befehl ein:

    ssh-keygen -lf ~/.ssh/id_rsa.pub
    

    (Ersetze id_rsa.pub durch den Namen deiner öffentlichen SSH-Schlüsseldatei, falls sie einen anderen Namen hat.)

  3. Drücke "Enter".

Der Fingerabdruck deines SSH-Schlüssels wird angezeigt.

Tipp: ssh-keygen -lvf ~/.ssh/id_rsa.pub ausprobieren.