Übersetzungen: [ en/English ] · [ es/Español ] · [ fr/Français ]
Inhaltsverzeichnis
Secure Shell (SSH) ist ein leistungsstarkes Werkzeug, um sicher auf entfernte Maschinen zuzugreifen. Es bietet einen sicheren Kanal über ein unsicheres Netzwerk und ermöglicht verschlüsselte Kommunikation zwischen Client und Server. Hier ist eine umfassende Anleitung zur Nutzung von SSH unter Linux, die Verbindung, ‘known_hosts’ und wichtige Befehle abdeckt.
Verbindung über SSH herstellen
Syntax
Um eine SSH-Verbindung zu initiieren, verwenden Sie die folgende Syntax:
ssh benutzername@hostname
Ersetzen Sie benutzername
durch Ihren Benutzernamen auf der entfernten Maschine und hostname
durch die IP-Adresse oder den Domainnamen des Servers.
Beispiel
Angenommen, Ihr Benutzername auf der entfernten Maschine lautet benutzer
und die IP-Adresse des Servers lautet 192.168.1.100
. Verwenden Sie zum Verbinden:
ssh benutzer@192.168.1.100
Authentifizierung per Passwort
Bei der ersten Verbindungsaufnahme fordert SSH das Passwort des Benutzers an. Es ist erwähnenswert, dass Passwörter nicht sichtbar sind, wenn sie eingegeben werden, was eine zusätzliche Sicherheitsebene bietet. Bei nachfolgenden Anmeldungen kann das Passwort nicht abgefragt werden, wenn SSH-Schlüssel eingerichtet sind.
SSH-Schlüssel und schlüsselbasierte Authentifizierung
SSH-Schlüssel erhöhen die Sicherheit, indem sie Passwörter durch kryptografische Schlüssel ersetzen. Die Schritte zum Generieren und Verwenden von SSH-Schlüsseln sind:
Generieren des SSH-Schlüsselpaares:
ssh-keygen -t rsa -b 4096
Dieser Befehl generiert standardmäßig ein RSA-Schlüsselpaar (
id_rsa
undid_rsa.pub
Dateien) im Verzeichnis~/.ssh/
.Öffentlichen Schlüssel auf die entfernte Maschine kopieren: Verwenden Sie
ssh-copy-id
, um den öffentlichen Schlüssel zurauthorized_keys
-Datei der entfernten Maschine hinzuzufügen:ssh-copy-id benutzer@hostname
Schlüsselbasierte Authentifizierung: Sobald der Schlüssel kopiert ist, fordert SSH bei nachfolgenden Anmeldungen nicht mehr nach Passwörtern.
Verwaltung von known_hosts
Was ist known_hosts
?
Die Datei known_hosts
speichert die Hostschlüssel entfernter Server. Beim Verbinden mit einem Server überprüft SSH diese Datei, um die Identität des Servers zu überprüfen. Wenn sich der Schlüssel des Servers ändert, zeigt SSH eine Warnung an.
Behandlung von known_hosts
-Problemen
Manchmal gibt SSH Warnungen aus, wenn sich Hostschlüssel ändern, IP-Änderungen vorliegen oder beim Verbinden mit einem neuen Server. Um diese Probleme zu lösen:
Einträge entfernen: Um einen bestimmten Eintrag aus
known_hosts
zu entfernen, verwenden Sie:ssh-keygen -R hostname
Gesamte
known_hosts
löschen: Dieser Befehl löscht die gesamteknown_hosts
-Datei:> ~/.ssh/known_hosts
Wichtige SSH-Befehle
ssh-agent
Der ssh-agent
ist ein Programm, um private Schlüssel für die öffentliche Schlüsselauthentifizierung zu speichern. Er ermöglicht die Verwendung von Schlüsseln, ohne Passphrasen erneut eingeben zu müssen.
eval $(ssh-agent)
ssh-add ~/.ssh/id_rsa
scp
- Sicheres Kopieren
scp
überträgt Dateien sicher zwischen einem lokalen und einem entfernten Host.
scp /pfad/zur/lokalen/datei benutzer@hostname:/pfad/zum/entfernten/verzeichnis
sshfs
- SSH-Dateisystem
sshfs
ermöglicht das Einhängen eines entfernten Dateisystems über SSH.
sshfs benutzer@hostname:/entferntes/verzeichnis /lokales/einhängepunkt
Die Verwendung von SSH unter Linux bietet eine sichere und vielseitige Möglichkeit, mit entfernten Systemen zu interagieren. Durch das Verständnis seiner Grundlagen und Befehle können Benutzer entfernte Maschinen effizient und sicher navigieren und verwalten.
Erstellt am: Jan. 7, 2024
Mehr zu diesem Thema entdecken:
- Verwendung des Tar-Befehls zur Dateiarchivierung in Linux
- Methoden zur Überprüfung der Linux-Distribution und Kernel-Version
- Verständnis des `kill`-Befehls in Linux
- Verständnis des `ps`-Befehls in Linux
- Essentielle Linux-Netzwerk-Befehle für Webmaster