Wie konfiguriere ich SSH unter OS X?

22

Ich versuche, SSH von einem Mac mit OS X 10.6 auf einen anderen zu übertragen. Scheint gut über ein Passwort zu funktionieren, aber ich kann es nicht dazu bringen, stattdessen einen RSA-Schlüssel zu verwenden. Wo befindet sich die SSH-Konfigurationsdatei unter OS X und wie lautet der Befehl zum erneuten Laden von SSH?

Aktualisieren

Ich frage, wie erweiterte Optionen konfiguriert werden. Unter Ubuntu befindet sich beispielsweise eine SSH-Konfigurationsdatei unter. /etc/ssh/sshd_configWenn Sie beispielsweise den Port ändern oder die Kennwortauthentifizierung für einen bestimmten Benutzer deaktivieren ( PasswordAuthentication no), müssen Sie diese ausführen /etc/init.d/ssh reload, um die Konfiguration neu zu laden. Ich habe diese Datei unter OS X nicht gesehen und mich nur gefragt, wo sie sich befindet. Mir ist das ~/.ssh ~/.ssh/authorized_keysund `` ~ / .ssh / config` bekannt

cwd
quelle
Mit ssh-Konfigurationsdatei meinen Sie ~/.ssh/authorized_keysdieselbe Datei wie auf jeder Plattform?
Daniel Beck
1
Und warum möchten Sie SSH neu laden? Reicht es nicht aus, die authorized_keysDatei für das Benutzerkonto zu aktualisieren, unter dem Sie sich anmelden möchten? Bitte beschreiben Sie das Problem, mit dem Sie konfrontiert sind, genauer.
Daniel Beck
1
Unter Ubuntu gibt es eine SSH-Konfigurationsdatei unter. /etc/ssh/sshd_configWenn Sie beispielsweise den Port ändern oder die Kennwortauthentifizierung für einen bestimmten Benutzer deaktivieren ( PasswordAuthentication no), müssen Sie diese ausführen /etc/init.d/ssh reload, um die Konfiguration neu zu laden. Ich habe diese Datei unter OS X nicht gesehen und mich nur gefragt, wo sie sich befindet. Mir ist bekannt, dass ~/.ssh ~/.ssh/authorized_keysund `` ~ / .ssh / config`
cwd

Antworten:

36

Die SSHD-Konfiguration wird in gespeichert

/private/etc/ssh/sshd_config

So stoppen und starten Sie SSHD:

sudo launchctl stop com.openssh.sshd
sudo launchctl start com.openssh.sshd
Kennzeichen
quelle
3
Nicht sicher , ob dies nur , weil, wie meine Maschine ist Setup oder nicht, sondern wie von OS X Mavericks der sshd Service , den ich brauchte , um anzugeben launchctlistorg.openbsd.ssh-agent
Dan Herbert
4
Ich denke du meinst /private/etc/ssh/sshd_configund /private/etc/ssh/ssh_config. Vergessen Sie nicht das SSH-Verzeichnis.
Voutasaurus
Meine Einstellungen: alias restartsshd='sudo launchctl stop com.openssh.ssh-agent; sudo launchctl start com.openssh.ssh-agent;'Holen Sie sich den launchctl list | grep openssh
Dienstnamen
3

Sie können SSH irgendwo in den Freigabedialogen neu starten, müssen dies aber nicht. Laut der Manpage auf apple.com gehen die Schlüssel in die Datei ~ / .ssh / authorized_keys.

artistoex
quelle
3

In OS X El Capitan 10.11 befindet sich sshd_config in / private / etc / ssh / sshd_config (wie / etc / ssh / sshd_config).

Peter Tseng
quelle
0

Beachten Sie, dass es in neueren OS X-Versionen nicht ausreicht, "Remote-Anmeldung" in den Systemeinstellungen> Freigabe zu aktivieren, um SSH-Verbindungen zu Ihrem Mac zuzulassen, wenn die Firewall ausgeführt wird.

Gehen Sie zu Systemeinstellungen> Sicherheit und Datenschutz> Firewall> Firewall-Optionen. Sie werden sehen, dass "Remote Login" oben aufgeführt ist und eingehende Verbindungen zulässig sind. Entgegen den Erwartungen reicht dies nicht aus. Sie müssen ein weiteres Programm hinzufügen, das ebenfalls aufgerufen wird /usr/libexec/sshd-keygen-wrapper(suchen Sie das Verzeichnis mit [Umschalt-Cmd-G]), indem Sie die Schaltfläche [+] verwenden und dann "Eingehende Verbindungen zulassen" festlegen. Jetzt können Sie SSH in Ihren Computer einbinden.

Kehlkopf Decidua
quelle