OSX-Firewall so konfigurieren, dass SSH-Server zugelassen werden?

10

Wenn ich meine OSX-Firewall einschalte, ist ssh nicht zulässig. Wenn ich es ausschalte, kann ssh eine gute Verbindung herstellen. Dies sind die Einstellungen vom ssh- Host : Obwohl ich nicht weiß, was ich tue, dachte ich, dass /usr/sbin/sshdes ausreichen würde , "Eingehende Verbindungen zulassen" (zusammen mit "Remote Login (SSH)") zu geben, aber das ist nicht der Fall. Was muss ich noch einschließen, damit ssh (sshd? Nicht sicher) Verbindungen zulässt?

Der Firewall-Konfigurationsbildschirm unter OSX

Ich konfiguriere ssh ausschließlich über das Freigabemenü "Remote Login" in den Systemeinstellungen.

Dan Rosenstark
quelle
Wie hier angegeben ( diskussions.apple.com/thread.jspa?threadID=2174585 ), scheint das Löschen von sshd-keygen-wrapper, das Neustarten und das Ja-Sagen zu ssh-keygen-wrapper (obwohl es bereits auf yes gesetzt war) zu funktionieren.
Dan Rosenstark

Antworten:

9

Ich habe das auch gesehen - Es scheint, dass die OSX Application Firewall verwirrt wird. Ich habe es geschafft, meine in Gang zu bringen, indem ich Folgendes getan habe:

sudo rm /Library/Preferences/com.apple.alf.plist

Dann neu starten.

Sobald der Computer wieder hochgefahren ist und Sie zu Firewall> Erweiterte Einstellungen wechseln, sollten nur die von Ihnen aktivierten Systemdienste angezeigt werden (in Ihrem Fall SSH und Bildschirmfreigabe). Der Rest der Einträge ist verschwunden. Wenn Sie jedoch Anwendungen starten, die Zugriff über die Firewall benötigen, werden Sie von OSX aufgefordert, die Anwendung zuzulassen oder nicht, und sollten dann wieder zur Liste der Firewall-Ausnahmen hinzugefügt werden (sofern Sie den Eingang zulassen) Verbindungen).

Pierz
quelle
Ich habe festgestellt, dass Sie den Schritt des Neustarts vermeiden können, wenn Sie "sudo ipfw -f flush" ausführen und dann die Systemeinstellungen schließen und erneut öffnen.
Mark E. Haase
7

Die folgenden Befehle haben bei Yosemite für mich funktioniert

cd /usr/libexec/ApplicationFirewall
sudo ./socketfilterfw --setloggingmode on
sudo ./socketfilterfw --setloggingopt detail
sudo tail -f /var/log/appfirewall.log

Versuchen Sie, über SSH eine Verbindung zu Ihrem Mac herzustellen. Sie sollten einen Verweigerungseintrag sehen, in meinem Fall sshd-keygen-wrapper

Oct 27 15:22:12 myhost socketfilterfw[4940] <Info>: Deny sshd-keygen-wrapper connecting from 192.168.0.2:49470 to port 22 proto=6

Fügen Sie dann einfach / usr / libexec / sshd-keygen-wrapper (wie von mehaase vorgeschlagen) zur Liste der zulässigen Anwendungen hinzu, es ist jedoch kein Neustart erforderlich

Um die Protokollierungsstufe zurückzuschalten

./socketfilterfw --setloggingopt throttled
Tschad
quelle
6

In meinem Fall habe ich / usr / libexec / sshd-keygen-wrapper zu den Firewall-Einstellungen hinzugefügt und neu gestartet.

Ich fand die Idee hier: https://discussions.apple.com/thread/2174585?threadID=2174585

Eine gute Technik zur Fehlerbehebung: Öffnen Sie Console.app und beobachten Sie /var/log/appfirewall.log (oder tail -f /var/log/appfirewall.log über die Befehlszeile).

Mark E. Haase
quelle
(Für OSX 10.11) Das Ziehen und Ablegen /usr/libexec/sshd-keygen-wrapperaus dem Finder in das Dialogfenster Systemeinstellungen> Sicherheit und Datenschutz [Firewall] (Firewall-Optionen) hat dies für mich behoben - nachdem sshd auch in den Einstellungen des Freigabedialogs aus- / eingeschaltet wurde.
Jimmy
2

In El Capitan 10.11.5 sshd-keygen-wrapperwar in der Liste der erlaubten Verbindungen, wurde aber auf Block gesetzt. Es musste nur so eingestellt werden, dass es zulässig war, und die Remote-SSH-Anmeldung funktionierte. Kein Neustart erforderlich.

CCryder66
quelle
Gleiche, einfache Lösung für 10.11.6. Vielen Dank!
TomEE