Todo lo anterior permite el paso entre las diversas zonas hacia Internet, lo cual no es deseable si se quiere mantener una política estricta de seguridad. La recomendación es cerrar todo hacia todo e ir abriendo el tráfico de acuerdo a como se vaya requiriendo. Es decir, utilizar algo como lo siguiente:
#SOURCE DEST POLICY LOG LIMIT:BURST
net all DROP info
all all REJECT info
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
Lo anterior bloquea todo el tráfico desde donde sea a donde sea. Si es necesario realizar pruebas de diagnóstico desde el cortafuego hacia Internet para probar conectividad y acceso hacia diversos protocolos, se puede utilizar lo siguiente:
#SOURCE DEST POLICY LOG LIMIT:BURST
fw net ACCEPT
net all DROP info
all all REJECT info
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
Lo anterior permite al propio cortafuego acceder hacia la zona de Internet. Esta sería la política más relajada que se pudiera recomendar para mantener un nivel de seguridad aceptable.
e) Fichero de configuración /etc/shorewall/masq
Se utiliza para definir que a través de que interfaz o interfaces se habilitará enmascaramiento, o NAT, y para que interfaz o interfaces o redes se aplicará dicho enmascaramiento. En el siguiente ejemplo, se realizará enmascaramiento a través de la interfaz ppp0 para las redes que acceden desde las interfaces eth0 y eth1:
#INTERFACE SUBNET ADDRESS PROTO PORT(S) IPSEC
ppp0 eth0
ppp0 eth1
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
En el siguiente ejemplo, se realizará enmascaramiento a través de la interfaz eth0 para las redes 192.168.0.0/24 y 192.168.1.0/24:
#INTERFACE SUBNET ADDRESS
PROTO PORT(S) IPSEC
eth0 192.168.0.0/24 eth0 192.168.1.0/24
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
También es posible hacer NAT solamente hacia una IP en particular y para un solo protocolo en particular. En el siguiente ejemplo se hace NAT a través de la interfaz ppp0 para la dirección 192.168.3.25 que accede desde la interfaz eth1 y solo se le permitirá hacer NAT de los protocolos smtp y pop3. Los nombres
de los servicios se asignan de acuerdo a como estén listados en el fichero /etc/services.
#INTERFACE SUBNET ADDRESS PROTO PORT(S) IPSEC eth0 eth1 192.168.3.2 tcp 25,110, 53
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
f) Fichero de configuración /etc/shorewall/rules
Todos los puertos están cerrados de modo predefinido, y es en este fichero donde se habilitan los puertos necesarios. Hay diversas funciones que pueden realizarse.
ACCEPT
La acción ACCEPT se hace para especificar si se permiten conexiones desde o hacia una(s) zona (s) un protocolo(s) y puerto(s) en particular. En el siguiente ejemplo se permiten conexiones desde Internet hacia el puerto 80 (www), 25 (smtp) y 110 (pop3). Los nombres de los servicios se asignan de acuerdo a como estén listados en el fichero /etc/services.
#ACTION SOURCE DEST PROTO DEST PORT
ACCEPT net fw tcp 80,25,110, 53
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
REDIRECT
La acción REDIRECT permite redirigir peticiones hacia un puerto en particular. Muy útil cuando se quieren redirigir peticiones para HTTP (puerto 80) y se quiere que estas pasen a través de un Servidor Intermediario
(Proxy) como Squid. En el siguiente ejemplo las peticiones hechas desde la red local y desde la DMZ serán redirigidas hacia el puerto 8080 del cortafuegos, en donde hay un Servidor Intermediario (Proxy) configurado de modo transparente.
#ACTION SOURCE DEST PROTO DEST
# PORT
REDIRECT loc 8080 tcp 80
REDIRECT dmz 8080 tcp 80
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
En el siguiente ejemplo las peticiones hechas desde la red local (LAN) serán redirigidas hacia el puerto 8080 del cortafuegos, en donde hay un Servidor Intermediario (Proxy) configurado de modo transparente, limitando la taza de conexiones a diez por segundo con ráfagas de hasta cinco conexiones. Esto es muy útil para evitar ataques de DoS (acrónimo de Denial of Service que se traduce como Denegación de Servicio) desde la red local (LAN).
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE
# PORT PORT(S) DEST LIMIT
REDIRET loc 8080 tcp 80 - - 20/sec:5
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
g) Iniciar el cortafuego y añadirlo a los servicios de arranque del sistema
service shorewall start
Para hacer que los cambios hechos a la configuración surtan efecto, utilce: service shorewall restart
Para detener el cortafuegos, utilice:
service shorewall stop
Cabe señalar que detener el cortafuego también detiene todo tráfico de red, incluyendo el tráfico proveniente desde la LAN. Si se desea restaurar el tráfico de red, sin la protección de un cortafuego, será necesario también utilizar el guión de iptables.
service iptables stop
Lo más conveniente, en caso de ser necesario detener el cortafuegos, es definir que direcciones IP o redes podrán continuar accediendo cuando el cortafuegos es detenido, o cuando éste se encuentra en proceso de reinicio. Esto se define en el fichero /etc/shorewall/routestopped, definiendo la interfaz, a través de la cual se permitirá la comunicación, y la dirección IP o red, en un formato de lista separada por comas, de los anfitriones que podrán acceder al cortafuegos. Ejemplo:
#INTERFACE HOST(S) OPTIONS
eth0 192.168.1.0/24
eth0 192.168.2.30,192.168.2.31
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
Para añadir Shorewall al arranque del sistema, utilice: chkconfig shorewall on
VII. CONFIGURACION DE PARÁMETROS DE SEGURIDAD