ssh_einrichten aktualisiert

kraeml 2023-10-02 07:12:43 +00:00
parent a70337494c
commit 10b1174ef0
1 changed files with 124 additions and 108 deletions

@ -1,108 +1,124 @@
# SSH einrichten
* Voraussetzung sind die Maschinen foo und baa von [hier](lxc_einstieg).
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.
```bash
apt policy openssh-client
openssh-client:
Installiert: 1:8.2p1-4ubuntu0.9
...
```
2. **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.
```bash
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
```
3. **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:
```bash
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.
4. **Ö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:
```bash
ssh-copy-id user@baa
```
Wobei "user" Ihr Benutzername auf "baa" ist.
5. **SSH-Verbindung herstellen:** Jetzt können Sie eine SSH-Verbindung von "rdf-dev" zu "baa" herstellen:
```bash
ssh user@baa
```
Ersetzen Sie "user" durch Ihren Benutzernamen auf "baa" und "baa" durch die tatsächliche IP-Adresse oder den Hostnamen von "baa".
6. **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 einrichten
* Voraussetzung sind die Maschinen foo und baa von [hier](lxc_einstieg).
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.
```bash
apt policy openssh-client
openssh-client:
Installiert: 1:8.2p1-4ubuntu0.9
...
```
2. **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.
```bash
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
```
3. **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:
```bash
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.
4. **Ö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:
```bash
ssh-copy-id user@baa
```
Wobei "user" Ihr Benutzername auf "baa" ist.
5. **SSH-Verbindung herstellen:** Jetzt können Sie eine SSH-Verbindung von "rdf-dev" zu "baa" herstellen:
```bash
ssh user@baa
```
Ersetzen Sie "user" durch Ihren Benutzernamen auf "baa" und "baa" durch die tatsächliche IP-Adresse oder den Hostnamen von "baa".
6. **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.