IPsec (Internet Protocol Security) es un conjunto de protocolos de seguridad que proporciona autenticación, integridad y confidencialidad a nivel de red para comunicaciones IP.

¿Qué es IPsec?

IPsec es un framework de protocolos que protege las comunicaciones IP mediante cifrado, autenticación y gestión de claves, operando en la capa de red del modelo OSI.

Arquitectura IPsec

Componentes Principales

  • AH (Authentication Header): Autenticación e integridad
  • ESP (Encapsulating Security Payload): Cifrado y autenticación
  • IKE (Internet Key Exchange): Intercambio de claves
  • SAD (Security Association Database): Base de datos de asociaciones de seguridad
  • SPD (Security Policy Database): Base de datos de políticas de seguridad

Modos de Operación

  • Transport Mode: Modo de transporte
  • Tunnel Mode: Modo de túnel
  • Mixed Mode: Modo mixto

Protocolos IPsec

AH (Authentication Header)

  • Protocolo: 51
  • Función: Autenticación e integridad
  • Cifrado: No proporciona cifrado
  • Uso: Integridad de paquetes

ESP (Encapsulating Security Payload)

  • Protocolo: 50
  • Función: Cifrado y autenticación
  • Cifrado: Proporciona cifrado
  • Uso: Confidencialidad e integridad

IKE (Internet Key Exchange)

  • IKEv1: Versión 1 (obsoleta)
  • IKEv2: Versión 2 (actual)
  • Función: Intercambio de claves
  • Uso: Establecer asociaciones de seguridad

Modos de Operación

Transport Mode

  • Descripción: Protege solo el payload del paquete
  • Uso: Comunicación host-to-host
  • Overhead: Mínimo
  • Aplicación: Comunicaciones directas

Tunnel Mode

  • Descripción: Protege todo el paquete IP
  • Uso: Comunicación gateway-to-gateway
  • Overhead: Mayor
  • Aplicación: VPNs, túneles

Asociaciones de Seguridad (SA)

Parámetros SA

  • SPI (Security Parameter Index): Índice de parámetros de seguridad
  • Destination IP: IP de destino
  • Security Protocol: Protocolo de seguridad (AH/ESP)
  • Encryption Algorithm: Algoritmo de cifrado
  • Authentication Algorithm: Algoritmo de autenticación
  • Keys: Claves criptográficas

Gestión de SA

  • Manual: Configuración manual
  • IKE: Gestión automática
  • Lifetime: Tiempo de vida
  • Replay Protection: Protección contra replay

Algoritmos Criptográficos

Cifrado

  • AES: Advanced Encryption Standard
  • 3DES: Triple DES
  • ChaCha20: Cifrado de flujo
  • Camellia: Alternativa a AES

Autenticación

  • HMAC-SHA1: HMAC con SHA-1
  • HMAC-SHA256: HMAC con SHA-256
  • HMAC-SHA384: HMAC con SHA-384
  • HMAC-SHA512: HMAC con SHA-512

Intercambio de Claves

  • Diffie-Hellman: Intercambio de claves
  • ECDH: Elliptic Curve Diffie-Hellman
  • RSA: Cifrado de clave pública
  • ECDSA: Firma digital de curva elíptica

Implementación

Configuración Básica

1
2
3
4
5
6
7
8
9
# Configurar túnel IPsec
ip xfrm state add src 192.168.1.0/24 dst 192.168.2.0/24 proto esp spi 0x1000 mode tunnel enc aes 0x1234567890abcdef1234567890abcdef12345678 auth hmac(sha256) 0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef

ip xfrm policy add src 192.168.1.0/24 dst 192.168.2.0/24 dir out tmpl src 192.168.1.1 dst 192.168.2.1 proto esp mode tunnel

# Activar IPsec
ip xfrm state add src 192.168.2.0/24 dst 192.168.1.0/24 proto esp spi 0x2000 mode tunnel enc aes 0x1234567890abcdef1234567890abcdef12345678 auth hmac(sha256) 0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef

ip xfrm policy add src 192.168.2.0/24 dst 192.168.1.0/24 dir in tmpl src 192.168.2.1 dst 192.168.1.1 proto esp mode tunnel

StrongSwan

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
# Configuración /etc/ipsec.conf
config setup
    charondebug="ike 1, knl 1, cfg 0"
    uniqueids=no

conn %default
    ikelifetime=60m
    keylife=20m
    rekeymargin=3m
    keyingtries=1
    keyexchange=ikev2

conn site-to-site
    left=192.168.1.1
    leftsubnet=192.168.1.0/24
    right=192.168.2.1
    rightsubnet=192.168.2.0/24
    ike=aes256-sha256-modp2048
    esp=aes256-sha256
    auto=start

OpenVPN con IPsec

1
2
3
4
5
6
7
8
# Configuración OpenVPN
dev tun
proto udp
remote 192.168.2.1
port 1194
cipher AES-256-CBC
auth SHA256
key-direction 1

Aplicaciones

VPN (Virtual Private Network)

  • Site-to-Site: Conexión entre sitios
  • Remote Access: Acceso remoto
  • Client-to-Site: Cliente a sitio
  • Mobile VPN: VPN móvil

Túneles Seguros

  • Internet Tunneling: Túneles por Internet
  • WAN Security: Seguridad de WAN
  • Cloud Connectivity: Conectividad a la nube
  • Hybrid Cloud: Nube híbrida

Comunicaciones Seguras

  • VoIP Security: Seguridad de VoIP
  • Video Conferencing: Videoconferencias
  • File Transfer: Transferencia de archivos
  • Database Replication: Replicación de bases de datos

Ventajas y Desventajas

Ventajas

  • Transparent: Transparente para aplicaciones
  • Standard: Estándar ampliamente adoptado
  • Flexible: Muy flexible
  • Secure: Muy seguro

Desventajas

  • Complex: Complejo de configurar
  • Performance: Overhead de rendimiento
  • NAT Issues: Problemas con NAT
  • Firewall: Problemas con firewalls

Mejores Prácticas

Configuración

  • Strong Algorithms: Usar algoritmos fuertes
  • Key Management: Gestión adecuada de claves
  • Monitoring: Monitoreo continuo
  • Testing: Pruebas regulares

Seguridad

  • Perfect Forward Secrecy: PFS habilitado
  • Replay Protection: Protección contra replay
  • Key Rotation: Rotación de claves
  • Audit Logging: Registro de auditoría

Rendimiento

  • Hardware Acceleration: Aceleración hardware
  • Load Balancing: Balanceo de carga
  • Traffic Shaping: Moldeado de tráfico
  • QoS: Calidad de servicio

Herramientas de Gestión

Configuración

  • ipsec-tools: Herramientas de línea de comandos
  • StrongSwan: Implementación completa
  • OpenSwan: Implementación alternativa
  • Libreswan: Fork de OpenSwan

Monitoreo

  • tcpdump: Captura de paquetes
  • Wireshark: Análisis de protocolos
  • ipsec status: Estado de IPsec
  • Logs: Registros del sistema

Testing

  • ping: Pruebas de conectividad
  • traceroute: Rastreo de rutas
  • iperf: Pruebas de rendimiento
  • nmap: Escaneo de puertos

Troubleshooting

Problemas Comunes

  • NAT Traversal: Problemas con NAT
  • Firewall Rules: Reglas de firewall
  • Key Exchange: Intercambio de claves
  • Authentication: Problemas de autenticación

Herramientas de Diagnóstico

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
# Ver estado de IPsec
ip xfrm state list
ip xfrm policy list

# Ver estadísticas
cat /proc/net/xfrm_stat

# Capturar tráfico
tcpdump -i any -n host 192.168.1.1

# Ver logs
journalctl -u strongswan

Conceptos Relacionados

Referencias