En este post revisaremos la configuración de PFSENSE en modo CARP o también conocido como alta disponibilidad o HA en Ingles.

¿Qué es CARP?

CARP es el Protocolo de Redundancia de Dirección común (Common Address Redundancy Protocol). Su objetivo principal es permitir que múltiples hosts en el mismo segmento de red compartan una dirección IP. CARP es una alternativa libre y seguro para el Protocolo de redundancia de enrutador virtual (VRRP) y el Router Protocol Hot Standby (HSRP).

CARP funciona permitiendo a un grupo de hosts en el mismo segmento de red compartir una dirección IP. Este grupo de hosts se conoce como un “grupo de redundancia”. El grupo de redundancia se asigna a una dirección IP que se comparte entre los miembros del grupo. Dentro del grupo, un host se denomina el “maestro” y el resto como “copias de seguridad”. El host maestro es el que actualmente “segura” el IP compartido; responde a cualquier tráfico o solicitudes ARP dirigidas a él. Cada host puede pertenecer a más de un grupo de redundancia a la vez.

Un uso común para el CARP es crear un grupo de firewalls redundantes. El IP virtual que se asigna al grupo de redundancia se configura en los equipos cliente como la puerta de enlace predeterminada. Si el firewall sufre un fallo o se apaga, el IP se moverá a uno de los firewalls de copia de seguridad y el servicio continuará sin verse afectado.

CARP soporta IPv4 e IPv6.

Comenzamos

Topología que se usara

En este caso usaremos una topología física (o virtual) de dos equipos PFSENSE y usaremos las IP virtuales como Gateway, por que si cae uno de los equipos el otro podrá soportar la infraestructura y podrá salir por el mismo Gateway sin interrumpir por mucho tiempo la red.

La topología es la siguiente:

Antes de realizar la configuración seria bueno tener claro como se va a implementar la solución, además de tener un checklist con todo listo para evitar perder tiempo y darse vueltas.

Yo uso este método, espero les sirva.

Requisitos

  • 2 equipos Conectados y configurados básicamente.
  • 3 direcciones IP libres (una para ip virtual) y las otras dos para cada PFSESNE, que sean del segmento WAN o público.
  • 3 direcciones IP libres del Segmento LAN (una para ip virtual) y las otras dos para cada PFSESNE
  • 2 IP para el segmento PFSync (yo use una mascara 30 para tener los dos hosts)

Servidores PFSESNE

PFSENSE_01 PFSENSE_02
INTERFAZ WAN 192.168.0.216 192.168.0.108
INTERFAZ LAN 172.16.100.100 172.16.100.100
INTERFAZ PFSYNC 10.20.30.1 10.20.30.2

IP VIRTUAL WAN 192.168.0.7
IP VIRTUAL LAN 172.16.100.1

Configurar HA

Regla en Interfaz de sincronización

Comenzamos ya directamente a la parte entretenida, lo primero que debemos hacer crear una regla en la interfaz que usaremos para sincronizar los PFSESNE, en mi caso la llame PFSYNC (que original ¡¡¡) y la cual deje con un red 10.20.30.0/30 (solo IP para ambos HOST), esa regla será ANY para todo, podríamos hacerla más restrictiva para mejor la seguridad, pero para este laboratorio esta perfecto.

La regla es la Siguiente (en ambos PFSESNE)

Una vez creada las reglas podemos probar con un ping si esta todo correcto.

Ahora iremos a Firewall > IP Viruales (en ambos PFSESNE), ahí crearemos las IP virtuales que usaremos, en este caso la wan y lan (estas serán nuestros Gateway por donde saldrán nuestros equipos.

Creación de IP virtuales

He marcado en rojo los cambios que debemos hacer, ojo con el parámetro CARP, este es muy importante.

Con estos pasos ya tenemos configuradas las IP virtuales, si tienen mas interfaces que desean tener en HA como puede ser DMZ o WIFI, por poner un ejemplo, también las debemos crear de la misma forma.

Habilitación de sincronización entre ambos PFSESNE

Para seguir con la configuración debemos dirigirnos solo en el Servidor MASTER a: System > High Avail. Sync

Acá debemos Seleccionar los siguientes parámetros.

Realizar estos pasos en PFSESNE01.

State Synchronization Settings (pfsync)

  • Synchronize states: Para habilitar la sincronización desde el master al esclavo)
  • Synchronize Interface: La interfaz que usaremos para sincronizar, en este caso PFSYNC que creamos anteriormente.
  • pfsync Synchronize Peer IP: Será la IP del PFSESNE Esclavo, para poder pasarle la configuración, en este caso es 10.20.30.2, si no se especifica este será buscado por Multicast.

Configuration Synchronization Settings (XMLRPC Sync)

  • Synchronize Config to IP: Lo mismo de lo anterior la IP del PFSENSE esclavo, acá enviara el archivo XML que tienen las configuraciones.
  • Remote System Username: Este será el usuario (con permisos de super usuario) con el que debemos realizar la sincronización, podemos crear un usuario especial (en ambos PFSESNE) o usar el usuario “admin”, debe tener ambos hosts la misma contraseña, siempre por temas de seguridad es mejor crear un usuario, pero para el ejemplo usaremos el usuario “admin”.
  • Remote System Password: Obvio, El password del usuario admin ¡¡¡.
  • Select options to sync: Acá, debemos marcar los servicios que queremos que se sincronicen, acá es más a gusto del cliente. Debe marcar los servicios que usted estime conveniente, yo los marcare todos ya que iré creando servicios y quiero que estén en HA.

En el Segundo hosts PFSESNE, solo pondremos:

  • Synchronize Config to IP
  • Synchronize Interface
  • Remote System Username
  • Remote System Password

Y listo ya debería estas Sincronizando la configuración de un host al otro.

Verificar CARP

Para saber si esta corriendo correctamente el servicio, podemos ir a Status > CARP

Ahí debería aparecer que host esta en Master y esclavo.

PFSENSE En Alta disponibilidad (HA – CARP) esta Listo.

 


Agregar un comentario

Su dirección de correo no se hará público. Los campos requeridos están marcados *

A %d blogueros les gusta esto: