910 053 662 [email protected]
Mejor solución fallo pfSense em3: detached pci4: detached

Mejor solución fallo pfSense em3: detached pci4: detached

Hoy nos hemos encontrado con este fallo en un firewall de un cliente em3: detached pci4: detached, por lo que la interface no aparecía en la lista y no dejaba asignarla, aparte de eso, terminaba por colapsar el firewall, aquí os dejamos la solución que hemos encontrado y aplicado y esta todo correctamente funcionando.

En un primer momento pensábamos que podía ser un problema de hardware, pero hemos observado que el hardware funcionaba correctamente, por lo que hemos procedido a realizar unas modificaciones para su correcto funcionamiento.

Revisando los archivos de los logs hemos encontrado los siguientes problemas del kernel:

  • pci4: detached
  • em3: detached
  • mountroot: waiting for device /dev/ufsid/60a0e7493914b351
Em3: Detached Pci4: Detached

Solución em3: detached pci4: detached

Para solucionar este problema hemos realizado las siguientes acciones:

  • Acceder a la GUI de pfSense
  • Diagnostics -> Edit File
  • Browse -> Boot -> loader.conf
  • Ahora debemos de agregar las siguientes líneas al archivo, si alguno de ellos ya está omitirla, en nuestro caso faltaban casi todas:

kern.cam.boot_delay=10000

kern.ipc.nmbclusters=»1000000″

kern.ipc.nmbjumbop=»524288″

kern.ipc.nmbjumbo9=»524288″

kern.vty=sc

autoboot_delay=»3″

hw.hn.vf_transparent=»0″

hw.hn.use_if_start=»1″

net.link.ifqmaxlen=»128″

  • Una vez añadimos todas las líneas que falten, sin eliminar las que previamente estaban en el archivo, debemos de proceder a guardar los cambios, esta acción también la podemos hacer por ssh o directamente desde la consola, pero es mucho más cómodo hacerlo por la GUI.
  • Cuando tengamos todos los cambios guardados, procedemos a reiniciar el pfSense.
  • Una vez haya terminado el proceso de carga ya podemos asignar nuevamente la tarjeta em3 a una interface.

Solo hemos observado el fallo en nuestro caso con la tarjeta em3, pero esta solución también será válida en caso de tener los mismos mensajes en cualquier otra tarjeta.

Necesitas ayuda con tu mantenimiento de pfSense

Si estas interesado en una empresa que te de servicios de ciberseguridad, no dudes en ponerte con nosotros en nuestro apartado de contacto de nuestra web, nos pondremos en contacto con usted. Tenemos más de 15 años de experiencia, en soporte y mantenimiento de Firewall para Pyme, especialmente con pfSense en todas sus versiones.

Nos encargamos de la ciberseguridad de tu empresa

Nos esforzamos continuamente en buscar las mejores soluciones para nuestros clientes, es por ello que ofrecemos una gran cantidad de servicios de ciberseguridad, tales como:

Y todo esto con servicios completamente monitorizados para que se despreocupe de la ciberseguridad y nos empecemos nosotros a ocuparnos de ella.

Nuestros clientes nos avalan.

Error pfSense Can´t find ´/etc/hostid´/boot/entropy size=0x1000

Error pfSense Can´t find ´/etc/hostid´/boot/entropy size=0x1000

Cuando arrancamos pfSense no arranca y se queda clavado en pfSense Can´t find ´/etc/hostid´/boot/entropy size=0x1000, ante esto la mejor solución es volver a instalar el sistema, pero el problema reside si no disponemos de un Backup actualizado o directamente no tenemos ninguno, tras muchos quebraderos de cabeza, lo mejor es reinstalar pfSense de la siguiente manera:

PFSENSE CAN´T FIND ´/ETC/HOSTID´/BOOT/ENTROPY SIZE=0X1000

Reinstalación de pfSense después de error Can´t find ´/etc/hostid´/boot/entropy size=0x1000

Aquí vamos a ver dos métodos diferentes para la reinstalación del dispositivo y que nuestra configuración se quede exactamente igual que estaba, sin perder ninguna configuración y no perder tiempo con las reconfiguraciones del dispositivo:

Disco no accesible desde otro equipo

Esta opción, funciona con sistemas de archivos UFS o ZFS.

Para realizar esta primera opción, recomendamos que se haga con un segundo disco duro, para ello hacemos lo siguiente:

  • Conectamos un segundo disco duro, o bien hacemos un Backup del archivo /conf/config.xml
  • Arrancamos desde un pendrive con la imagen booteable de nuestro pfSense
  • En el menú de instalación, le damos a la tercera opción Recover config.xml
  • Nos aparecerá el archivo config.xml que queremos restaurar, le damos a aceptar y nos llevará de nuevo a la ventana de instalación
  • Ahora procedemos a la instalación del sistema como siempre la realizamos
  • Una vez arranque el sistema veremos que nos ha volcado la configuración y todo funciona como antes del problema detectado

Aunque este sistema es muy probable que funcione a la primera, como comentábamos anteriormente, es recomendable usar un segundo disco para comprobar que todo funciona correctamente, y una vez comprobado, realizar el proceso en el disco de destino final de la instalación de pfSense.

Disco duro accesible desde otro dispositivo

Esta opción, al igual que el ejemplo anterior, funciona con sistemas de archivos UFS o ZFS.

En esta segunda opción y si el disco del sistema pfSense conectándolo a otro equipo es accesible, debemos de proceder de la siguiente manera:

  • Conectar el disco duro a un sistema Linux y montar la unidad
  • Copiar el archivo /conf/config.xml a un pendrive:
    • Formatear el Pendrive en FAT/FAT3
    • Crear un directorio llamado conf
    • Copiar dentro de este el archivo que salvamos de la carpeta /conf/config.xml
  • Ahora procedemos con la instalación
  • En el menú de instalación, procedemos desde la tercera opción Recover config.xml
  • Cuando nos salga el menú nuevamente de instalación, procedemos a la instalación de nuestro pfSense
  • Una vez haya finalizado, retiramos el pendrive con el archivo que teníamos de configuración y arrancamos el pfSense como si nada hubiese pasado

Opción extra

Os queríamos dejar también otra forma de pasar un Backup de un pfSense a una nueva instalación, para ello, debemos de seguir los pasos que hacemos en la segunda parte de este tutorial: Disco duro accesible desde otro dispositivo, para ello, lo que debemos hacer en el paso 2, es copiar el archivo de Backup que tengamos y solamente cambiarle el nombre para que sea config.xml, de esta manera directamente en la instalación nos volcara el Backup directamente y tendremos el nuevo dispositivo totalmente accesible y funcional. Únicamente deberemos de asignar las interfaces para que en el nuevo dispositivo las dejemos configuradas.

Necesitas ayuda con tu mantenimiento de pfSense

Si estas interesado en una empresa que te de servicios de ciberseguridad, no dudes en ponerte con nosotros en nuestro apartado de contacto de nuestra web, nos pondremos en contacto con usted. Tenemos más de 15 años de experiencia, en soporte y mantenimiento de Firewall para Pyme, especialmente con pfSense en todas sus versiones.

Acceder a una VPN IPsec usando OpenVPN en pfSense

Acceder a una VPN IPsec usando OpenVPN en pfSense

Hoy vamos a ver cómo solucionar un problema de acceso de los usuarios de como acceder a una VPN IPsec usando OpenVPN desde pfSense, a los recursos que estén en la otra parte de un túnel IPsec.

En esta ocasión usamos el modo de túnel de IPsec, para unir dos sedes que queramos conectar mediante este protocolo dentro de nuestro firewall pfSense.

Acceder A Una Vpn Ipse Usando Openvpn

Como funciona IPsec

Las conexiones Ipsec, incluyen los siguientes pasos:

  • Intercambio de claves
  • Encabezados y tráileres de los paquetes
  • Autenticación
  • Encriptación
  • Transmisión
  • Desencriptación

Protocolos utilizados por IPsec

  • Encabezado de autenticación (AH)
  • Protocolo de seguridad de encapsulación (ESP)
  • Asociación de seguridad (SA)
  • Protocolo de Internet (IP)

Configurar Firewall para acceder a una VPN IPsec usando OpenVPN

Si tienes dos sites conectados con IPsec VPN, y también tiene una configuración OpenVPN en el pfSense principal, también puede permitir que sus equipos conectados al OpenVPN, accedan a los equipos del otro extremo del IPsec.

Normalmente, solo se tiene acceso a la red local a la que se conecta OpenVPN, pero con unos simples pasos puede permitir el acceso a todas las redes conectadas.

Si ya tiene la VPN IPSec y configurado OpenVPN, solo se necesita agregar algunas cosas.

La configuración para este ejemplo es:

  • SiteA con un rango de red 192.168.1.0/24
  • SiteB con un rango de red 192.168.2.0/24)
  • OpenVPN usa el rango de red 172.20.50.0/24
  • SiteA tiene la configuración de OpenVPN.
  • Tanto SiteA como SiteB tienen configuración IPsecVPN.

Configuración de una segunda Fase 2

Debe agregar otra entrada de Fase 2 en ambos sitios, y debe agregar la red SiteB en la configuración de OpenVPN.

  • Tenemos que ir al pfSense del Site1 a VPN -> IPSec y expandimos las entradas de la Fase 2
  • Abra los túneles IPSEC en el SiteA > Copie la entrada de la Fase 2 > Cambiar el menú desplegable de Red Local a Red > Agrega el rango de IP que usa OpenVPN, por ejemplo: 172.20.50.0/24
  • Cambie el nombre en Descripción > Guardar y aplicar
  • Abra los túneles IPSEC en el SiteB > Copie la entrada de la Fase 2 > Cambiar el menú desplegable de Red Remota a Red > Agrega la IP que usa OpenVPN, por ejemplo: 172.20.50.0/24
  • Cambiar nombre en Descripción > Guardar y aplicar
  • Edite su servidor OpenVPN > En Red local IPv4 > Agregue en la red del SiteB. Separe varias redes con un, por ejemplo 192.168.1.0/24,192.168.2.0/24

Una vez que tengas los dos site configurados deberás de comprobar que el SiteB es accesible desde la conexión de OpenVPN del SiteA.

Recuerda que si solo tienes abiertos X puertos en la interface del OpenVPN (que valga de consejo, así deberías de tenerlo configurado), deberás de agregar aquellos que sean necesarios para poder acceder al SiteB.

Acceder a la red IPSEC desde el firewall pfSense

También te puedes encontrar que desde el Firewall de SiteA no tengas acceso a la red del SiteB pese a que el túnel este levantado y sea completamente funcional, para ello, debes de realizar lo siguiente:

  • Vamos a System -> Routing y en el apartado Gateways, añadimos una nueva.
  • Selecciona LAN en Interface
  • Pon la LAN IP Adress en Gateway
  • Deshabilita Gateway Monitoring
  • Guardamos
  • Ahora vamos a Static Routes y añadimos una
  • En Destination Network, ponemos la red de la red IPSEC
  • Selecciona la LAN IP Gateway que hemos generado anteriormente
  • Guardamos y ya lo tenemos

Recomendaciones de Seguridad Extras:

Como siempre que instalamos un nuevo servicio en nuestro Firewall, es recomendable adaptarlo a la seguridad del mismo, por ello es importante realizar las siguientes acciones para que no tengamos un agujero de seguridad en el mismo:

  • Configura las reglas como tengas configuradas las de las demás interfaces
  • Recuerda agregar OpenVPN a pfBlocker, Squid, Snort, Suricata, etc…
  • Usa un solo usuario por persona
  • Elimina aquellos usuarios y certificados que ya no se estén usando
  • Habilitar GEOIP en la regla del puerto de OpenVPN para que solo sea accesible desde los países que deseemos
  • Utiliza contraseñas fuertes y robustas tanto para establecer el túnel IPsec como para los usuarios del OpenVPN
  • Utiliza una Pre-Shared Key en el túnel IPsec igualmente fuerte
  • Mantén una buena política de reglas en el Firewall, así como en las conexiones IPsec y OpenVPN
  • Nunca dejes reglas configuradas tipo any -> any, eso es como no tener nada de seguridad
  • Utiliza siempre las conexiones OpenVPN para conectarte a redes que no sepas quien las gestiona y quien puede estar detrás

¿Por qué confiar en DCSeguridad?

Recuerda que la utilización de un firewall en una empresa es indispensable, así como un correcto mantenimiento del mismo. Debes usar siempre una conexión VPN para conectarte tanto de sede a sede, como de fuera de la oficina a los recursos de la empresa y nunca debes de tener ningún puerto configurado al exterior.

Si estas interesado en instalar un firewall en tu empresa, y securizar el mismo puedes ponerte en contacto con nosotros a través del apartado contacto de nuestra web.

Instalar WireGuard en pfSense+ 22.05, la mejor VPN en pfSense

Instalar WireGuard en pfSense+ 22.05, la mejor VPN en pfSense

Hoy os quiero dejar un tutorial de cómo instalar WireGuard en pfSense. Muchos usuarios se quejan de la lentitud de OpenVPN en las conexiones cuando enrutamos todo el tráfico a través del túnel, y con esta solución conseguimos una mayor velocidad con la misma seguridad.

Instalar Wireguard En Pfsense

Descargar e Instalar WireGuard en pfSense

Primeramente, debemos instalar el paquete de WireGuard en nuestro firewall, ya que, aunque en alguna versión anterior estaba integrado en pfSense, a día de hoy no está, y debemos instalarlo, para ello hacemos lo siguiente:

  • Vamos a System -> Package Manager
  • Available Packages
  • Buscamos el paquete de WireGuard y lo instalamos
  • Esperamos que termine y ya lo tendríamos instalado

Ahora vamos a Proceder con la configuración

Nos vamos a VPN y Wireguard ahí tenemos que hacer lo siguiente:

Entramos en Settings

Habilitamos WireGuard y Guardamos

Configurar un Tuunel

Yo aquí, os recomiendo que uséis esta página: https://www.wireguardconfig.com/, ya que os da las configuraciones tanto de los túneles como de los peers.

  • Listen Port: 51820
  • Número de Clientes a vustra elección, tantos como necesitéis
  • CIDR, la red que vais a usar para el túnel VPN por ejemplo 192.168.10.1/24
  • Client Allowed IP: Aqui temenos dos opciones
    • Si queremos hacer un túnel completo, en que nuestros clientes salga toda su navegación por nuestro firewall, debemos de usar la siguiente IP: 0.0.0.0/0, ::/0
    • Si por el contrario, queremos que accedan a los recursos de nuestra red, pero todo lo que sea fuera vaya por su propia conecion, debemos establecer las redes de nuestro firewall a las que queremos que tenga acceso, por ejemplo 192.168.0.0/24, 192.168.3.0/24, etc.
  • Endpoint: debéis de poner la IP pública del firewall seguido del puerto 0.0.0.0:51820
  • DNS: Poner el DNS que use el firewall y en definitiva se use en la red.
  • Post-Up rule se deja en blanco
  • Post-Down rule se deja en blanco
  • Marcar la opción de Use Pre-Shared Keys (Enhanced Security), para darle un punto más de seguridad
  • Dar a Generate Config y voila, ya tienes las configuraciones
  • Descárgate el archivo ZIP y guárdalo en un lugar seguro.

Ahora volvemos a nuestro pfSense y vamos a VPN -> WireGuard -> Tunnels

  • Add Tunnel
  • Le ponemos el nombre
  • Listen Port, dejamos el 51820 o usamos el que deseemos y hayamos usado en el paso de la creación de las claves
  • Private KEY, tenemos que copiar el private key de la opción Server y nos genera automáticamente la Public Key
  • Inteface Adress, le ponemos la IP de la red que hayamos elegido y su mascara por ejemplo 192.168.10.1/24
  • Le damos a Save Tunnel y ya tenemos el túnel creado, ahora a por el siguiente paso

Creación de los Peers

Ahora nos vamos a Peers

Add Peer, este paso deberás repetirlo tantas veces como clientes hayas creado

  • Tunnel: Seleccionamos el tunnel que hemos creado anteriormente
  • Descripción, yo recomiendo poner el nombre del usuario
  • Keep Alive dejarlo en blanco
  • Public Key, copiamos y pegamos el Public Key generado para este usuario Client 1
  • Pre-shared Key, copiamos y pegamos la que se ha generado para Client 1
  • Allowed IPs copiamos la IP que se ha generado para Client 1
  • Guardamos y salimos

Añadir la Interface de WireGuard

Ahora, debemos agregar la nueva interface de WireGuard, para ello:

  • Vamos a Interfaces -> Assigments
  • Available network ports, desplegamos y añadimos tun_wg0 y le damos +Add
  • Entramos en la nueva Interface creada la habilitamos y le ponemos un nombre
  • IPv4 Configuration Type -> Static IPv4
  • IPv4 Adrees, le ponemos la IP de la red que hayamos elegido en el paso 3 al configurar el tunnel con su mascara 192.168.10.1/24
  • Guardamos y ya tenemos generada la Interface

Configurar Outbound

Para que nuestra VPN Wireguard funcione correctamente tenemos que tener bien configurado el Outbound del NAT, para ello, hacemos lo siguiente:

  • Vamos a Firewall -> NAT -> Outbound
  • Outbound Mode, lo ponemos en Hybrido
  • Y añadimos una nueva regla
    • Interface WAN
    • IPv4
    • Protocolo any
  • Source elegimos Network y ponemos la red que hayamos asignado en la configuración del servidor de WireGuard por ejemplo 192.168.10.0/24
  • El destino lo dejamos en Any y guardamos

Generar reglas

Ahora toca generar las reglas del firewall, yo os recomiendo que primeramente hasta que consigáis conectar, dejéis todo any -> any y una vez que ya estéis seguros de que está funcionando correctamente el túnel, securizar bien la salida de esta nueva interface al igual que tenéis las demás interfaces configuradas, una buena opción es usar las reglar flotantes para aplicarlas a todas las interfaces.

Para agregar la regla:

  • Firewall -> Rules
  • Vamos a la interface de WireGuard
  • Le damos a Add
  • Protocol ANY
  • Guardar

Esto es la regla Any -> Any de la que antes os comentaba, cuando llegues al final, y veas que todo funciona correctamente, recuerda securizar bien esta nueva interface.

Abrir puerto de WireGuard

Ahora vamos a proceder a abrir el puerto que hayamos elegido en la configuración del Tunnel para que nuestros clientes puedan conectar a nuestro servidor VPN WireGuard.

  • Firewall NAT
  • ADD
  • Inteface WAN
  • Destination WAN Address
  • Redirect Target Port: El puerto elegido para el túnel
  • Guardamos y aplicamos cambios

Probar dispositivos

Para configurar los dispositivos, es muy sencillo, solo tienes que bajarte la aplicación de WireGuard, para tu dispositivo, abajo dejamos los enlaces y o bien capturar el QR del cliente que desees, o enviar el archivo de configuración creado en la página de WireGuard, le das a conectar y comprueba en: VPN -> WireGuard -> Status que los peers se conectan correctamente.

Descargas:

  • Windows
  • MAC
  • Linux
    • Ubuntu: $ sudo apt install wireguard
    • Debian: # apt install wireguard
    • Fedora: $ sudo dnf install wireguard-tools
  • Android
  • iOS

Recomendaciones de Seguridad

Como siempre que instalamos un nuevo servicio en nuestro Firewall, es recomendable adaptarlo a la seguridad del mismo, por ello es importante realizar las siguientes acciones:

  • Configura las reglas como tengas configuradas las de las de mas interfaces
  • Recuerda agregar WireGuard a pfBlocker, Squid, Snort, Suricata, etc…
  • Comparte cada clave con quien vaya a usarla
  • Elimina aquellos peers que ya no se utilicen
  • Habilitar GEOIP para que solo sea accesible desde los países que deseemos

¿Por qué confiar en DCSeguridad?

Si estas interesado en instalar un firewall en tu empresa, y securizar el mismo puedes ponerte en contacto con nosotros a través del apartado contacto de nuestra web.