Host-Alias ​​für ssh


45

Es gibt ein paar SSH-Ziele, mit denen ich mich häufig verbinde, und ich frage mich, ob ich keinen Host-Alias ​​für diese Ziele erstellen kann, anstatt mich an die IP-Adresse zu erinnern. Ich möchte in der Lage sein, zu verwenden ...

ssh -p xx user@domain.ssh

Ich habe versucht, diesen Host in /etc/hostseinzurichten, und es hatte keine Auswirkung, es sei denn, es gibt einen Dienst, den ich zum Neustart benötigte.


Dies sollte gut funktionieren. Fügen Sie den Eintrag in die Datei / etc / hosts ein. Können Sie den Host tatsächlich über den Alias ​​anpingen (wenn die Firewall icmp nicht blockiert)?
Terry Wang

Antworten:


60

Manchmal ist es bequemer, Konfigurationsdateien in unserem Home-Verzeichnis zu haben. Auf diese Weise müssen Sie nicht als Root angemeldet sein, um Dateien bearbeiten zu können. Außerdem können Sie so konfiguriert werden, dass andere Benutzer keinen Zugriff auf diese Daten haben. Zusätzlich wird diese Konfiguration mit unserem Haus gesichert und wird auch ein OS-Upgrade "überleben".

Dazu können wir eine SSH-Konfigurationsdatei erstellen, nano ~/.ssh/configin die wir wertvolle Informationen für eine Verbindung eingeben können. Ein einfacher Eintrag kann folgenden Inhalt haben:

Host myremote             # any name for the host
HostName 192.168.178.05   # IP, .local, or hostname if defined
User username             # your username
Port 22                   # port to listen

Es gibt viele andere Optionen, einschließlich Benutzer und Authentifizierung, die Sie hier angeben können (siehe Manpage für ssh_config ).

Wir können dann einfach Folgendes ausgeben, um eine Verbindung zu 192.168.178.05 auf Port 22 herzustellen:

ssh myremote

2
Beachten Sie, dass Sie auch mehr als eine Host-ID zuweisen können, z Host myremote 192.168.178.05. Auf diese Weise werden Ihre Einstellungen verwendet, wenn Sie eine Verbindung mit dem tatsächlichen Hostnamen herstellen.
Chris

1
Vergessen Sie nicht, den Parameter 'User' (falls erforderlich) in Ihre Konfigurationsdatei einzufügen!
Ros

1
Nach ssh Befehl '.ssh / config Zeile 2: Müll am Ende der Zeile; "#". ' bedeutet, dass Sie keine Hashtags in Ihre Konfigurationsdatei aufnehmen.
Freitag,

@Takkat Wie speichern wir einen Alias ​​für mehrere Server?
Anish

@Anish Fügen Sie einfach einen weiteren Host...Abschnitt hinzu, der durch eine Leerzeile getrennt ist.
Takkat

0

Sie können einen Rubinstein namens verwenden sshez. Es verbindet Ihre Konfigurationsdatei und erleichtert das Hinzufügen von ssh-Aliasen.

Installieren Sie gem

gem install sshez

Fügen Sie einen Alias my_aliaszum Beispiel

sshez add my_alias root@example.com -p 1022

Entfernen Sie my_aliasaus Ihrer Konfigurationsdatei

sshez remove my_alias

Aliase auflisten

sshez list

Jetzt können Sie eine Verbindung zu herstellen, ssh my_aliasohne sich darum kümmern zu müssen, Ihre Konfigurationsdatei selbst zu bearbeiten.


Neueste Dokumente rubydoc.info/gems/sshez/1.0.2
Oss
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.