La siguiente entrada abordará el tema de seguridad perimetral con firewalls. Los firewalls también
conocidos como cortafuegos pueden ser dispositivos físicos o software que cumple funciones
de filtrado de paquetes en un computador (firewall personal) o en una red (firewall de red)
Contenido:
Actividad 1: Ffirewall común en un enrutador cisco.
Actividad 2: Firewall común en un enrutador cisco, con una LAN y zona DMZ con servicios.
Actividad 3: Firewall común en un servidor Linux/BSD/Solaris, con zona LAN y DMZ.
Actividad: 1
Establecer dos zonas una llamada la LAN y la otra INTERNET y crear reglas de acceso en el
firewall que permitan el paso de tráfico desde INTERNET hacia la LAN solo para 3 protocolos y 5
puertos, por ejemplo: FTP, HTTP, SMTP. El resto de los puertos y servicios deben estar
denegados. Generalmente la comunicación desde la LAN es transparente así que el enrutador
debe permitir la salida de paquetes desde la LAN.
Simularemos este entorno. (Cisco Packet Tracer)
Letra Verde no es de la Configuracion. ↓↓ Config de Firewall en Router Cisco ↓↓
Firewall#sh run
Building configuration...
Current configuration : 1369 bytes
!
version 12.2
no service timestamps log datetime msec
no service timestamps debug datetime msec
no service password-encryption
!
hostname Firewall
!
ip dhcp excluded-address 192.168.10.1 Excluimos las IPs del Gateway y servidor
ip dhcp excluded-address 192.168.10.4
!
ip dhcp pool andreydhcp DHCP Para nuestra Lan desde el Router Cisco
network 192.168.10.0 255.255.255.0
default-router 192.168.10.1
!
!
interface FastEthernet0/0 Interfaz Publica
ip address 200.10.10.2 255.255.255.252 IP Publica
ip nat outside Aplicamos ip nat Outside <salida>
duplex auto
speed auto
!
interface FastEthernet1/0 Intefaz de Entrada hacia nuestra Lan
ip address 192.168.10.1 255.255.255.0 IP Local
ip access-group 100 out Aplicamos la lista de acceso 100 de Salida
ip nat inside Aplicamos Nat de Entrada
duplex auto
speed auto
!
ip nat pool SalidaLan 200.10.10.2 200.10.10.1 netmask 255.255.255.252 Pool de direcciones Publicas de salida o ISP
ip nat inside source list 1 pool SalidaLan overload Nat de entrada aplicamos lista de acceso estandar 1 pool con nombre SalidaLan
ip nat inside source static 192.168.10.4 200.10.10.1 Nat de entrada de fuente estatica hacia el servidor que tenemos en nuestra LAN
ip classless
ip route 0.0.0.0 0.0.0.0 200.10.10.1 Ruta por defecto con proximo salto.
!
access-list 1 permit 192.168.10.0 0.0.0.255 Lista de acceso estandar a nuestra LAN
access-list 100 permit icmp any any
ACL permite protocolo icmp
access-list 100 permit tcp any any eq www ACL permite protocolo tcp cualquier hosts solo para web o puerto 80
access-list 100 permit tcp any any eq telnet ACL permite protocolo tcp cualquier hosts solo para telnet o puerto 23
access-list 100 permit udp any any eq tftp
ACL permite protocolo udp cualquier hosts solo para tftp o puerto 69
access-list 100 deny tcp any any neq smtp
ACL deniega protocolo tcp cualquier hosts excepto para smtp o puerto 25
access-list 100 deny udp any any neq domain ACL deniega protocolo udp cualquier hosts excepto para domain <dns> o puerto 53
!
line con 0
line vty 0 4
login
!
end
___________________________________________________________________
Actividad 2 : Router
Definir 3 zonas en el firewall INTERNET, LAN y DMZ. Se asumirá que existen 2 servicios de red en la DMZ y 1 servicio privados en la LAN. Se deben establecer reglas de acceso que le permita a
los usuarios de la LAN salir a INTERNET sin problemas, pero el tráfico que proviene de INTERNET debe ser filtrado adecuadamente para que solo los servicios en la DMZ sean accesibles.
Simularemos este entorno. (Cisco Packet Tracer)
Letra Verde no es de la Configuracion. ↓↓ Config de Firewall en Router Cisco ↓↓
Firewall#sh run
Building configuration...
Current configuration : 1240 bytes
!
version 12.4
no service timestamps log datetime msec
no service timestamps debug datetime msec
no service password-encryption
!
hostname Firewall
!
interface FastEthernet0/0 Interfaz Lan
ip address 192.168.10.1 255.255.255.0
ip access-group 100 in Aplicas ACL dinámica in (entrada)
ip nat inside Aplicas NAT entrada
duplex auto
speed auto
!
interface FastEthernet0/1 Interfaz Publica
ip address 180.18.18.1 255.255.255.252
ip nat outside Aplicas Nat de Salida
duplex auto
speed auto
!
interface Ethernet0/0/0 Interfaz servidor Publico
ip address 192.168.20.1 255.255.255.0
ip access-group 101 in Aplicas ACL dinamica 101 in (entrada)
ip access-group 102 out Aplicas ACL dinamica 102 out (salida)
ip nat inside Aplicas Nat entrada
duplex auto
speed auto
!
interface Vlan1
no ip address
shutdown
!
ip nat pool salida 180.18.18.1 180.18.18.1 netmask 255.255.255.252
Nat Pool llamada salida de IP Publicas (este caso solo 1)
ip nat inside source list 2 pool salida overload
Nat entrada fuente ACL estandar 2 con la pool llamada salida overload(sobrecargar)
ip nat inside source static 192.168.20.2 180.18.18.1 Nat entrada fuente estática de que dirección y con que dirección (local-publica)
ip classless
ip route 0.0.0.0 0.0.0.0 180.18.18.2 Ruta por Defecto
!
access-list 2 permit 192.168.10.0 0.0.0.255 ACL estatica <numero estaticas 1-99> permitir a ip con mascara.
access-list 100 permit tcp 192.168.10.0 0.0.0.255 any eq www
ACL dinámica 100 permitir de red(192.168.10.0) tcp todo solo para puerto www o 80
access-list 100 permit udp 192.168.10.0 0.0.0.255 any eq domain
ACL dinámica 100 permitir udp de la red todo solo para dns(domain) o puerto 53
access-list 101 permit tcp any any gt 1024
ACL dinámica 101 permitir tcp todo todo gt(los paquete coincidan con un puerto mayor) al 1024
access-list 101 permit udp any any gt 1024
ACL dinámica 101 permitir udp todo todo
gt(los paquete coincidan con un puerto mayor) al 1024
access-list 102 permit tcp any any eq www ACL dinámica 101 permitir tcp todo todo solo para puerto www o puerto 80
access-list 102 permit udp any any eq domain
ACL dinámica 101 permitir udp todo todo solo para puerto domain o puerto 53
!
line con 0
line vty 0 4
login
!
end
___________________________________________________________________
Actividad 3 : Servidor
Definir 3 zonas en el firewall INTERNET, LAN y DMZ. Se asumirá que existe 1 servicio de red en la DMZ y 1 servicio privados en la LAN. Se deben establecer reglas de acceso que le permita a
los usuarios de la LAN salir a INTERNET sin problemas, pero el tráfico que proviene de INTERNET debe ser filtrado adecuadamente para que solo los servicios en la DMZ sean accesibles.
Estrategia:
Intente primero configurar las interfaces de red y aplicar el NAT básico para que garantice que los
paquetes pasan de un lado al otro de las interfaces sin problemas.
Una vez verifique que puede conectarse de un lado al otro, cree reglas de filtrado básicas entre
dos interfaces (no intente con las 3 interfaces al tiempo), primero garantice que puede diferenciar y
filtrar el tráfico entre 2 interfaces antes de intentar configurar las 3 tarjetas.
→ La política de diseño de este Firewall es
DROP BY DEFAULT, en este modo el firewall no dejará pasar nada a través de sus interfaces que no este explicita mente permitido.
Este es una Servidor en Debian, Y para implementar el Firewall solo basta con crear un Archivo con un nombre, este caso lo llamaremos firewall, para aplicarlo o ejecutarlo damos el comando ./firewall
Ahora veremos el archivo de configuración con su descripción de la acción o regla de firewall.
nano: /etc/firewall
##Limpiar toda la configuracion del iptables
iptables -X
iptables -F
iptables -Z
#Se deniega todo y despues se daran los permisos
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
#Permitir las reglas del nat
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
#permita dar ping al local host
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
#permitir la red de servidor DMZ
iptables -A INPUT -s 192.168.22.2 -j ACCEPT
iptables -A OUTPUT -d 192.168.22.2 -j ACCEPT
#PERMITIMOS LOS SERVICIOS COMO: ftp, ssh, dns.
#Permite la conexión con ssh
iptables -A FORWARD -i eth0 -p tcp --sport 22 -o eth1 --dport 1024:65535 -j ACCEPT
iptables -A FORWARD -i eth1 -p tcp --sport 1024:65535 -o eth0 --dport 22 -j ACCEPT
#Permite la conexión de www
iptables -A FORWARD -i eth0 -p tcp --sport 80 -o eth1 --dport 1024:65535 -j ACCEPT
iptables -A FORWARD -i eth1 -p tcp --sport 1024:65535 -o eth0 --dport 80 -j ACCEPT
#Permite la conexión del DNS por tcp
iptables -A FORWARD -i eth0 -p tcp --sport 53 -o eth1 --dport 1024:65535 -j ACCEPT
iptables -A FORWARD -i eth1 -p tcp --sport 1024:65535 -o eth0 --dport 53 -j ACCEPT
#Permite la conexión del DNS por udp
iptables -A FORWARD -i eth0 -p udp --sport 53 -o eth1 --dport 1024:65535 -j ACCEPT
iptables -A FORWARD -i eth1 -p udp --sport 1024:65535 -o eth0 --dport 53 -j ACCEPT
#Regla para el nat
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.22.0/24 -j MASQUERADE
#Activar el reenviador
echo 1 > /proc/sys/net/ipv4/ip_forward
#Prerouting para entrada a nuestro servidor
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.22.2:80
iptables -t nat -A PREROUTING -s 192.168.50.50 -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.22.2:80
iptables -A INPUT -s 192.168.50.0/24 -j ACCEPT
iptables -A OUTPUT -d 192.168.50.0/24 -j ACCEPT
#Reenviamos y aceptamos los paquetes del puerto 80
iptables -A FORWARD -i eth0 -p tcp --dport 80 -o eth1 --sport 1024:65535 -j ACCEPT
iptables -A FORWARD -i eth1 -p tcp --dport 1024:65535 -o eth0 --sport 80 -j ACCEPT
Con esto estara un buen listo un buen Firewall en un servidor linux.