Con el firewall Shorewall es muy fácil crear las reglas del Firewall / Cortafuegos con iPtables. Shorewall se encuentra bajo una licencia BSD (Que es libre la modificación y uso para zona comercial o no). Vamos a empezar con la instalación de Shorewall donde vamos a poner el ej con una distribución Debian o Ubuntu (podéis usar otra de forma fácil).
Entramos al terminal en modo root y escribimos:
apt-get install shorewall
Debe estar activo que el servicio de arranque lo haga automáticamente con lo que entramos en /etc/default/shorewall y modificamos:
startup=0 por startup=1
Vamos a configurar el firewall, copiamos los ficheros de configuración que tenemos default (Por defecto):
cp /usr/share/doc/shorewall-common/degault-config /etc/shorewall cp /usr/share/doc/shorewall/degault-config /etc/shorewall
Ahora debemos crear dos zonas (pueden ser más) en este caso LAN y WAN, nuestra RED LOCAL e INTERNET para esto editamos el fichero:
/etc/shorewall/zones
############################################################################### #ZONE TYPE OPTIONS IN OUT # OPTIONS OPTIONS fw firewall lan ipv4 # wan ipv4 # #LAST LINE - ADD YOUR ENTRIES ABOVE THIS ONE - DO NOT REMOVE
Vamos a crear las politicas necesarias como son:
- fw-lan
- fw-wan
- lan-wan
- lan-fw
- wan-lan
- wan-fw
Vamos a realizar una edición del fichero /etc/shorewall/policy
############################################################################### #SOURCE DEST POLICY LOG LIMIT:BURST # LEVEL local $FW ACCEPT local net ACCEPT $FW local ACCEPT $FW net ACCEPT net local DROP net $FW DROP #LAST LINE -- DO NOT REMOVE
Tenemos el archivo de configuración general de Shorewall: shorewall.conf aqui tenemos variables que debemos cambiar de forma útil como son las siguientes:
- STARTUP_ENABLED: Si no ponemos Yes el firewall no se podrá cambiar configuraciones, es una clara medida de protección de seguridad.
- ADMINISABSENTMINDED: Poniendo NO (solo el trafico de las direcciones que pongamos en /etc/shorewall/routestopped serán puestas para poder usarse al detener el firewall.
No olvidéis configurar reglas que nos permiten para decir que aceptamos y que no aceptamos, para evitar problemas y ataques, para esto editamos el fichero siguiente:
/etc/shorewall/rules
############################################################################################################################ #ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE USER/ MARK # PORT PORT(S) DEST LIMIT GROUP #SECTION ESTABLISHED #SECTION RELATED SECTION NEW ACCEPT net local tcp 80 #LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE