Seguridad básica en macOS: FileVault · Firewall · Gatekeeper · XProtect
Las cuatro funciones de seguridad que debes activar justo después de desempacar un Mac. Cómo funcionan el cifrado de disco, el cortafuegos, la validación de apps y la cuarentena de malware, y cómo configurarlos.
macOS tiene valores predeterminados razonables, pero una máquina de desarrollador necesita algunos interruptores más activados. FileVault (cifrado de disco), Firewall, Gatekeeper (verificación de firma) y XProtect (cuarentena de malware) son las cuatro funciones principales.
Esta guía completa una línea base de seguridad en 30 minutos después de la configuración inicial de Mac. Obligatoria para portátiles de trabajo, portátiles personales y cualquier máquina que contenga código fuente.
TL;DR
- FileVault ACTIVADO — protege los datos si el dispositivo se pierde / roba (lo más importante)
- Firewall ACTIVADO — bloquea conexiones entrantes + habilita el modo sigilo
- Gatekeeper mantén el predeterminado — solo App Store + desarrolladores identificados
- XProtect es automático — solo mantén las actualizaciones automáticas activadas
- Portátiles corporativos: (1)+(2) son obligatorios, nunca desactives (3)
Requisitos previos
- macOS 14+ (Sonoma o posterior)
- Cuenta de administrador
- Apple ID con sesión iniciada (para respaldo de clave de recuperación de FileVault)
1. FileVault — cifrado de disco (obligatorio)
1.1 Por qué es obligatorio
- Sin fuga de datos si el equipo se pierde o roba: sin la clave, el disco no tiene valor.
- macOS lo trae DESACTIVADO: Apple Silicon incluye cifrado por hardware, pero sin FileVault la clave permanece desbloqueada.
- La mayoría de las políticas de seguridad corporativas lo exigen.
1.2 Habilitar
Configuración del Sistema → Privacidad y Seguridad → FileVault → Activar
Elige una opción de recuperación:
- Permitir recuperación de iCloud (fácil; perder Apple ID = perder datos para siempre)
- Generar una clave de recuperación (28 caracteres — guárdala en algún lugar seguro, p.ej. 1Password)
Recomendación: genera una clave de recuperación y guárdala en un gestor de contraseñas. Elimina a iCloud como punto único de fallo.
El cifrado de disco se ejecuta en segundo plano después de habilitar. Puedes seguir usando la máquina, pero espera 1–2 horas de pequeña ralentización. El progreso se muestra en la misma página de configuración.
1.3 Verificar
fdesetup status
# FileVault is On.O:
diskutil apfs list | grep -i encrypted
# Encrypted: Yes (Unlocked)1.4 Advertencias
- Perder la clave de recuperación y perder el Apple ID equivale a perder los datos para siempre. Guarda la clave en dos lugares distintos.
- En portátiles corporativos, el empleador puede custodiar la clave de recuperación: consulta la política de TI.
- Los SSD externos también se pueden cifrar (
diskutil apfs encryptVolume).
2. Firewall (obligatorio)
2.1 Habilitar
Configuración del Sistema → Red → Cortafuegos → Activar
Opciones:
- Bloquear todas las conexiones entrantes — descarta casi todo (sin servicios de compartición)
- Permitir automáticamente el software firmado — apps firmadas permitidas (predeterminado recomendado)
- Habilitar modo sigilo — sin respuestas a ping/sonda (bueno en Wi-Fi público)
2.2 Perfil recomendado
| Entorno | Perfil |
|---|---|
| Hogar / red de confianza | Cortafuegos ACTIVADO + permitir automáticamente firmado |
| Oficina | Cortafuegos ACTIVADO + permitir automáticamente firmado |
| Café / aeropuerto / hotel Wi-Fi | + Modo sigilo ACTIVADO + Bloquear todas las entrantes si es posible |
2.3 Permitir entrada para apps específicas
Cuando una app necesita entrada (servidor de desarrollo, host de juego):
Cortafuegos → Opciones → + → añade la app → «Permitir conexiones entrantes»
O acepta el aviso de macOS cuando la app lo solicite por primera vez.
2.4 Verificar
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate
# Firewall is enabled. (State = 1)
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --getstealthmode
# Stealth mode enabled3. Gatekeeper — validación de apps
3.1 Qué hace
Cuando macOS lanza una app por primera vez:
- Verifica la firma de código (Apple Developer ID o App Store)
- Verifica la notarización (prueba de que el escáner de malware de Apple pasó)
- Se ejecuta solo si ambas tienen éxito
3.2 Mantén el predeterminado
Configuración del Sistema → Privacidad y Seguridad → Seguridad:
- App Store — más estricto
- App Store y desarrolladores identificados — predeterminado (recomendado)
- La opción «En cualquier lugar» se eliminó en macOS 14 (solo se puede omitir vía línea de comandos ahora)
3.3 Permitir una app sin firma una sola vez (compilaciones de desarrollo, etc.)
Para ejecutar una app sin firma una vez:
# A. Clic derecho → Abrir
# En Finder, clic derecho en la app → Abrir → haz clic en Abrir en el aviso → se lanzará desde entonces
# B. Eliminar el atributo de cuarentena (arriesgado — solo para apps de confianza)
xattr -d com.apple.quarantine /path/to/MyApp.app3.4 Deshabilitar Gatekeeper (NO LO HAGAS)
# ❌ No ejecutes esto
sudo spctl --master-disableEsto desactiva las verificaciones de firma para todas las apps y deja el sistema expuesto. Aunque seas desarrollador, no lo desactives: usa §3.3 para casos puntuales.
3.5 Verificar
spctl --status
# assessments enabled ← bien
# Verificar una app específica
spctl --assess --verbose /Applications/SomeApp.app4. XProtect — cuarentena de malware
4.1 Qué hace
Un escáner de malware en segundo plano integrado en macOS. No necesita configuración.
- Escanea automáticamente contra firmas de malware conocido
- Escanea archivos y apps descargados justo antes de ejecutarse
- Apple envía actualizaciones de definiciones silenciosamente (separadas de las actualizaciones del sistema)
4.2 Confirmar actualizaciones automáticas
Configuración del Sistema → General → Actualización de software → Actualizaciones automáticas:
- ✅ Instalar respuestas de seguridad y archivos del sistema — incluye definiciones de XProtect, debe estar ACTIVADO
4.3 Verificar
# Marca de tiempo de la última actualización de XProtect
defaults read /Library/Apple/System/Library/CoreServices/XProtect.bundle/Contents/Info CFBundleShortVersionString
# O
sudo /usr/libexec/PlistBuddy -c "Print :CFBundleShortVersionString" /Library/Apple/System/Library/CoreServices/XProtect.bundle/Contents/Info.plistUna fecha reciente estilo 2026-xx-xx es normal.
4.4 Antivirus complementario (opcional)
XProtect solo detecta malware conocido. Los ataques de día cero y sofisticados pueden escapar. Opciones:
- Malwarebytes: disponible para Mac, nivel gratuito.
- CrowdStrike / SentinelOne: EDR empresarial.
Para desarrolladores individuales, XProtect + Malwarebytes suele ser suficiente. Apilar herramientas antivirus degrada el rendimiento.
5. SIP (System Integrity Protection)
5.1 Qué hace
Evita modificaciones en las carpetas del sistema incluso como root. La auto-protección propia de macOS.
- Protege
/System,/usr - Bloquea la carga de extensiones del kernel
- Bloquea la depuración de procesos del sistema
5.2 Verificar el estado
csrutil status
# System Integrity Protection status: enabled.enabled es correcto. No lo desactives nunca: es muy peligroso.
Desactivarlo solo es posible desde la Recuperación de macOS; prácticamente ningún usuario habitual lo necesita.
6. Extras recomendados — bloqueo + bloqueo automático
6.1 Atajo de bloqueo de pantalla
Configuración del Sistema → Pantalla de bloqueo → Apagar pantalla cuando está inactivo: 5 minutos
Bloqueo rápido:
Ctrl + Cmd + Q— bloquear instantáneamente
6.2 Deshabilitar inicio de sesión automático
Configuración del Sistema → Usuarios y Grupos → Opciones de inicio de sesión:
- Inicio de sesión automático: Desactivado
6.3 Ocultar contenido de notificaciones en la pantalla de bloqueo
Configuración del Sistema → Notificaciones → Mostrar vistas previas → «Cuando está desbloqueado»
No mostrar el contenido de los mensajes desde la pantalla de bloqueo. Evita que mensajes de trabajo y códigos de verificación SMS se filtren.
7. Seguridad de claves SSH
Por defecto macOS almacena las claves SSH en texto plano en el disco. Medidas de seguridad adicionales:
7.1 Usa una frase de contraseña
# Introduce una frase de contraseña al generar
ssh-keygen -t ed25519 -C "you@example.com"Una frase de contraseña vacía es conveniente pero significa una clave utilizable instantáneamente si se filtra — no recomendado.
7.2 Usa macOS Keychain
~/.ssh/config:
Host *
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_ed25519
La frase de contraseña se almacena en macOS Keychain → ingrésala una vez, luego es automático.
7.3 Agente SSH de 1Password (opcional)
La configuración más segura. Las claves SSH viven en una bóveda de 1Password y cada autenticación requiere Touch ID.
Más información: /multi-os/password-manager.
8. Verificar — comprobación de línea base de una sola vez
echo "=== FileVault ==="
fdesetup status
echo "=== Cortafuegos ==="
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --getstealthmode
echo "=== Gatekeeper ==="
spctl --status
echo "=== SIP ==="
csrutil status
echo "=== Inicio de sesión automático ==="
defaults read /Library/Preferences/com.apple.loginwindow autoLoginUser 2>/dev/null && echo "INICIO AUTOMÁTICO ACTIVADO — desactívalo" || echo "inicio automático DESACTIVADO"Salida esperada:
FileVault is On.
Firewall is enabled. (State = 1)
Stealth mode enabled
assessments enabled
System Integrity Protection status: enabled.
inicio automático DESACTIVADO
Los cinco = línea base segura.
9. Solución de problemas
Contraseña solicitada dos veces al arrancar después de habilitar FileVault
- Normal — una vez en la etapa EFI, otra en la ventana de inicio de sesión
- Si quieres un único aviso, desactiva
Configuración del Sistema → Usuarios y Grupos → Opciones de inicio de sesión → Mostrar menú de cambio rápido de usuario
Una app deja de funcionar por el cortafuegos
- Probablemente una app que necesita entrada (servidor de desarrollo, host de juego)
Cortafuegos → Opciones → +para permitirla explícitamente- O acepta el aviso cuando lo solicite por primera vez
Gatekeeper bloquea una app de un desarrollador de confianza
- Ocurre ocasionalmente — retraso temporal en el servicio de notarización de Apple
- Intenta de nuevo en 5-30 minutos, o clic derecho → Abrir
Las definiciones de XProtect parecen desactualizadas
- Confirma que las actualizaciones automáticas de
Actualización de softwareestán ACTIVADAS - Activación manual: reiniciar
M1/M2/M3 necesita un kext sin firma
- Requiere cambiar a Seguridad Reducida (Recuperación de macOS → Utilidad de Seguridad de Arranque)
- Evítalo si es posible — busca software que no necesite un kext
«Esta app está dañada» (no se abre)
- Binario incompatible con ARM en Apple Silicon
- O una compilación de usuario sin el atributo
quarantine—xattr -cr /path/to/App.appy luego reintenta (solo fuentes de confianza)
10. Qué sigue
- Configuración inicial de Mac: /mac/initial-setup
- SSH con múltiples cuentas: /mac/ssh-multi-account
- Gestores de contraseñas (1Password / Bitwarden): /multi-os/password-manager
- Copias de seguridad (Time Machine): /mac/backup-time-machine
Referencias
Historial de cambios
- 2026-05-16: Primera versión. FileVault + Firewall + Gatekeeper + XProtect + SIP + seguridad SSH + script de verificación de una sola vez + seis casos de solución de problemas.