La idea de este cómo es como compartir la internet de nuestra casa u oficina con otros ordenadores. No se abarca conceptos teóricos ya que no es el objetivo de este cómo.
Antes empezar, se asume que se tiene dos tarjetas de red en el equipo, eth0 que se conecta a la internet y eth1 que se conecta a nuestra red local.
Lo primero es configurar las zonas de red a las que tendrá acceso el firewall, para esto se edita el archivo /etc/shorewall/zones
#
# Shorewall version 4 - Zones File
#
# For information about this file, type "man shorewall-zones"
#
# The manpage is also online at
# http://www.shorewall.net/manpages/shorewall-zones.html
#
###############################################################################
#ZONE TYPE OPTIONS IN OUT
# OPTIONS OPTIONS
fw firewall
loc ipv4
net ipv4
#LAST LINE - ADD YOUR ENTRIES ABOVE THIS ONE - DO NOT REMOVE
La primera línea es para el firewall, el cual es una zona en si. La segunda línea es la red local a la que le daremos internet. La tercera línea es la red de internet.
Lo que sigue es asignar cada zona a un interfaz de red de nuestro firewall, para esto hay que editar el archivo /etc/shorewall/interfaces
#
# Shorewall version 4 - Interfaces File
#
# For information about entries in this file, type "man shorewall-interfaces"
#
# The manpage is also online at
# http://www.shorewall.net/manpages/shorewall-interfaces.html
#
###############################################################################
#ZONE INTERFACE BROADCAST OPTIONS
net eth1 detect dhcp,norfc1918,nosmurfs,tcpflags
loc eth1 detect dhcp
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
Después de esto, hay que enmascarar nuestras interfaz de red local con la interfaz de red externa o conectada a la internet. Para hacerlo, hay que modificar el archivo /etc/shorewall/masq
#
# Shorewall version 4 - Masq file
#
# For information about entries in this file, type "man shorewall-masq"
#
# The manpage is also online at
# http://www.shorewall.net/manpages/shorewall-masq.html
#
###############################################################################
#INTERFACE SOURCE ADDRESS PROTO PORT(S) IPSEC
# MARK
#eth1 eth0
#LAST LINE -- ADD YOUR ENTRIES ABOVE THIS LINE -- DO NOT REMOVE
Ahora hay que definir las políticas por defecto en el arcihvo /etc/shorewall/policy
#
# Shorewall version 4 - Policy File
#
# For information about entries in this file, type "man shorewall-policy"
#
# The manpage is also online at
# http://www.shorewall.net/manpages/shorewall-policy.html
#
###############################################################################
#SOURCE DEST POLICY LOG LIMIT:BURST
fw all ACCEPT
loc all ACCEPT
net all DROP info
all all REJECT info
#LAST LINE -- DO NOT REMOVE
La primera línea es nuestro firewall, quien tiene acceso a todas las zonas. La segunda línea es la red local, que también tiene acceso a todo. La tercera linea es la red externa o la zona que tiene acceso a internet, como es una zona externa, aqui eliminamos el acceso de esta zona a cualquier otra. Al final del archivo siempre irá un REJECT para rechazar cualquier otro tipo de conección
Ahora queda definir las reglas de acceso especificas para cada una de las zonas, donde solo habrá acceso de internet y ssh ala red local y el servidor firewall respectivamente. hay que editar el archivo /etc/shorewall/rules
#
# Shorewall version 4 - Rules File
#
# For information on the settings in this file, type "man shorewall-rules"
#
# The manpage is also online at
# http://www.shorewall.net/manpages/shorewall-rules.html
#
################################################################################
############################################
#ACTION SOURCE DEST PROTO DEST SOURCE
# ORIGINAL RATE USER/ MARK
# PORT PORT(S) DEST
$ LIMIT GROUP
ACCEPT all fw tcp 80
ACCEPT all fw tcp 22
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
La primera línea esta permitiendo el acceso de cualquier zona hacia el firewall a través del puerto 80, la segunda línea permite el acceso de cualquier zona al firewall a través del puerto 22
Para concluir este cómo, hay que decir a shorewall que trabaje como un demonio, para esto, en el archivo /etc/shorewall/shorewall.conf hay que buscar la siguiente línea y dejarla en "Yes"
STARTUP_ENABLED=Yes
Ahora activamos el bit de forwarding en el mismo archivo /etc/shorewall/shorewall.conf
IP_FORWARDING=On
Solo quede reiniciar el servicio shorewall, pero antes podemos verificar que la sintaxis de los archivos de shorewall esten correctos de la siguiente manera:
$ sudo shorewall check
Reeinicio el servicio, y shorewall ya debe estar compartiendo la internet
$ sudo /etc/init.d shorewall restart
No hay comentarios.:
Publicar un comentario