Configurar OSX Firewall para permitir el servidor SSH?

10

Si enciendo mi firewall OSX, no se permite ssh. Si lo apago, ssh puede conectarse bien. Estas son las configuraciones del host ssh : aunque no sé lo que estoy haciendo, pensé que dar /usr/sbin/sshd"Permitir conexiones entrantes" (junto con "Inicio de sesión remoto (SSH)") sería suficiente, pero no lo es. ¿Qué más tengo que incluir para ssh (sshd? No estoy seguro) para permitir conexiones?

La pantalla de configuración del firewall en OSX

Estoy configurando ssh exclusivamente a través del menú para compartir, "Inicio de sesión remoto" en las Preferencias del sistema.

Dan Rosenstark
fuente
Como se indicó aquí ( debates.apple.com/thread.jspa?threadID=2174585 ), eliminar sshd-keygen-wrapper, reiniciar y decir sí a ssh-keygen-wrapper (aunque ya estaba configurado en yes) parece funcionar.
Dan Rosenstark

Respuestas:

9

También he visto esto: parece que el firewall de aplicaciones OSX se está confundiendo. Logré poner en marcha el mío haciendo lo siguiente:

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

Luego reiniciar.

Una vez que la máquina vuelve a funcionar, cuando vaya a Firewall> Configuración avanzada, solo debería ver los servicios del sistema que ha habilitado (en su caso, SSH y Uso compartido de pantalla). El resto de las entradas se habrán ido, pero cuando inicie cualquier aplicación que necesite acceder a través del firewall, OSX le pedirá que permita la aplicación o no nuevamente y luego deberá agregarla nuevamente a la lista de excepciones del firewall (si permite que ingrese conexiones).

Pierz
fuente
Descubrí que si ejecuta "sudo ipfw -f flush" y luego cierra y vuelve a abrir Preferencias del sistema, puede evitar el paso de reiniciar.
Mark E. Haase
7

Los siguientes comandos me funcionaron en Yosemite

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

Intenta conectarte a tu Mac a través de SSH. Debería ver una entrada denegada, en mi caso 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

Luego simplemente agregue / usr / libexec / sshd-keygen-wrapper (como lo sugiere mehaase) a la lista de aplicaciones permitidas, pero no es necesario reiniciar

Para volver a cambiar el nivel de registro

./socketfilterfw --setloggingopt throttled
Chad
fuente
6

En mi caso, agregué / usr / libexec / sshd-keygen-wrapper a la configuración del firewall y reinicié.

Encontré la idea aquí: https://discussions.apple.com/thread/2174585?threadID=2174585

Una buena técnica de solución de problemas: abra Console.app y mire /var/log/appfirewall.log (o tail -f /var/log/appfirewall.log desde la línea de comandos).

Mark E. Haase
fuente
(Para OSX 10.11) arrastrar y soltar /usr/libexec/sshd-keygen-wrapperdesde el buscador en la ventana de diálogo Preferencias del sistema> Seguridad y privacidad [Cortafuegos] (Opciones de cortafuegos) me arregló esto, después de apagar y encender sshd en las preferencias del diálogo para compartir también.
jimmont
2

En El Capitan 10.11.5, sshd-keygen-wrapperestaba en la lista de conexiones permitidas, pero estaba configurado para bloquear. Solo fue necesario configurarlo para permitir, y el inicio de sesión SSH remoto funcionó. No se requiere reiniciar.

CCryder66
fuente
La misma solución simple para 10.11.6. ¡Gracias!
TomEE