Como funciona el Firewall de tu Mac y cómo configurarlo correctamente

El firewall integrado en macOS funciona de una forma un tanto diferente al de otras aplicaciones tradicionales. En un entorno clásico un firewall monitoriza las conexiones entrantes y salientes y trabaja con esas conexiones, independientemente de la aplicación, por lo que a la hora de configurarlo es necesario conocer cómo se comunica cada aplicación y aplicar reglas para filtrar esa comunicación.

Para explicarlo de una forma para humanos, imagina una autopista por la que se mueve nuestra información. Al inicio de la autopista hay una patrulla de la Guardia Civil controlando quien entra y quien sale y en las condiciones en que lo hace mientras, y de la misma manera, en todas las salidas mientras todo el tráfico se mueve en una dirección u otra.

La aproximación del firewall integrado del Mac es diferente. En lugar de trabajar con toda la autopista, trabaja directamente con cada aplicación, aislándola del resto de aplicaciones a la hora de tomar decisiones, de forma que en lugar de tener una gran autopista y controlar todo el tráfico, gestiona la seguridad punto a punto, creando rutas entre una aplicación y su destino, como si fueran carreteras separadas, de forma que el usuario puede decidir en el interfaz (mínimo) de la aplicación como se comportará cada aplicación por su carretera propia.

Activar el firewall es sencillo: vamos a Preferencias del sistema > panel de control de Seguridad y privacidad y en la pestaña de Firewall nos identificamos como usuario administrador para a continuación activarlo y poder acceder, una vez encendido, a los ajustes.

Los ajustes

la primera casilla con la que nos vamos a encontrar es Bloquear todas las conexiones entrantes. Al marcar esta casilla, tal como se indica el texto que acompaña a la misma, se bloquea todo el tráfico entrante en el ordenador salvo una serie de tipos de conexiones necesarias para una operación mínima del ordenador en una red. Si bloqueáramos todo el tráfico entrante podríamos, por ejemplo, no recibir una IP del servidor DHCP y nuestro ordenador no podría conectarse a nuestra red de área local y luego, a internet. Básicamente al marcar esta casilla estamos activando un sistema de seguridad que nos permite trabajar con los servicios mínimos, pero su comportamiento al respecto del tráfico que dejará pasar o interrumpirá dependerá de los ajustes a continuación.

¿Por qué bloquea solo el tráfico entrante? Es una cuestión de rendimiento. Imagina por ejemplo que tienes un malware instalado que intenta comunicarse con un servidor de Comando y Control remoto. El malware será capaz de llamar a casa (conexión saliente) pero cuando reciba la respuesta, el firewall la interceptará y no permitirá el paso de información.

Inmediatamente después de esta casilla tendremos una lista de aplicaciones que se conectan a internet y que están filtradas. La lista se irá llenando conforme vayas añadiendo aplicaciones tanto de forma automática como manual, pero pertenecer y aparecer en esta lista de forma automática depende del desarrollador, que añade con el instalador la aplicación a esta lista sin poder definir reglas específicas de conexión (lo que sería un grave problema de seguridad), abrazando los ajustes definidos por defecto por Apple o aquellos que haya configurado el usuario.

De hecho, puedes añadir de forma manual aplicaciones al firewall para poder gestionar la conexión de aplicaciones. Tan sencillo como pulsar en el icono “+” y añadir la aplicación o scripts que se ejecutan como aplicaciones (lo que incluye, por ejemplo, Applescript ejecutados como aplicaciones, los propios Applescripts, servicios de Automator que hayas podido crear, scripts .sh con permisos de ejecución, daemons, LaunchAgents, etc.)

De nuevo, el firewall del Mac trabaja alrededor de la aplicación, no de la conexión general, de forma que cada aplicación puede configurarse para:

  • Permitir las conexiones entrantes, lo que resulta evidente por su propio significado.
  • Bloquear las conexiones entrantes: la aplicación podrá llamar fuera, pero la contestación de los servidores será bloqueada.

Cuando eres un paranoico de la seguridad, pero no sabes lo que te traes en tus manos, puedes crearte problemas configurando inadecuadamente esta sección de los ajustes del firewall. Si no te funciona Dropbox no es culpa del Mac, de Dropbox o de tu proveedor de internet: en algún momento pensaste que era una buena medida de seguridad bloquear las conexiones entrantes sin tener muy claro lo que estabas haciendo. En seguridad, tan peligroso es quien se la toma a la ligera y deja todas las puertas abiertas como quien se pasa a la hora de cerrar puertas sin saber lo que está haciendo (para inevitablemente, acusar posteriormente a todo el mundo de su incompetencia).

A continuación tenemos tres casillas que determinan el paso o no de información aprovechando una característica del propio sistema y sus aplicaciones, el firmado de código.

En tu Mac, las aplicaciones están firmadas. Esto quiere decir que en su interior hay un archivo que define quién creó esa aplicación y firma el código de la misma de forma que si una aplicación lo altera, inmediatamente deje de funcionar. Este sistema de seguridad está en la ruta:

App/Contents/_CodeSignature/CodeResources

Esta es una medida de seguridad para autenticar cada aplicación que se ejecuta en el Mac y tanto las aplicaciones de Apple como la de desarrolladores de terceros deben estar firmadas para poder ejecutarse y en este caso, esta firma es utilizada por el firewall para determinar si es legítima y por lo tanto, puede conectarse a internet y enviar (y sobre todo, recibir) información.

Las dos primeras casillas precisamente trabajan en este sentido. La primera – Permitir automáticamente que el software integrado reciba conexiones entrantes- permite que todo el software firmado por Apple, tanto las aplicaciones que tú utilizas como otras muchas que se ejecutan en segundo plano y que tu no ves pero que permiten funcionar correctamente al sistema (como por ejemplo las llamadas a los servidores de Apple para actualizar Xprotect) pueda comunicarse con Internet y enviar y recibir información.

La segunda casilla – Permitir automáticamente que el software formado descargado reciba conexiones entrantes – realiza la misma tarea pero trabaja con software firmado no por Apple. ¿Cómo funciona esto? Cuando un desarrollador crea una aplicación usando las herramientas de desarrollo de Apple, requiere de un perfil de desarrollador atado a una serie de certificados: cuando la aplicación se compila para disponer de un binario ejecutable, la aplicación se firma con su nombre de forma que hay siempre a quien reclamar, porque cada cuenta de desarrollador está atada a una persona o empresa y a un método de pago.

Esto no quiere decir que no hayan ocurrido casos de malware firmados con perfiles falsos (una cuenta falsa de desarrollador de Apple creada con una persona ficticia y pagada con una tarjeta de crédito robada) pero no son casos muy habituales y las aplicaciones atadas a ese tipo de perfil no las vas a encontrar en la Apple Store.

La última casilla activa el modo encubierto. ¿Cómo funciona? Esta es fácil: imagina a esa gente que va llamando por las puertas de tu edificio en busca de que haya alguien en casa para intentar vender cualquier cosa. Esta casilla bloquea de forma efectiva ese tipo de llamadas aleatorias en busca de una puerta. No desactiva el timbre, oculta totalmente que ahí hay una puerta de forma que el vendedor solo vería una pared. Solo sabiendo que realmente ahí hay una puerta intentaría entrar, pero como “el modelo de negocio” es intentar llamar a tantas puertas como sea posible, dará por sentado de forma rápida que ahí no hay nadie, solo una pared, y buscará a continuación la puerta del vecino.

El bloqueo de las conexiones entrantes que usan ICMP no es, sin embargo, una política puntual de un ordenador sino que se debe aplicar de forma general a todos los dispositivos. Te explico por qué: imagina que el comercial llega a tu rellano y ve que hay una puerta A (un ordenador con su IP), una puerta B (otro ordenador con su IP), y una puerta D (otro ordenador con su IP). El sentido común y su conocimiento de cómo se construye una casa (o como se construye una red y cómo se asignan IPs) le dice: “aquí falta la puerta C y si la puerta está escondida, es aquí donde está lo importante, así que a ver dónde está el timbre”. Pensando que estamos ocultando nuestro ordenador lo único que estamos haciendo es llamar la atención sobe la importancia del mismo.

Un consejo más: en seguridad, tan malo es no protegerse adecuadamente como sobreprotegerse cuando no sabes que estás haciendo. Tener una serie de políticas de seguridad, propias o adoptadas de entornos razonables te ayudarán a proteger tu conexión, pero de nuevo, el histerismo por la seguridad no será nunca tu aliado sino una carga pesada que tendrás que llevar contigo y que no te va a ayudar en nada.

0 0 votos
Article Rating
Subscribe
Notify of
3 Comments
Oldest
Newest Most Voted
Opiniones Inline
Ver todos los comentarios
franctastic
franctastic
6 years ago

hola Carlos.
le dice: “aquí falta la puerta D y si la puerta está escondida, es aquí donde está lo importante, así que a ver dónde está el timbre”

no deberia ser la puerta C?

salut!

Casiquedetodo
Casiquedetodo
Responder a  franctastic
4 years ago

Carlos:
Estupendo artico, didáctico y ameno, muchísimas gracias, es interesantísimos, gracias.

Bertux
Bertux
3 years ago

Una duda que me queda. ¿las conexiones salientes no es importante bloquearlas también? porque veo no te deja hacerlo de forma fácil como con las conexiones entrantes. ¿fijo que podemos pasar de las salientes?
Puede que sea un paranoico de la seguridad jajajaja.

3
0
Me encantaría saber tu opinión, por favor, deja un comentariox
()
x