html
alband
Buscar...
Posts
Inicio
Comunidades
Destacados
Msica
Juegos
TOPs
Global
Novatos
Crear post
Me gusta
Historial
0 4 0 Twittear 0
alband
Seguidores Puntos Posts
218
6.222 55
Elite
Ver ms del autor
Opciones
Borrar Editar
Tags
iptables servidor linux firewall expuesto seguridad dmz gnu
Compartido por
Desde el prisma de un purista de la seguridad, el primer paso, para segmentar las redes que existirn en una organizacin, es identificar los diferentes servidores/servicios para decidir su distribucin. Aquellos que necesiten tener una puerta por la que entre trfico desde Internet, deber ir en una DMZ de servicios pblicos o frontend. La ubicacin de los servidores que nutren estas aplicaciones pblicas deben ir en una red diferente y protegida, o de backend. El trfico a permitir entre todas estas redes habr de ser el justo y necesario para evitar exposiciones de servicios/mquinas por error. Ms o menos como se puede ver en el dibujo de abajo.
Los servidores en la DMZ se denominan "anfitriones bastin" ya que actan como un puesto de avanzada en la red de la compaa.
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
En este tipo de firewall hay que permitir: - Acceso de la red local a internet y a la DMZ. - Acceso pblico desde internet al puerto tcp/80 y tcp/443 de nuestro servidor web 192.168.3.2 de la DMZ - Obviamente bloquear el resto de acceso de la DMZ hacia la Red local. Qu tipo de reglas son las que hay que usar para filtrar el trfico entre la DMZ y la LAN? Solo pueden ser las FORWARD, ya que estamos filtrando entre distintas redes, no son paquetes destinados al propio firewall. Debe tener presente, de esta manera, la DMZ posee un nivel de seguridad intermedio, el cual no es lo suficientemente alto para almacenar datos imprescindibles de la compaa.
Nos logueamos en el firewall, el primer tramite a realizar es configurar las interfaces de red.
su
poner contrasea de root, a partir de ahora y en todo el tutorial vamos a trabajar como usuario root. (si estas en ubuntu sudo su y pones tu propia contrasea)
Podemos ver que las 3 interfaces de red estn detectadas, solo una ya posee IP que fue asignada va DHCP por el router.
El servidor debe tener asignada ip fija en las 3 interfaces de red. ver los datos actuales
more /etc/resolv.conf
ifconfig eth0
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
netstat -r
auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.0.113 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.253 auto eth1 iface eth1 inet static address 192.168.10.1 netmask 255.255.255.0 network 192.168.10.0 broadcast 192.168.10.255 auto eth2 iface eth2 inet static address 192.168.3.1 netmask 255.255.255.0 network 192.168.3.0 broadcast 192.168.3.255
Como se puede apreciar cada interfaz de red usa un rango diferente eth0 192.168.0.0/24 , eth1 192.168.10.0/24 , eth2 192.168.3.0/24
wget http://files.myopera.com/alband/files/interfaces-dmz
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
reiniciamos la red
/etc/init.d/networking restart
OpenDNS Ofrece las siguientes direcciones de servidor de nombres de dominio para uso pblico 208.67.222.222 208.67.220.220 o puede usar los correspondientes a su proveedor de internet.
echo nameserver 208.67.220.220 > /etc/resolv.conf
DHCP Server
DHCP responde al protocolo de configuracin dinmica de host. En otras palabras, es un protocolo que se utiliza para proporcionar una configuracin ip a otros equipos que se encuentren en el mismo segmento de red que el servidor. El servidor DHCP es aquel que proporciona direcciones ip dinmicas a equipos que lo soliciten.
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
nano dhcpd.conf
authoritative; subnet 192.168.10.0 netmask 255.255.255.0 { range 192.168.10.2 192.168.1.20; option domain-name-servers 208.67.220.220,208.67.222.222; option domain-name "firewall"; option routers 192.168.10.1; option broadcast-address 192.168.10.255; default-lease-time 600000; max-lease-time 720000; } #host jefe { #hardware ethernet xx:xx:xx:xx:xx:xx; #fixed-address 192.168.1.160; #} #host alband { #hardware ethernet xx:xx:xx:xx:xx:xx; #fixed-address 192.168.1.161; #}
Si se desea asignar IP fija a algunos equipos en particular, descomentar las ltimas 8 lineas y completar con datos que correspondan, host jefe y alband. La configuracin se puede bajar:
wget http://files.myopera.com/alband/files/dmz-dhcpd.conf
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
Debemos editar el archivo de configuracin dnde deberemos indicar en que tarjeta se quiere activar el servidor DHCP, modificando la siguiente lnea:
INTERFACES="eth1"
nano /etc/default/isc-dhcp-server
Reiniciamos el servicio
/etc/init.d/isc-dhcp-server restart
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
En la imagen estn los datos reales que usar, una vez comprendida la imagen anterior ya tenemos ms claro que vamos a hacer. Creamos nuestro script de iptables
nano /etc/network/if-up.d/firewall
#!/bin/sh ## SCRIPT de IPTABLES - ejemplo del manual de iptables ## Ejemplo de script para firewall entre red-local e internet con DMZ ## ## Pello Xabier Altadill Izura ## www.pello.info - pello@pello.info ## modificado por alband de Taringa echo -n Aplicando Reglas de Firewall... ## FLUSH de reglas iptables -F iptables -X iptables -Z iptables -t nat -F ## Establecemos politica por defecto iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT iptables -t nat -P PREROUTING ACCEPT iptables -t nat -P POSTROUTING ACCEPT # eth0 es el interfaz conectado al router y eth1 a la Red local # Todo lo que venga por el exterior y vaya a los puerto 80 y 433 # lo redirigimos al servidor web (192.168.3.2) de la DMZ iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.3.2:80 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j DNAT --to 192.168.3.2:443 # El localhost se deja (por ejemplo conexiones locales a mysql) iptables -A INPUT -i lo -j ACCEPT # Al firewall tenemos acceso desde la red local iptables -A INPUT -s 192.168.10.0/24 -i eth1 -j ACCEPT
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
# Ahora hacemos enmascaramiento de la red local y de la DMZ # para que puedan salir haca fuera # y activamos el BIT DE FORWARDING (imprescindible!!!!!) iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o eth0 -j MASQUERADE iptables -t nat -A POSTROUTING -s 192.168.3.0/24 -o eth0 -j MASQUERADE # Con esto permitimos hacer forward de paquetes en el firewall, o sea # que otras mquinas puedan salir a traves del firewall. echo 1 > /proc/sys/net/ipv4/ip_forward ## Permitimos el paso de la Red local al servidor web la DMZ iptables -A FORWARD -s 192.168.3.2 -d 192.168.10.5 -p tcp --sport 80 -j ACCEPT iptables -A FORWARD -s 192.168.10.5 -d 192.168.3.2 -p tcp --dport 80 -j ACCEPT
# Cerramos el acceso de la DMZ a la Red local iptables -A FORWARD -s 192.168.3.0/24 -d 192.168.10.0/24 -j DROP ## Cerramos el acceso de la DMZ al propio firewall iptables -A INPUT -s 192.168.3.0/24 -i eth2 -j DROP ## Y ahora cerramos los accesos indeseados del exterior: iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 1:1024 -j DROP iptables -A INPUT -s 0.0.0.0/0 -p udp --dport 1:1024 -j DROP # Cerramos un puerto de gestin: webmin iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 10000 -j DROP
# Algunas medidas de proteccin # Deshabilitar broadcast echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts # Deshabilitar el ping... quiz discutible. echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all # Deshabilitar la redireccin del ping echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects # Registrar los accesos extraos, paquetes falseados, etc.. echo "1" > /proc/sys/net/ipv4/conf/all/log_martians # Anti-flooding o inundacin de tramas SYN. iptables -N syn-flood iptables -A INPUT -i etho -p tcp --syn -j syn-flood iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN iptables -A syn-flood -j DROP echo " OK . Verifique que lo que se aplica con: iptables -nL" # Fin del script
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
luego copiarlo
cp dmz-firewall /etc/network/if-up.d
Servidor web
En el servidor web que estar aislado en la DMZ debemos configurar correctamente su IP.
nano -wB /etc/network/interfaces
auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.3.2 netmask 255.255.255.0 network 192.168.3.0
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
broadcast 192.168.0.255 gateway 192.168.3.1
Desde mi ip 192.168.0.101, pongo la ip del firewall y veo el apache del servidor web que esta en la DMZ. El firewall no responde al ping, recomiendo ampliar la imagen para entender mejor.
Aqu apreciamos un cliente de la red local, el servidor DHCP del firewal le asigo IP, vemos que tiene navegacin y puede entrar al servidor web de la DMZ.
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
Amigos, para consultas puntuales sobre este tema, pasen por esta comunidad, todos sern bienvenidos!!
_____________________________________________________________________
Si te gusto el post comenta! Estas sin tiempo para leerlo detenidamente? Agregalo a favoritos ya! No entendiste algo? mandame un MP que te ayudo. Te gustan mis aportes? Seguime! no te defraudar.
Fuentes de conocimiento: http://www.securitybydefault.com/2012/07/securizando-un-entorno-de-maquinas.html http://es.kioskea.net/contents/protect/dmz-cloisonnement.php3 http://es.wikipedia.org/wiki/Zona_desmilitarizada_%28inform%C3%A1tica%29 http://www.informatica-hoy.com.ar/aprender-informatica/Que-es-DMZ.php http://www.pello.info/filez/firewall/iptables.html
Fuentes de Informacin
El contenido del post es de mi autora, y/o, es un recopilacin de distintas fuentes.
0
Enviar
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
0
Me gusta
0
Twittear
175 Puntos
Votos: 22 - T! score: 8 / 10 A favoritos
Favoritos
21
677
Visitas
Seguidores
Relacionados
Servidor de Linux en un conector Ethernet Instalar Servidor Web Linux desde cero Linux terminal server en debian parte 2 Montar Servidor Firewall en Linux [Ubuntu] Firewall para GNU/Linux Fail2ban - Para dar proteccin a tu servidor. [DD] Curso de Especializacin Superior Gnu/Linux Curso de Especializacin Superior en GNU/Linux
10 comentarios
@Novatovich hace 26 das +2 buen post @alband hace 26 das +2 Gracias amigo, tengo en mente lo del gentoo desktop, aguantame por favor! @Novatovich hace 26 das @alband tranquilo cuando puedas , "sin prisa pero sin pausa" @Leproso_Ivan hace 26 das +2 Excelente como siempre colega.. @alband hace 26 das +1 Gracias por valorar mis aportes amigo! @ratman26 hace 26 das +2 Muy bueno la verdad, +10 @chapitalmala hace 26 das +1 Buensimo ! Groso ! @alband hace 26 das +1 Gracias amigo! Seguro que esto te puede ayudar con el tema de intrusos en tu red! @perrumo hace 26 das +1 Gracias por el aporte Brother @ramiperez_pr hace 26 das +1 muy bueno +10 @piruo7 hace 26 das +1 Gracias por otro excelente aporte... +10 @ramses_17 hace 25 das +1 Que distribucin usaste para montar este servidor? Por cierto +10
http://www.taringa.net/posts/linux/16025979/Firewall-para-servidores-expuestos.html
@alband hace 25 das En Debian esta realizado el tutorial. Gracias por visitar el post y por los puntos amigo! @ramses_17 hace 25 das +1 @alband Gracias a ti por el aporte @cesarzeta hace 24 das Buen trabajo como siempre. @alband hace 24 das Gracias amigo por valorar mi aporte. Saludos! @mao1234567890 hace 24 das +1 Excelente aporte!
Escribir un comentario...
Comentar
Buscar...
Ir al cielo
Anunciar
Ayuda
Prensa
Protocolo
Desarrolladores
Denuncias
Trminos y condiciones
Privacidad de datos