Вы находитесь на странице: 1из 18

Page |-1-

“Introducción a pfSense”
Fundamentos y Aplicación Practica

LAB N° 2 – Interfaces, reglas de firewall y aliases.

En este LAB trataremos los asuntos relacionados con las interfaces de red, las reglas en
dichas interfaces y la creación y administración de aliases.

Dejaremos como encabezado en cada LAB el detalle de las redes lógicas del laboratorio y
los accesos a los equipos miembros del mismo.

1. Ambiente de laboratorio:

1.1. El laboratorio para esta clase incluye, 3 Firewalls, 2 Servidores y dos Workstation
(estaciones de trabajo).

1.2. Un firewall simulando internet, y un total de 5 redes lógicas.

1.3. Un ambiente tipo de una empresa con su oficina central y una sucursal u oficina
remota.

1.4. Ante todo, indicaremos las credenciales de usuario de los sistemas.

1.4.1. Routers/Firewalls pfSense user admin, pass pfsense.


1.4.2. Estaciones de trabajo Windows 7 user administrator, pass pfSense.
1.4.3. Servidores Windows 2003 user administrator, pass pfSense.
1.4.4. Acceso vía VNC, pass pfSense.

1.5.El siguiente diagrama intenta demostrar la estructura de la red que utilizaremos.

pfSense - Fundamentos y Aplicación Practica


Page |-2-

1.6. Direccionamiento IP:

1.6.1. Direcciones de internet públicas:

Subred Asignación
193.169.1.0/24 Subred para emular Internet
172.17.1.0/24 Subred LAN de casa central
172.17.2.0/24 Subred DMZ de casa central
172.18.1.0/24 Subred LAN de la sucursal
172.18.2.0/24 Subred DMZ de la sucursal

La VM con pfSense que cumple con la función de emular la red de Internet,


será la única a la cual no le configuraremos ni cambiaremos nada.

1.6.2. Firewall Casa Central:

Interface IP Asignación
VMX0 193.169.1.100 WAN
VMX1 172.17.1.1 Subred LAN de casa central
VMX2 172.17.2.1 Subred DMZ de casa central

1.6.3. Firewall Sucursal (Branch):

Interface IP Asignación
VMX0 193.169.1.101 WAN
VMX1 172.18.1.1 Subred LAN de casa central
VMX2 172.18.2.1 Subred DMZ de casa central

1.6.4. Servidores y Workstation:

Los servidores tienen la IP .254 de la red DMZ de casa site y las estaciones de
trabajo la IP .100 de sus respectivas redes.

Equipo IP
Workstation HQ 172.17.1.100
Server HQ 172.17.2.254
Workstation Branch 172.18.1.100
Server Branch 172.18.2.254

pfSense - Fundamentos y Aplicación Practica


Page |-3-

2. Acceso remoto a las VMs:

2.1.Accediendo por la IP WAN del firewall que emula internet, se puede acceder por
RDP a las estaciones de trabajo y a los 3 firewalls.

Equipo IP
Firewall Internet http://ip_de_wan:8090
Firewall HQ http://ip_de_wan:8091
Firewall Branch http://ip_de_wan:8092
Workstation HQ RDP: ip_de_wan:3390
Workstation Branch RDP: ip_de_wan:3399
Server HQ RDP: ip_de_wan:3490
Server Branch RDP: ip_de_wan:3499
Workstation HQ VNC: ip_de_wan:5803
Workstation Branch VNC: ip_de_wan:5800
Server HQ VNC: ip_de_wan:5802
Server Branch VNC: ip_de_wan:5801

3. Interfaces, reglas de firewall y aliases:

3.1. Este LAB comienza borrando y posteriormente agregando una interface al


pfSense. Vamos a mostrar la manera de realizarlo.

Veamos el video para tener una idea más clara

pfSense - Fundamentos y Aplicación Practica


Page |-4-

3.2. Prueba de conexión en la DMZ:

3.2.1. Ahora iremos al servidor de la casa central, que se encuentra en la DMZ que
configuramos recién. Recuerden que para ingresar por VNC debemos ingresar
a la dirección que figura en el punto 2.1 (VNC: ip_de_wan:5802).

3.2.2. Desde ese mismo equipo debemos hacer un ping a la IP 172.17.1.100, para
de esta manera corroborar que realizamos correctamente el procedimiento,
también debemos realizar un ping a la ip 8.8.8.8, y esto nos indicara que la
DMZ está correctamente configurada.

3.2.3. Una vez comprobado correctamente que tenemos conexión desde la DMZ
hacia afuera (hacia la LAN y hacia Internet), iremos a la estación de trabajo
de la casa central. Recuerden que para ingresar por VNC debemos ingresar a
la dirección que figura en el punto 2.1 (VNC: ip_de_wan:5803)

3.2.4. Desde ese equipo debemos hacer un ping a la IP 172.17.2.254, para de esta
manera corroborar que realizamos correctamente el procedimiento, también
debemos realizar un ping a la ip 8.8.8.8, y esto nos indicara que la LAN está
correctamente configurada.

3.3. Restringiendo la DMZ:

3.3.1. Ahora la DMZ está configurada sin restricción alguna, es hora de ponernos
un poco más estrictos.

3.3.2. Definiendo Aliases en el firewall de casa central:

3.3.2.1. Vamos a crear/mostrar cómo se genera un alias en pfSense, siempre


es mucho más ameno poder administrar aliases o grupos de aliases. El
uso de aliases nos permite administrar de una manera más amena las
reglas y permisos del firewall.

3.3.2.2. En el firewall de casa central vamos a Firewall -> Aliases -> +Add.

3.3.2.3. Crearemos el siguiente ejemplo.

Nombre: private_networks
Descripción: All RFC1918 private IP space
Tipo: Network
Miembros: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16

pfSense - Fundamentos y Aplicación Practica


Page |-5-

Veamos el video para tener una idea más clara

Nombre: host_server1
Descripción: server1.example.com
Tipo: Host
Miembros: 172.17.2.254

Nombre: dns_servers
Descripción: Acceso a DNS servers
Tipo: Host
Miembros: server1

Nombre: smtp_servers
Descripción: Acceso de salida SMTP
Tipo: Host
Miembros: server1

Nombre: group_web_servers
Descripción: Servidores Web de acceso publico
Tipo: Host
Miembros: server1

3.3.2.4. Creando un alias para administración remota:

Si creamos un alias al cual le damos permisos para poder acceder de


manera exclusiva al portal WebAdmin de pfSense esto podría ser
beneficioso si necesitamos acceder desde locaciones remotas a
nuestro firewall. Esta metodología también puede ser usada para
permitir en nuestra LAN o DMZ que solo un equipo o varios (los que

pfSense - Fundamentos y Aplicación Practica


Page |-6-

definamos en la regla) puedan acceder a la administración del


firewall.
Por ejemplo, vamos a usar la IP de VPN con la que accediste a este
LAB virtual.

Nombre: group_remote_admin
Descripción: Ips autorizadas para administración remota
Tipo: Host
Miembros: Tu IP de VPN

3.3.2.5. Crearemos un alias para el Web Server:

Nombre: group_web_servers
Descripción: Web Servers de acceso publico
Tipo: Host
Miembros: server1

3.3.2.6. Creando aliases para los puertos:

Nombre: group_web_ports
Descripción: Puertos de Servicios Web Permitidos
Tipo: Ports
Miembros: 80, 443

pfSense - Fundamentos y Aplicación Practica


Page |-7-

3.3.2.7. Revisión de aliases:

Si todo ha salido como se debe (tu parte y la mía 😊), deberías tener
un listado de alias similar a la imagen.

3.4. Permitiendo la administración remota del firewall:

3.4.1. La regla predeterminada del firewall indica que NADA desde Internet podrá
ingresar (nada desde su WAN podrá pasar a su LAN).
Para poder permitir el acceso remoto y así la administración remota del
firewall, debemos generar una regla que permita o indique eso.
Mínimamente vamos a necesitar o querer acceder al puerto del WebAdmin (80
HTTP si es el predeterminado, y el 22 para el SSH) y además permitir ICMP
para tener un echo request.

pfSense - Fundamentos y Aplicación Practica


Page |-8-

3.4.2. Vamos a Firewall -> Rules -> WAN y hacemos click en Add

Interface: WAN
Protocol: any
Source: Single host or alias, RemoteAdmin
Destination: WAN address
Description: allow all from remote admin IPs pfSense

Salvar y aplicar los cambios.


Con esta regla deberías poder acceder desde tu computadora (la que usas
para ingresar a la VPN del LAB) al WebAdmin del Firewall de Casa Central.

pfSense - Fundamentos y Aplicación Practica


Page |-9-

Deberías tener una vista similar a la de la imagen.

3.5. Configurando reglas restrictivas en la DMZ:

3.5.1. Ahora vamos a configurar algunas reglas en la DMZ

3.5.1.1. En el firewall de casa central vayamos a Firewall -> Rules -> DMZ.

pfSense - Fundamentos y Aplicación Practica


P a g e | - 10 -

3.5.2. Permitiendo el Ping desde la DMZ:

Crearemos una regla que contenga lo siguiente.

Action: Pass
Interface: DMZ
Source: “DMZ net”
Protocol: ICMP
ICMP type: Any
Destination: Any
Description: Allow ping to firewall’s

pfSense - Fundamentos y Aplicación Practica


P a g e | - 11 -

3.5.3. Permitiendo la salida DNS desde la DMZ:

Ahora veremos de generar una regla que permita que el servidor


tenga una salida permitida al puerto de DNS.

Action: Pass
Interface: DMZ
Protocol: TCP/UDP
Source: DMZ net
Destination: Any
Destination port: 53.
Description: Allow DNS lookups to DNS forwarder

Debería quedar similar a la imagen.

pfSense - Fundamentos y Aplicación Practica


P a g e | - 12 -

3.5.4. Rechazando todo menos las redes privadas:

Según algunos cánones de seguridad extrema, es conveniente que a nuestra


red DMZ no tengan acceso la lista de redes privadas.
En este LAB crearemos una rule que permita eso.
En la interface DMZ, la misma debe contener lo siguiente.

Action: Reject
Interface: DMZ
Protocol: any
Source: any
Destination: Single host or alias, PrivateNetworks
Log: check the box to log matching packets
Description: Reject all else from DMZ to private networks

pfSense - Fundamentos y Aplicación Practica


P a g e | - 13 -

3.5.5. Permitiendo la salida DNS a Internet de un equipo puntual:

En muchos casos queremos permitir que solo un equipo puntualmente,


puede llegar a un servicio de destino, en este caso usaremos como ejemplo
la opción de permitirle al servidor de la casa central salir a internet para
consultar el puerto DNS, (en el punto 3.5.3 el ejemplo muestra cómo hacer
lo mismo, pero para TODA la red DMZ, en este caso puntual mostraremos
como hacerlo para un solo host de origen).

Action: Pass
Interface: DMZ
Protocol: TCP/UDP
Source: Single host or alias, dns_servers alias
Destination: any
Destination port: 53.

pfSense - Fundamentos y Aplicación Practica


P a g e | - 14 -

3.5.6. Permitiendo la salida SMTP a Internet:

Los Servidores que tienen la función de enviar los correos electrónicos


mediante Internet necesitan de una regla que les permita realizar dicha
tarea. Si limitamos los puertos de salida a los servidores de nuestra DMZ
estrictamente a lo que les es necesario para que puedan cumplir su función,
estaremos ayudando muchísimo a la seguridad de nuestra red.
Mostraremos como.

Action: Pass
Interface: DMZ
Protocol: TCP
Source: Single host or alias, smtp_servers alias
Destination: any
Destination port: SMTP, or fill in port 25
Description: Allow SMTP servers to send to Internet

pfSense - Fundamentos y Aplicación Practica


P a g e | - 15 -

3.5.7. Permitiendo la salida HTTP:

Algunos servidores basados en Linux (como FreeBSD) utilizan el puerto 80


para poder buscar actualizaciones. Idealmente esta regla es bueno que no
esté siempre activa, debido a que puede dejar abierto algún bug o puerta
de salida para algo que no querríamos que salga. Una buena opción es
dejarla desactivada, y activarla solo cuando la necesitemos.
Vamos con el ejemplo.

Action: Pass
Disabled: Check the box to disable
Interface: DMZ
Protocol: TCP
Source: DMZ net
Destination: any
Destination port: 80
Description: Management - Temp allow HTTP outbound from servers

pfSense - Fundamentos y Aplicación Practica


P a g e | - 16 -

3.5.8. Revisando las reglas aplicadas:

Según lo que hemos venido trabajando deberías tener una vista de reglas
en la DMZ similar a la que se muestra más bajo.

Con esta lista de reglas si se observa detenidamente no estamos siendo muy


restrictivos, dado que la anteúltima regla permite salir absolutamente todo.
Deberíamos deshabilitar la anteúltima regla para permitir que las reglas
anteriores se apliquen y además ser restrictivos.
Veamos el Ejemplo.

pfSense - Fundamentos y Aplicación Practica


P a g e | - 17 -

Ahora según la imagen de arriba si se están aplicando las reglas y cuando


una solicitud no corresponde con una de las reglas permitidas,
automáticamente esta solicitud es denegada.

Veamos un ejemplo más.

Si llevamos la anteúltima regla a la primera posición y la habilitamos.


Todas las reglas que estén por debajo de esta no serán aplicadas ni tomadas
en cuenta.

Esto se debe a que la primera regla en la lista es absolutamente permisiva,


está permitiendo todo desde la DMZ hacia afuera. Todas las reglas
posteriores no serán tomadas en cuenta.
Ahora si a esa misma regla la deshabilitamos, todas las reglas posteriores
serán tomadas en cuenta en el orden que estén declaradas.
Tomar en cuenta que pfSense aplica el orden de reglas de la siguiente
manera.
Primero las reglas en orden descendente en la interface Floating.
Segundo las reglas en los grupos de interface (tema de otro LAB Grupos de
Interfaces).
Tercero las reglas en orden descendente en cada una de las interfaces.

pfSense - Fundamentos y Aplicación Practica


P a g e | - 18 -

Y hay que aclarar algo muy importante, ante un pedido de un paquete que
es analizado por el firewall en el orden que describimos más arriba, LA
PRIMER COINCIDENCIA SE APLICA.
Esto quiere decir, que, si tenemos una regla restrictiva por debajo de una
regla que permite hacer lo que la restrictiva no quiere, ESA REGLA NO SE
APLICARA (la restrictiva), ergo es harto importante saber ordenar las
reglas del firewall en cada una de sus interfaces.
En ingles a esto se lo llama “The firts matching rule wins and
everything matches the firs rule”, en castizo seria “La primera
coincidencia gana”.

Y así termina el primer LAB N° 2 de “Introducción a pfSense”.

pfSense - Fundamentos y Aplicación Practica

Вам также может понравиться