Und so haben wir SSH-Schlüssel generiert und es ist Zeit, eine Verbindung zum Server herzustellen. Als erstes müssen die öffentlichen Schlüssel an den Server weitergeleitet werden.
ssh-copy-id -i ~/.ssh/id_rsa.pub user@serverAnstelle von user ersetzen Sie den Login Ihres Benutzers und anstelle von server geben Sie den Host oder die IP-Adresse des Remote-Servers an, zu dem Sie eine Verbindung herstellen möchten. Wenn Ihr ssh auf dem Standardport nicht funktioniert, müssen Sie den Port zusätzlich angeben.
ssh-copy-id -i ~/.ssh/id_rsa.pub '-p port user@server'Dabei ist Port der Port, auf dem Ihr SSH-Server lauscht
Das zweite, was Sie tun müssen, bevor Sie eine Verbindung herstellen, besteht darin, zu überprüfen, ob der SSH-Agent Ihre Schlüssel kennt. Dazu können Sie den folgenden Befehl verwenden:
ssh-add -l 2048 SHA256:FrcsHSW/ATlQzIhOGdU8oT/CqNJGeWZWgWYY0XA0yag igor-sverdlov@mail.ru (RSA)Wenn der erforderliche private ssh-Schlüssel nicht verfügbar ist oder Sie die Schlüssel auf einen anderen Server übertragen haben, können Sie den Schlüssel dem Agenten hinzufügen, indem Sie diesen Befehl ausführen:
ssh-add ~/.ssh/id_rsa Identity added: ~/.ssh/id_rsa (~/.ssh/id_rsa)In diesem Fall werden Sie aufgefordert, das Passwort für den Schlüssel einzugeben. Außerdem müssen Sie beim Debuggen verstehen, welchen Fingerabdruck ein bestimmter SSH-Schlüssel hat. Dazu können Sie den folgenden Befehl verwenden:
ssh-keygen -lf ~/.ssh/id_rsa.pub 2048 SHA256:FrcsHSW/ATlQzIhOGdU8oT/CqNJGeWZWgWYY0XA0yag igor-sverdlov@mail.ru (RSA)
In den meisten Fällen ist es praktisch, SSH-Schlüssel automatisch auf den Server hochzuladen. Dazu müssen Sie auf dem Client eine Konfigurationsdatei erstellen.
touch ~/.ssh/config printf "Compression yes\nForwardAgent yes">> ~/.ssh/configUm alle verfügbaren Konfigurationsoptionen anzuzeigen, können Sie den Befehl ausführen:
man ssh_config
Schließlich sind wir bereit, den Befehl ssh connect auszuführen. Es sieht aus wie das:
ssh user@serverWenn der Port der ssh-Verbindung vom Standard abweicht, kann er mit der Option . eingestellt werden -p.
ssh -p port user@serverUm die grafische Oberfläche weiterzuleiten, können Sie die Option -X.
ssh -X user@serverEs ist oft praktisch, Aliase über die config. Der Inhalt der config ~/.ssh/config sieht so aus:
Host dev Hostname server User user ForwardX11 yes Compression yes ForwardAgent yesJetzt können Sie sich mit dem folgenden Befehl mit dem Serverserver unter dem Benutzerbenutzer verbinden
ssh devSie können einen Befehl auf einem Remote-Server wie folgt ausführen:
ssh user@server command Thu 06 Jan 2022 03:11:12 PM UTCIn diesem Beispiel wurde der Datumsbefehl verwendet
ssh -f -N -L local_port:endpoint_ip:endpoint_port user@server -p ssh_port # example ssh -f -N -L 3031:127.0.0.1:8080 217.14.247.114 -p 522Wo: