Saltar al contenidoHisnLabs
← Endurecimiento de macOS, configuración por configuración

Lección 4 de 5 · 9 min

Servicios, compartición y puertos abiertos

Desactiva los servicios de compartición que no usas, comprueba qué está realmente a la escucha de conexiones, y activa el Firewall de Aplicaciones.

Cada servicio de compartición que dejas activado es un pequeño servidor de red ejecutándose en tu Mac, a la espera de que alguien se conecte a él. La mayoría de la gente activa uno una vez, para una tarea, y nunca lo desactiva. Esta lección cubre cómo encontrarlos y cerrarlos, y luego añadir un firewall encima como segunda capa.

Servicios de compartición

En el macOS actual, los servicios de compartición viven en Ajustes del Sistema → General → Compartir en red: Compartir archivos, Compartir pantalla, Inicio de sesión remoto (SSH), Gestión remota, Compartir contenido multimedia, Almacenamiento en caché de contenido, Compartir internet, Compartir impresoras, y algunos otros según el Mac. Cada uno está desactivado por defecto y sigue así hasta que lo activas por un motivo concreto, como enviar un archivo a otro Mac de la misma red o dejar que alguien te ayude conectándose en remoto.

  • Si activaste Compartir archivos una vez para mover archivos entre dos Mac, o Compartir pantalla para que alguien te ayudara, vuelve a desactivarlo desde ese mismo panel de Compartir en red cuando termines.
  • Inicio de sesión remoto abre acceso SSH a tu Mac. La propia documentación de Apple al respecto dice sin rodeos que “permitir el inicio de sesión remoto en tu Mac puede hacerlo menos seguro”. Déjalo desactivado a menos que necesites conectarte específicamente a este Mac desde otro lugar.
  • Si varios de estos aparecen activados y no recuerdas haberlos activado, eso ya merece por sí solo una revisión.

Ver qué está realmente a la escucha

Desactivar los servicios de compartición en Ajustes del Sistema cierra aquellos para los que Apple expone un interruptor, pero otro software (un servidor multimedia, una herramienta de desarrollo, un controlador de impresora) puede abrir sus propios puertos a la escucha sin preguntar. lsof (list open files, que en Unix incluye los sockets de red) puede mostrarte cada proceso que en este momento espera una conexión TCP entrante:

Terminal
lsof -iTCP -sTCP:LISTEN -n -P
COMMAND     PID   USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
rapportd   1442 admin   15u  IPv4  ...       0t0  TCP *:64654 (LISTEN)
ControlCe  1775 admin    9u  IPv4  ...       0t0  TCP *:7000 (LISTEN)

Cada línea es un proceso a la escucha en un puerto: el nombre del comando, su identificador de proceso, la dirección a la que está asociado (* significa todas las interfaces de red, 127.0.0.1 significa solo conexiones locales) y el número de puerto tras los dos puntos. -n y -P le dicen a lsof que muestre direcciones y números de puerto en bruto en lugar de resolverlos, lo cual es a la vez más rápido y más claro. Un puerto asociado solo a 127.0.0.1 solo es accesible desde el propio Mac; uno asociado a * puede, si la red lo permite, ser accesible desde otros dispositivos. Algunas entradas serán servicios en segundo plano del propio Apple (como el ayudante de AirDrop/Handoff rapportd, o el receptor de AirPlay del Centro de Control); las que merece la pena cuestionar son las apps que instalaste tú y que no esperabas que estuvieran a la escucha en absoluto.

El Firewall de Aplicaciones

El Firewall de Aplicaciones, en Ajustes del Sistema → Red → Firewall, es una segunda capa además de cerrar los servicios sin uso: en lugar de bloquear por número de puerto, decide por cada app si esa app puede aceptar conexiones entrantes en absoluto. Apple lo describe como una protección del Mac “frente al contacto no deseado iniciado por otros ordenadores cuando estás conectado a internet o a una red”, permitiéndote a la vez dejar pasar apps o servicios concretos.

Soporte de Apple: cambiar los ajustes de Firewall en Mac.
Opción del firewallQué hace
Bloquear todas las conexiones entrantesImpide las conexiones entrantes a servicios y apps no esenciales, dejando solo los servicios básicos que el Mac necesita para encontrar a otros ordenadores en la red.
Permitir automáticamente el software firmadoDeja que las apps integradas o descargadas y firmadas con un certificado válido reciban conexiones entrantes sin preguntar. Desactivar esto significa más avisos, pero menos excepciones silenciosas.
Activar el modo sigilosoImpide que el Mac responda a solicitudes de sondeo, incluido ping (ICMP), que en otro caso podrían usarse para detectar que existe en una red.

Puedes comprobar el estado actual del firewall desde Terminal sin cambiar nada:

Terminal
/usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate
Firewall is enabled. (State = 1)
/usr/libexec/ApplicationFirewall/socketfilterfw --getstealthmode
Firewall stealth mode is off

Activar el firewall y activar el modo sigiloso requieren ambos una contraseña de administrador; los comandos --get de solo lectura anteriores no cambian nada.

Lo esencial

  • Los servicios de compartición (Compartir archivos, Compartir pantalla, Inicio de sesión remoto y otros) viven en Ajustes del Sistema → General → Compartir en red, están desactivados por defecto y deberían volver a desactivarse una vez terminada una tarea concreta.
  • `lsof -iTCP -sTCP:LISTEN -n -P` enumera cada proceso actualmente a la escucha de conexiones TCP entrantes, para que puedas detectar puertos que no esperabas que estuvieran abiertos.
  • Un puerto asociado a `127.0.0.1` es solo local; uno asociado a `*` puede en potencia ser accesible desde la red.
  • El Firewall de Aplicaciones controla las conexiones entrantes por app; el modo sigiloso impide que el Mac responda a sondeos como ping.
  • El Firewall de Aplicaciones no filtra las conexiones salientes.

Ponte a prueba

  1. 1. ¿Qué muestra `lsof -iTCP -sTCP:LISTEN -n -P`?

    • Todos los archivos que se han abierto alguna vez en el Mac
    • Cada proceso actualmente a la escucha de conexiones TCP entrantes, con su puerto — Correcto.
    • Una lista de direcciones IP bloqueadas
    • La contraseña del Wi-Fi del Mac

    Esta combinación exacta de opciones filtra `lsof` para mostrar solo procesos con un socket TCP abierto a la escucha, con direcciones y puertos en bruto.

  2. 2. Un puerto a la escucha mostrado como `127.0.0.1:5432` significa qué?

    • Es accesible desde cualquier dispositivo de internet
    • Es accesible solo desde el propio Mac — Correcto.
    • Es un servicio Bluetooth
    • Ha sido bloqueado por el firewall

    127.0.0.1 es la dirección de loopback: las conexiones a ella solo pueden originarse en la misma máquina.

  3. 3. ¿Qué controla principalmente el Firewall de Aplicaciones de macOS?

    • Las conexiones salientes que hacen las apps hacia internet
    • Las conexiones entrantes hacia apps y servicios del Mac — Correcto.
    • Las solicitudes de emparejamiento Bluetooth
    • Qué sitios web se pueden visitar

    El Firewall de Aplicaciones decide, por cada app, si se permiten las conexiones entrantes no solicitadas; no filtra lo que las apps envían al exterior.

Ponlo en práctica con FireAI

Pon esta lección en práctica en tu propio Mac.

Fuentes

Ponlo en práctica en tu Mac

Prueba todas las funciones gratis durante 17 días, sin tarjeta.

Descargar para Mac Docs