Lista de Control de Seguridad IT en 20 Puntos y Soberanía Digital
Matriz de especificaciones
Requerimientos técnicos esenciales
- ›Ningún puerto de administración expuesto a internet: todo acceso debe pasar por VPN WireGuard con autenticación mTLS.
- ›Los datos en reposo deben cifrarse mediante AES-256-GCM con claves aisladas y alojadas en centros soberanos en Marruecos.
- ›Los contenedores en producción deben ejecutarse como usuarios no root con sistemas de archivos de sólo lectura.
- ›Las troncales SIP deben aplicar listas blancas estrictas de IPs de operadores para evitar fraudes telefónicos y ataques a SIP.
1. Protección perimetral y de red: 5 controles imprescindibles
El perímetro de los sistemas de producción debe seguir el modelo Zero-Trust de denegación por defecto. Control 1: Bloquear todo el tráfico entrante mediante `nftables` o filtros eBPF. Control 2: Sin puertos SSH públicos; el acceso de administración exige VPN WireGuard con mTLS. Control 3: Lista blanca estricta de IPs para las troncales SIP de operadoras. Control 4: Limitación de peticiones SIP INVITE mediante Kamailio para frenar ataques DDoS. Control 5: Segmentación estricta entre los servidores de voz y las bases de datos internas.
# Production Linux nftables Default-Deny Firewall Configuration (/etc/nftables.conf)
table inet filter {
chain input {
type filter hook input priority 0; policy drop;
# Allow established and related connections
ct state established,related accept
# Loopback interface
iif "lo" accept
# WireGuard VPN administration port only
udp dport 51820 accept
# SIP Signaling & Media strictly from Carrier SBC Whitelist
ip saddr { 196.200.0.0/19, 105.159.0.0/18 } udp dport { 5060, 5061, 10000-20000 } accept
# Log and drop everything else
log prefix "SECURITY_DROP: " drop
}
}2. Soberanía de datos y criptografía: 5 controles de almacenamiento
La seguridad del almacenamiento exige aislamiento criptográfico. Control 6: Cifrado completo de disco (FDE) con LUKS2 y AES-256-XTS en todos los servidores. Control 7: Cifrado por columnas en PostgreSQL (pgcrypto) para datos sensibles (DNI, teléfonos, direcciones). Control 8: Procesamiento de audio volátil en memoria RAM; los buffers se eliminan al colgar salvo consentimiento expreso. Control 9: Copias de seguridad diarias cifradas con GPG replicadas en centros Tier-III en Marruecos. Control 10: Anonimización automática de datos personales en transcripciones.
3. Bastionado de aplicaciones y servidores: 5 controles de ejecución
El aseguramiento del entorno de ejecución evita el escape de contenedores y la escalada de privilegios. Control 11: Los contenedores deben ejecutarse como usuarios no root (`user: 10001:10001`). Control 12: Sistema de archivos raíz de sólo lectura (`read_only: true`) con particiones tmpfs volátiles. Control 13: Revocación de todas las capacidades de Linux (`cap_drop: [ALL]`), manteniendo sólo `CAP_NET_BIND_SERVICE` donde sea imprescindible. Control 14: Restricción de llamadas al sistema con perfiles seccomp y AppArmor. Control 15: Sin contraseñas en texto plano; inyección dinámica mediante HashiCorp Vault.
4. Gobernanza, auditoría y respuesta a incidentes: 5 controles de trazabilidad
La trazabilidad es obligatoria para el cumplimiento normativo. Control 16: Registros de auditoría inmutables con encadenamiento de hash SHA-256. Control 17: Alertas en tiempo real con Prometheus y Grafana ante anomalías en el tráfico SIP o duraciones atípicas. Control 18: Autorización por doble custodio para cualquier exportación de datos. Control 19: Desconexión automática de emergencia de las troncales SIP en menos de 2 segundos ante intrusión confirmada. Control 20: Auditoría anual de seguridad externa y certificación formal CNDP.
| Ámbito de Seguridad | Comando de Verificación / Artefacto | Nivel de Riesgo | Criterio de Superación |
|---|---|---|---|
| Perímetro de Red | nmap -sS -p- <ip-servidor> | Crítico (P0) | Cero puertos públicos abiertos (Sólo WireGuard) |
| Cifrado en Tránsito | testssl.sh sip.vext.ma:5061 | Crítico (P0) | Calificación A+ (TLS 1.3 forzado, SRTP activo) |
| Bastionado de Servidores | apparmor_status && docker ps --quiet | Alto (P1) | Contenedores sin privilegios root y read-only |
| Almacenamiento de Datos | SELECT * FROM pg_tables WHERE schemaname='public' | Alto (P1) | Columnas de datos personales cifradas en AES-256 |
| Integridad de Auditoría | vext-verify-audit-chain /var/log/audit.log | Crítico (P0) | Encadenamiento SHA-256 íntegro sin desvíos |
Preguntas frecuentes de la norma
¿Requiere asesoramiento sobre esta especificación?
Consulte directamente con nuestros ingenieros de sistemas en Casablanca.