Es gibt zwei Möglichkeiten, wie ich SSH-Daten verwalte oder von Personen verwaltet habe:
Gute alte, Befehlszeile, Klartext, ssh_config- Datei.
Erstellen Sie eine Datei mit dem Namen config
inside ~/.ssh
. Sie können globale Parameter angeben, indem Sie sie über alle Hostdeklarationen setzen. Als ich anfing, MacPorts zu verwenden , musste ich explizit einen privaten SSH-Schlüssel definieren, der beim Verbinden automatisch verwendet wird, also als allererste Zeile der Datei, die ich eingefügt habe.
IdentityFile ~/.ssh/id_rsa
Wenn Sie benutzerdefinierte Regeln für Hosts definieren (und * sogar als Platzhalter verwenden können), sieht dies ungefähr so aus:
Host prod-*
User jason
Port 2222
LocalForward 5901 localhost:5901
IdentityFile ~/.ssh/work-id_rsa
Wenn ich dann ssh prod-script
zum Beispiel starte, werden alle anderen Regeln automatisch angewendet.
Viele Leute, die nicht alle ihre Sachen so umständlich manuell verwalten wollen, finden JellyfiSSH schnell . ( Mac App Store Link . Dieselben Leute waren auch sehr verärgert, als es nicht mehr kostenlos heruntergeladen werden konnte.)
Mit JellyfiSSH erhalten Sie über die GUI Zugriff auf fast alles, was in der Befehlszeile oder in der Datei ssh_config angegeben werden kann. JellyfiSSH ist nur eine Konfigurationsspeicher-App für Organisationszwecke, da sie die Befehle basierend auf den von Ihnen festgelegten Optionen generiert und beim Klicken auf Verbinden ein neues Terminalfenster mit allen in der Befehlszeile definierten Optionen öffnet. JellyfiSSH ist keine eigenständige Terminal-App.
man ssh_config
Ihrer Information : Über das Terminal werden Informationen zu OpenSSH SSH-Client-Konfigurationsdateien bereitgestellt, die in Ihrer aktuellen Systeminstallation verfügbar sind. Was zum Zeitpunkt des Kommentars aktueller ist als der obige Entwicklerlink.Sie können Dateien erstellen, z. B.
Example.command
ausführbar machen:chmod 755 Example.command
und auf die Datei doppelklicken, um eine Verbindung herzustellen:Wenn Sie nur über einen Alias (leicht zu merkendes Wort) eine Verbindung über die Befehlszeile herstellen möchten, können Sie diese in ~ / .ssh / config einrichten
Dann können Sie über den Host eine Verbindung herstellen
foo
Oder Sie können einfach Funktionen in Ihrer Shell-Konfigurationsdatei (~ / .bashrc oder ~ / .zshenv) erstellen:
Dann können Sie eine Verbindung herstellen,
example.com
indem Sie einfachs1
in die Befehlszeile tippen, und es wird die Ausführlichkeit der Stufe 1 verwendet.Schließlich könnten Sie die automatische Vervollständigung von ssh verwenden, aber die Syntax dafür hängt von der Shell Ihrer Wahl ab. Eine schnelle Google-Suche nach "ssh autocomplete YourShellHere" sollte einige Beispiele liefern.
Verwenden Sie eine Passphrase und den OS X-Schlüsselbund
Das Wichtigste, IMO, ist, ssh so einzurichten, dass es mit einer Passphrase arbeitet. OS X verfügt seit Leopard über eine hervorragende integrierte Schlüsselbundintegration.
(Quelle: http://www.paosborne.com/blog/?p=369 .)
Wenn Sie dann auf einen neuen Computer ssh, werden Sie vom OS X-Schlüsselbund zur Eingabe Ihrer ssh-Passphrase aufgefordert
Eine ausführlichere Beschreibung finden Sie auch unter http://www.dribin.org/dave/blog/archives/2007/11/28/ssh_agent_leopard/ . Der Artikel ist älter, aber Lion funktioniert genauso.
Dropbox nicht vergessen
Wenn Sie sich bei mehreren Computern anmelden, können Sie Ihre
~/.ssh/config
Datei über Dropbox synchronisieren . Ich behalte meine~/Dropbox/etc/ssh/config.txt
und dann mache ich:Ich mache das gleiche wie mit meinem ~ / .zshenv:
Tatsächlich habe ich alle meine Shell-Skripte in ~ / Dropbox / bin / abgelegt und das auch zu meinem $ PATH hinzugefügt, um alle meine Basen abzudecken.
quelle
Sie können die vSSH- App für Mac OS X ( PuTTY- basiert) ausprobieren .
Verfügbar im Mac AppStore .
quelle