Cómo abrir un puerto específico en Firewall OS X 10.9.4

15

¿Cómo abro un puerto específico en el firewall? No puedo usar "Permitir conexiones desde la aplicación" ya que quiero abrir el puerto para Jenkins, eso no está en la lista ...

    
pregunta Guy 21.08.2014 - 21:50

4 respuestas

7

Los OS X Mavericks de Apple contienen tres cortafuegos. En primer lugar, el Firewall de nivel de aplicación, que se puede configurar utilizando la configuración del sistema. Pero también hay ipfw, un firewall de filtrado de paquetes como netfilter / iptables en GNU / Linux y pf (FreeBSD / OpenBSD).

Puede configurar ipfw usando la línea de comandos o usando un front-end gráfico como free / libre WaterRoof .

Puedes comenzar con un comando ipfw como:

sudo ipfw add 31010 allow tcp from any to any dst-port 8080
    
respondido por el Malte Bublitz 21.08.2014 - 22:26
21

Tuve el mismo problema con OS X Yosemite (10.10.3). Encontré esta publicación de blog que proporciona instrucciones claras. No podemos usar ipfw más, ya que está en desuso. En su lugar, use pfctl, que desafortunadamente carece de una buena forma de línea de comandos para decirle que abra un puerto. En su lugar, necesita:

  1. Abra /etc/pf.conf en un editor de texto.
  2. Agrega una línea como esta:
  

# Abra el puerto 8080 para TCP en todas las interfaces

     

pase en proto tcp desde cualquier puerto 8080

  1. Guarda el archivo.
  2. Cargar los cambios con:
  

sudo pfctl -f /etc/pf.conf

Si necesita abrir un puerto udp, cambie tcp a udp , si necesita ambos, agregue una segunda línea. Se pueden encontrar detalles adicionales en man pf.conf .

También asegúrate de que tu servidor esté escuchando en la interfaz real a la que quieres acceder (o todas las interfaces, usando 0.0.0.0 o ::0 ), no localhost ( 127.0.0.1 o ::1 ).

    
respondido por el Keen 12.04.2015 - 21:23
6

ipfw está en desuso por Apple. Mountain Lion y más tarde usan pfctl.

enlace

    
respondido por el Kent 21.08.2014 - 22:41
1

Aquí hay una sola línea en lugar de requerir que el usuario se meta con Vim. Útil para la automatización.

sed -i '' -e '$a\pass in proto tcp from any to any port 8080' /etc/pf.conf; pfctl -vnf /etc/pf.conf

O una alternativa para usuarios de Linux

sed -i -e '$a\pass in proto tcp from any to any port 8080' /etc/pf.conf; pfctl -vnf /etc/pf.conf

Solo asegúrate de cambiar 8080 en el ejemplo a lo que tengas en mente. Cambia tcp con udp si quieres.

    
respondido por el BarryMode 09.11.2016 - 18:04

Lea otras preguntas en las etiquetas