viernes, 17 de junio de 2011

instalar shorewall en centos ( install shorewall in centos) para 3 regiones (dmz lan net)

Hola mis amados lectores volviendo a las andadas con linux... sali una semana de vacaciones y la verdad no se si me hizo bien porque perdi ritmo en mi blog pero ahora volvemos con fuerza... saben en nuestra red tenemos un dmz ( granja de servidores) donde puedes brindar todo tipo de servicios, también tenemos nuestra lan, que puede ser nuestros amados usuarios molestosos... ¬¬ que quieren tener amplio ancho de banda y o consumir horas de horas en descargas, manos a la obra.



DMZ Granja de servidores
LAN Intranet local
NET internet

Instalando el firewall, usaremos un front-end para trabajar en este caso utilizaremos shorewall lo descargamos de la siguiente url para centos donwload
en mi caso de ejemplo estoy utilizando la versión shorewall-4.4.12.2-1.noarch.rpm

root@localhost# rpm -ivh shorewall-4.4.12.2-1.noarch.rpm
donde:
i Instalar el paquete rpm
v Muestra la información de los cambios realizados durante la instalación
h Imprime 50 lineas # indicando que ha finalizado el desempaquetado
root@localhost# cd /usr/share/doc/shorewall-4.4.12.2/

[root@localhost shorewall-4.4.12.2]# ls -l
total 152
-rw-r--r-- 1 root root 13035 sep  4  2010 changelog.txt
drwxr-xr-x 2 root root  4096 jun 16 11:01 Contrib
-rw-r--r-- 1 root root 18002 sep  4  2010 COPYING
-rw-r--r-- 1 root root   969 sep  4  2010 INSTALL
-rw-r--r-- 1 root root 98948 sep  4  2010 releasenotes.txt
drwxr-xr-x 6 root root  4096 jun 16 11:01 Samples

[root@localhost shorewall-4.4.12.2]# cd Samples

[root@localhost shorewall-4.4.12.2]# ls -l

total 48
-rw-r--r-- 1 root root 26432 sep  4  2010 LICENSE
drwxr-xr-x 2 root root  4096 jun 16 11:01 one-interface
-rw-r--r-- 1 root root  1144 sep  4  2010 README.txt
drwxr-xr-x 2 root root  4096 jun 16 11:01 three-interfaces
drwxr-xr-x 2 root root  4096 jun 16 11:01 two-interfaces
drwxr-xr-x 2 root root  4096 jun 16 11:01 Universal

[root@localhost shorewall-4.4.12.2]# cd three-interfaces/

[root@localhost shorewall-4.4.12.2]# ls -l 
total 36
-rw-r--r-- 1 root root  952 sep  4  2010 interfaces
-rw-r--r-- 1 root root  798 sep  4  2010 masq
-rw-r--r-- 1 root root  810 sep  4  2010 policy
-rw-r--r-- 1 root root 1133 sep  4  2010 README.txt
-rw-r--r-- 1 root root  713 sep  4  2010 routestopped
-rw-r--r-- 1 root root 1795 sep  4  2010 rules
-rw-r--r-- 1 root root 4228 sep  4  2010 shorewall.conf
-rw-r--r-- 1 root root  758 sep  4  2010 zones
[root@localhost shorewall-4.4.12.2]# cp -rfv * /etc/shorewall/. 
Opciones de cp:

rcopia los archivos/directorios de forma recursiva
fselecciona archivos a copiar
v muestra los archivos copiados
Editamos los archivos necesarios:
Para que arranque al inicio el demonio
[root@localhost shorewall-4.4.12.2]# vim /etc/shorewall/shorewall.conf
STARTUP_ENABLED=Yes
Editamos el archivo zone en mi caso 3 zonas van a existir: lan, net, dmz
root@localhost# vim /etc/shorewall/zones
###############################################################################
#ZONE   TYPE    OPTIONS                 IN                      OUT
#                                       OPTIONS                 OPTIONS
fw      firewall
net     ipv4
lan     ipv4
dmz     ipv4
Editamos el archivo interfaces que va a definir a que interfaz pertenece cada zona
root@localhost# vim /etc/shorewall/zones
###############################################################################
#ZONE   TYPE    OPTIONS                 IN                      OUT
#                                       OPTIONS                 OPTIONS
fw      firewall
net     ipv4
lan     ipv4
dmz     ipv4
Editamos el archivo masq para que enmascare la ip si es que tenemos un pool de ips que brindan servicio externo en nuestro caso, nuestro dmz brinda varios servicios hacia internet pero solo tenemos una eth0 con una unica ip para enmascarar.
root@localhost# vim /etc/shorewall/masq 
##############################################################################
#INTERFACE              SOURCE          ADDRESS         PROTO   PORT(S) IPSEC   MARK
eth0                    192.168.40.0/28,\
                        172.16.3.0/24
Editamos el archivo policy para declarar las reglas generales que afectaran al firewall:
###############################################################################
#SOURCE         DEST            POLICY          LOG LEVEL       LIMIT:BURST
$FW             all             ACCEPT
# THE FOLLOWING POLICY MUST BE LAST
all             all             DROP
Para finalizar trabajamos con el archivo rules donde damos los permisos necesarios para trabajar... en el siguiente recuadro solo se adjunta algunos datos básicos que yo considero a modo de ejemplo en otros manuales ya detallaremos más a profundidad.
root@localhost# vim /etc/shorewall/rules
#############################################################################################################
#ACTION         SOURCE          DEST            PROTO   DEST    SOURCE          ORIGINAL        RATE            USER/   MARK
# Se permite conexion ssh puerto 22 al firewall desde la red local lan
SSH(ACCEPT)     lan             $FW
# Se permite conexion ssh puerto 22 al firewall desde internet
SSH(ACCEPT)     net             $FW
# Se permite conexion ssh puerto 22 a dmz desde internet
SSH(ACCEPT)     net             dmz
# Se permite la resolución de nombres para la zona dmz
DNS(ACCEPT)     dmz             net
# Se permite hacer ping desde la zona dmz al FW 
Ping(ACCEPT)    dmz             $FW
En estos casos las reglas anteriores solo demuestran que solo lo que se habilite en rules estará permitido ya que por defecto en el archivo policy estará denegado

Comprobar que no existe ningún error de configuración:
root@localhost# shorewall check 
root@localhost# /etc/init.d/shorewall start 

1 comentario:

atvidal dijo...

Saludos de Andrės:

Instalė Centos 6 y no puedo escuchar musica. ¿Sabes como instalar los codecs?
Recuerdos y anticipandole las gracias,
Andrės

 
;