Sobre el tema firewall les dejo una guía que escribí hace 2 años en DesdeLinux, que por aquellos tiempos era Debianita, disfrutenla.
FW Builder lo mejor!!!!
Hola foreros, les escribo para compartir mis experiencias con ustedes, este es mi primer artículo así que por favor suave con las críticas!!!!
Me dedico a la administración de red desde hace algunos años, y siempre supe que uno de mis puntos débiles en este aspecto era la configuración del firewall, no lograba sacarle todo el potencial al netfilter de Linux, sentía mis configuraciones bien pobres y “para resolver la situación”, hasta que empecé a estudiar esta maravillosa aplicación (FW Builder). Siempre vi que en otros foros hablaban mucho sobre el PF de FreeBSD, y ví realizar configuraciones que ni en sueños se me hubiesen ocurrido implementar (además de ser muy complejas), IPv6, QOS, HA, etc, buff, mucho para mí; pero siempre tuve el optimismo de poder realizar eso mismo en Linux, porque así me lo propuse, no quise migrar mi firewall a otro sistema, porque con Debian e iptables puedo realizar lo que sea!!!
Bueno para instalar el programa basta con un
apt-get install fwbuilder
o si tenemos los backports
apt-get -t squeeze-backports install fwbuilder
pero caemos en lo mismo y más frustrarte en Debian, la versión que se te instala es la 3.x, bien vieja por cierto, así que me dí a la tarea de compilar.
Descargamos del siguiente link el software (ya que recuerden o para los que no lo saben, SourceForge nos niega el acceso … vivo en Cuba), por tanto tuve que usar un mirror externo a Sourceforge, pero con el mismo contenido y menos restricciones (guarden este link que les va a ser muy útil).
Ahí tenemos toda clase de instaladores, .deb , .rpm, y las sources, yo me baje esta, ya que las demás pesaban mucho y tengo una conexión media, etc.
Dentro de una directorio lo usual
tar -xvf fwbuilder-5.1.0.3599.tar.gz
y luego
cd fwbuilder-5.1.0.3599
ahora comprobamos que tenemos las dependencias que el solicita (les puse las de Debian porque es el que uso):
apt-get install automake autoconf libtool libxml2-dev libxslt-dev libsnmp-dev libqt4-core libqt4-dev libqt4-gui qt4-dev-tools
Personalmente no uso el método
./configure
make
make-install
Porque luego para desintalarlo es una pequeña chorizera, por tanto uso una pequeña app que se llama “checkinstall“:
apt-get install checkinstall
Este programa lo que hace es que te lo compila y te genera el .deb, para que luego uno lo pueda brindar a sus amigos y también desintalarlo, sirve con todos los programas, siguiendo el hilo, tenemos que; en la carpeta donde descomprimimos, hacemos un:
./autogen.sh --prefix="/opt/fwbuilder
Verificar tener el directorio creado (en este ejemplo /opt/fwbuilder)
cd /opt/fwbuilder
si todo les sale bien, hacemos
make
y luego, usando la app antes instalada
checkinstall -D make install
para sistemas .deb, para rpm usamos
checkinstall -R make install
y para Slackware
checkinstall -S make install
esto nos genera el paquete y lo instala, buff, todo fácil verdad, ahora comienza lo entretenido.
Una vez instalado, debemos hacerle un enlace simbólico a todo lo que se encuantre en “/opt/fwbuilder/bin/” para “/usr/bin/“, le hacemos un enlace “blando”:
ln -s /opt/fwbuilder/bin/fwbuilder /usr/bin/
Después verificamos con
whereis fwbuilder
nos debe salir algo como esto:
fwbuilder: /usr/bin/fwbuilder /opt/fwbuilder/bin/fwbuilder
esto es suficiente para empezar a trabajar con el programa, nos creamos un lanzador o simplemente desde la consola tipeamos fwbuilder
(no ejecutar como root, no pasa nada pero no es necesario).
traceroute to fwbuilder.org (70.85.175.170), 20 hops max, 40 byte packets
1 174.36.196.241-static.reverse.softlayer.com (174.36.196.241) 0.480 ms 0.482 ms 0.510 ms
2 ae11.dar02.sr01.wdc01.networklayer.com (208.43.118.137) 0.384 ms 0.373 ms 0.362 ms
3 ae9.bbr01.eq01.wdc02.networklayer.com (173.192.18.202) 0.830 ms 0.861 ms 1.182 ms
4 ae7.bbr01.eq01.wdc02.networklayer.com (173.192.18.194) 0.700 ms ae0.bbr01.tl01.atl01.networklayer.com (173.192.18.153) 16.198 ms 14.743 ms
5 ae0.bbr01.tl01.atl01.networklayer.com (173.192.18.153) 14.776 ms ae13.bbr02.eq01.dal03.networklayer.com (173.192.18.134) 33.203 ms 32.204 ms
6 ae13.bbr02.eq01.dal03.networklayer.com (173.192.18.134) 32.258 ms 32.832 ms 33.258 ms
7 po32.dsr02.dllstx3.networklayer.com (173.192.18.231) 34.402 ms po32.dsr01.dllstx3.networklayer.com (173.192.18.229) 33.664 ms po32.dsr02.dllstx2.networklayer.com (70.87.255.70) 33.467 ms
8 po1.car03.dllstx6.networklayer.com (70.87.254.154) 33.127 ms po32.dsr02.dllstx2.networklayer.com (70.87.255.70) 33.580 ms po31.dsr01.dllstx2.networklayer.com (70.87.255.66) 36.189 ms
9 aa.af.5546.static.theplanet.com (70.85.175.170) 34.035 ms po2.car03.dllstx6.networklayer.com (70.87.254.158) 36.318 ms po1.car03.dllstx6.networklayer.com (70.87.254.154) 33.102 ms
Domain Name:FWBUILDER.ORG
Sponsoring Registrar:Network Solutions, LLC (R63-LROR)
City:Houston
State:TX
Country:United States
Amigo #Network Solutions# es la infraestructura de red que le sirve a la CIA y al gobierno americano para el espionaje mundial, si ese dominio pertenece a Network Solutions, dudaria de la eficacia de ese producto por lo que implican las leyes de exportacion de software, el gobierno americano lo tiene todo bien regulado con la ICCAN, EFF, ellos jamas dejarian escapar de sus fronteras software verdaderamente innovador.
Saludos cordiales
Cuando uno va a emitir un criterio lo primero que debe hacer es documentarse bien, haber trabajado con la aplicación y dejar los ataques de locura.
Esta aplicación lo que hace es generarte las reglas que uno comodamente estableció, te muestro la salida de una para que me digas donde la CIA, la NSA, el proyecto PRISM, etc. se pudieran conectar a mi servidor (PF), o donde está el agujero de seguridad:
set block-policy drop
set optimization normal
#
# Rule 0 (lo0)
# Acceso total a la localhost.
pass log quick on lo0 inet from any to any label «FW – LOOP»
#
# Rule 1 (igb0)
# Servicios.
pass log quick on igb0 inet proto tcp from 10.0.0.26 port 20 to 10.0.0.17 port 29999 >< 50001 modulate state label "FW – SERVICIOS"
pass log quick on igb0 inet proto tcp from 10.0.0.26 to 10.0.0.17 port { 445, 2401, 5999, 53, 21, 20, 80, 443, 143, 993, 88, 543, 544, 389, 636, 135, 3306, 139, 110, 995, 5432, 1812, 1813, 873, 1935, 554, 25, 465, 3128, 22, 5222, 5269 } modulate state label "FW – SERVICIOS"
#
# Rule 2 (global)
# Salida del Firewall.
pass out log quick inet from self to any label "FW – SALIDA"
#
# Rule fallback rule
# fallback rule
block quick inet from any to any no state label "FW 10000 — DROP "
¿es eficaz o no?
La forma mas basica de adquirir conocimiento es la experimentacion pragmatica, mas alla de la ciencia practica esta la logica, mas alla de la logica esta el ingenio, mas alla esta la verdad o el logos.
http://www.grm.jovenclub.cu/repogutl/packages/kakawall.sh.zip
este es un generador de reglas iptables y construye un excelente cortafuegos, tambien esta firestarter, chkrrotkit rkhunter y tiger, son analizadores de malware.
Tu software puede ser excelentisimo pero el verdadero conocimiento radica en usar las manos y el pensamiento.
Imagina tus servidores que sufran un ataque malicioso y para pararles requieras un tocador de puertos de tipo FWKNOCK, y no este instalado, imagina que ese malware es indetectable y se salta al firewall por el puerto 4444, no seria mejor haber blindado tu sistema a dejar la seguridad a un software, escrito por terceros. Es solo un punto de vista, tomalo o dejalo.
https://owasp.org/index.php/Discusión#Endureciendo_y_optimizando_sistemas_operativos
Respetos
«La forma mas basica de adquirir conocimiento es la experimentacion pragmatica, mas alla de la ciencia practica esta la logica, mas alla de la logica esta el ingenio, mas alla esta la verdad o el logos.»
ok, estoy de acuerdo, pero, ¿que tiene que ver entonces el kakawall en esta historia?,
«verdadero conocimiento radica en usar las manos y el pensamiento»
verdadero conocimiento radica en usar las manos y el pensamiento + kakawall, por que no puede ser fwbuilder, ¿por que no es un producto nacional?
«chkrrotkit rkhunter y tiger, son analizadores de malware»
el tema inicial siempre fue firewall, no HIDS o NIDS
«este es un generador de reglas iptables y construye un excelente cortafuegos»
¿porque suponer que el «kakawall» es mejor?, simplemente por esto afirmo que no: al leer este código fuente(un pequeño pedazo) de este «super generador», lamentablemente nos tropezamos con esto:
# verificamos que no este comiendo pinga, una vez mas, se asume por definicion que si
pin=$(seq 1111 9999|shuf|tail -1|rev); echo 0 > $vastaus
whiptail –nocancel –title «$cuantos servicios en $(cat /etc/hostname)» –inputbox «Se creara un firewal que PERMITIRA los puertos: $(cat $servicios). Si esto correcto introsduca el pin $pin en el texto dado. No se podra acceder a mas servicios en la interfaz $iface, solo a esos que te puse ahi.» 12 60 2> $vastaus
test $pin = $(cat $vastaus) || whiptail –title ‘REPINGA!!! atiende’ –msgbox ‘Acere REPINGA. Atiende y lee los singaos carteles.’ 10 55
test $pin = $(cat $vastaus) || exit 255
como pueden ver softwares como estos, hechos por gente de buena voluntad pero que por desgracia no tienen una gota de profesionalismo, hacen que por lo menos todavía el software nacional no se acerque ni a los tobillos a aplicaciones extranjeras tan profesionales y laureadas como esta en tema seguridad.
«no seria mejor haber blindado tu sistema a dejar la seguridad a un software, escrito por terceros»
¿el sistema operativo que usas es hecho por ti?, ¿el kakawall es hecho por ti?, ¿el kakawall esta certificado?, ¿el snort o el aide es hecho por ti?
la elección de cada cual radica en lo que ha investigado de la aplicación a la que va a hacer uso, les pongo un ejemplo, cuántas empresas en este país usan RHEL 6???, creen ustedes que se hizo una buena elección, pues claro, hasta hace solo unos días, y después que se hizo público que Red Hat colaboraba con la NSA qué?
creanme, prefiero usar fwbuilder a kakawall(sin ofender a su desarrollador).
es mi más sincera opinión
Es toda una joyita el software. :s
No hay mejor ejemplo de bastión que OpenBSD, los invito a que poniendo esto en la shell, puedan tan siquiera modificarle un fichero:
#sysctl kern.securelevel=3
una alternativa sumamente confiable y segura, y que además casi nunca verán envueltas en problemas de seguridad son los entornos BSD, les pongo el ejemplo de OpenBSD, que en 10 años nada más tuvo 2 BUG, ¿se atreven a darle una oportunidad?, los invito.
El firewall, solo es uno de muchos aspectos de la seguridad de un sistema operativo. Imaginemos una casa con un cerco electrico, ese es nuestro firewall, bien si alguien se la ingenia y corta ese cerco y lo salta que queda.
Esta idea me viene rondando desde 2010, esta basada en la tesis del creador de FWKNOP:
cipherdyne.org/fwknop
owasp.org/index.php/Discusi%C3%B3n#Endureciendo_y_optimizando_sistemas_operativos
Aunque le hice unos cambios la idea original era asi:
Kernel congelado, SSH, Firewall, Fwknop. sigamos con el ejemplo de la casa> FWKNOP es un guardia robusto que impide el acceso a la casa es un GOLPEADOR DE PUERTOS.
Despues esta el cerco electrico que representa al firewall, despues esta la cerradura que representa la seguridad por oscuridad SSH y en principio el interior de la casa, que representa el nucleo del sistema, si el mismo es congelado, asi entre un virus polimorfico, al reiniciar todo estara igual.
La idea de congelar el nucleo lo extraje de un investigador indio que buscaba como proteger el archivo del nucleo del sistema, al entrar un virus, el sistema automaticamente se reiniciaba sin darle acceso al virus.
Respetos
Una alternativa a la modificación del kernel en los sistemas BSD, Linux y MAC es la implementación de TrustedBSD, aquí le dejo la lista de empresa que patrocina (y por ende usa) este framework:
The TrustedBSD Project is made possible through generous sponsorship and support from a variety of organizations, including the Defence Advanced Research Projects Agency (DARPA), the National Security Agency (NSA), Network Associates Laboratories, Safeport Network Services, the University of Pennsylvania, Yahoo!, McAfee Research, SPARTA, Inc., Apple Computer, Inc., nCirce Network Security, Inc., Google, Inc., the University of Cambridge Computer Laboratory, the FreeBSD Foundation, and others.
si ellos confían que son la cúspide de la informática, nosotros como buenos informáticos debiéramos seguir sus pasos.
Una vez un cubano muy sabio me dijo:
La altura del hombre está en su mente; no en su estatura.
Ahora le devuelvo el favor a su pueblo:
mirror.switch.ch/mirror.html#ipfire.org
Un hombre solo debe imitar los buenos ejemplos y ser un ejemplo para su comunidad, las transnacionales depredan la industria laboral, si me pones como grandes ejemplos a la NSA, que intercepta negociaciones macrofinancieras por el bien de su país en detrimento de naciones menos favorecidas.
Si Latinoamérica está sub-desarrollada es porque importa tecnologías, miremos, como ejemplo a Europa ellos importaban tecnología americana y tenían una dependencia, pero con el tiempo fueron creando sus propias aplicaciones, los mejores programadores de videojuegos están en Alemania, es sólo un ejemplo.
Por otro lado la licencia BSD, no es tan permisiva, cómo las licencias Creative Commons, Copyleft, GPL, LGPL, AGPL, Dominio público, es un derivado del Copyrigth, más bien es una especie de licencia freeware, una vez más solo es un punto de vista.
Respetos
Al parecer no entendiste la cuestión, me refería a confiar en las aplicaciones que ellos usan para incrementar su seguridad, para nada seguir sus malos ejemplos en cuanto a espionaje, nunca me paso por la mente esa idea tan descabellada.
Una aclaración que te debo hacer la licencia BSD (de 2 clausulas), es la MAS PERMISIVA que existe hasta este momento.
https://www.gnu.org/philosophy/bsd.es.html
http://blog.desdelinux.net/hablemos-de-la-licencia-bsd/