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.


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).


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

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).


(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.


Gleiche, einfache Lösung für 10.11.6. Vielen Dank!
TomEE
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.