Skonfigurować zaporę OSX, aby zezwolić na serwer SSH?

10

Jeśli włączę zaporę OSX, ssh jest niedozwolone. Jeśli go wyłączę, ssh może się połączyć. Są to ustawienia z hosta ssh : chociaż nie wiem, co robię, pomyślałem, że podanie /usr/sbin/sshd„Zezwalaj na połączenia przychodzące” (wraz z „Zdalnym logowaniem (SSH)”) byłoby wystarczające, ale nie jest. Co jeszcze muszę podać, aby ssh (sshd? Nie jesteś pewien), aby umożliwić połączenia?

Ekran konfiguracji zapory w OSX

Konfiguruję ssh wyłącznie poprzez menu udostępniania „Logowanie zdalne” w Preferencjach systemowych.

Dan Rosenstark
źródło
Jak stwierdzono tutaj ( dyskusje.apple.com/thread.jspa?threadID=2174585 ), usuwanie sshd-keygen-wrapper, restartowanie i mówienie tak do ssh-keygen-wrapper (chociaż było już ustawione na tak) wydaje się działać.
Dan Rosenstark,

Odpowiedzi:

9

Też to widziałem - Wygląda na to, że Zapora aplikacji OSX się myli. Udało mi się uruchomić mój, wykonując następujące czynności:

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

Następnie uruchom ponownie.

Po ponownym uruchomieniu komputera, po przejściu do Zapory> Ustawienia zaawansowane, powinny być widoczne tylko te usługi systemowe, które zostały włączone (w twoim przypadku SSH i udostępnianie ekranu). Reszta wpisów zniknie, ale kiedy uruchomisz dowolną aplikację wymagającą dostępu przez zaporę, OSX poprosi cię o zezwolenie na aplikację lub nie, a następnie powróci do listy wyjątków zapory (jeśli zezwolisz na jej przychodzące znajomości).

Pierz
źródło
Odkryłem, że jeśli uruchomisz polecenie „sudo ipfw -f flush”, a następnie zamkniesz i ponownie otworzysz Preferencje systemowe, możesz uniknąć ponownego uruchamiania komputera.
Mark E. Haase,
7

Poniższe polecenia działały dla mnie w Yosemite

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

Spróbuj połączyć się z komputerem Mac przez SSH. Powinieneś zobaczyć wpis odmowy, w moim przypadku 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

Następnie po prostu dodaj / usr / libexec / sshd-keygen-wrapper (zgodnie z sugestią mehaase) do listy dozwolonych aplikacji, ale nie ma potrzeby ponownego uruchamiania

Aby przywrócić poziom rejestrowania z powrotem

./socketfilterfw --setloggingopt throttled
Czad
źródło
6

W moim przypadku dodałem / usr / libexec / sshd-keygen-wrapper do ustawień zapory i zrestartowałem.

Znalazłem pomysł tutaj: https://discussions.apple.com/thread/2174585?threadID=2174585

Jedna dobra technika rozwiązywania problemów: otwórz Console.app i obejrzyj /var/log/appfirewall.log (lub tail -f /var/log/appfirewall.log z wiersza poleceń).

Mark E. Haase
źródło
(Dla OSX 10.11) przeciąganie i upuszczanie /usr/libexec/sshd-keygen-wrapperz wyszukiwarki do okna dialogowego Preferencje systemowe> Bezpieczeństwo i prywatność [Zapora] (Opcje zapory) naprawiło to dla mnie - po wyłączeniu / włączeniu sshd w oknie dialogowym udostępniania również.
styczeń
2

W El Capitan 10.11.5 sshd-keygen-wrapperznajdował się na liście dozwolonych połączeń, ale został ustawiony na blokowanie. Trzeba było tylko ustawić ją na zezwolenie, a zdalne logowanie SSH działało. Ponowne uruchomienie nie jest wymagane.

CCryder66
źródło
Ta sama prosta poprawka do 10.11.6. Dzięki!
TomEE