Páginas

jueves, 1 de noviembre de 2012

Firewall en linux

Uno de los aspectos mas atractivos de Linux es que es, a priori, más difícil de explotar que un sistema Windows. Es cierto que por norma general "aísla" mejor al usuario "normal" del administrador lo que, en caso de catástrofe, ayuda a minimizar el daño.
De todas formas, no está de más ponerle las cosas difíciles a un posible atacante. Por eso hoy os quiero enseñar un poco(muy poco, solo para que os hagáis una idea de como va) el funcionamiento del firewall de Linux.
Para hacerlo un poco más sencillo vamos a utilizar el programa firestarter que hace un poco más visual la interacción con el firewall.
Por norma general en todas las distribuciones tenemos iptables, que se puede manejar desde comandos en consola, firestarter es un GUI para manejar iptables de forma algo más cómoda, nada más.

Una vez hechas las presentaciones vamos al lío.
Lo primero, como no, será instalar firestarter, como siempre varias opciones:
- Lo podeis encontrar en los repositorios de la mayoria de distribuciones, para instalar desde apt, aptitude, yum, o como quiera que lo hagais.
- Podeis bajaros el tarball de aquí y compilarlo vosotros mismos.

Una vez instalado comenzamos. Primero nos saldrán una serie de pantallas donde seleccionaremos, por ejemplo, la tarjeta de red sobre la que actuar, si conectamos directamente contra un ISP o si conectamos contra un servidor DHCP(Si tenemos una conexión ADSL marcad esta última).


Después nos saldrá otra pantalla que vamos a ignorar, a no ser que el resto de equipos de nuestra casa se conecten a través del PC donde hemos instalado firestarter.
Tranquilos porque todo esto se puede cambiar después. Incluso tenemos la opción de volver a ejecutar el asistente de nuevo.
Una vez terminado el asistente entramos a lo que es el programa en si.

Aquí podemos ver el estado del cortafuegos, los paquetes recibidos y enviados y las conexiones activas.
En las conexiones activas vemos:
  - Origen: O sea, nosotros.
  - Destino: La ip de la maquina a la que estamos conectando
  - Puerto: El puerto al que estamos accediendo, en este caso puerto 80 que pertenece a servicio Web(HTML)
  - Programa: El programa que estamos usando, en este caso el navegador web epiphany

Ahora vamos a añadir reglas, para ello lo más probable es que tengáis que parar y desbloquear el cortafuegos. Podéis hacerlo desde el menú "Cortafuegos" o justo debajo, el cuadradito rojo para parar/arrancar el firewall y el candado para bloquear desbloquear.

Una vez hecho esto, vamos a la pestaña de "NORMATIVA" y vamos a administrar para el ejemplo el trafico saliente.

Dependiendo de como queramos proteger la máquina hay dos tipos de administración de firewalls(esto es general para todos cortafuegos). O bien bloqueamos todo y damos acceso a lo que nos interesa(White list, modo más restrictivo) o bien lo abrimos al mundo y bloqueamos solo aquello que no queremos que pase(Black List, modo más permisivo).

Os recomiendo usar black list si administráis un equipo doméstico y no la queréis liar parda, al menos al principio.
Para el ejemplo vamos a bloquear el acceso a la pagina de google. Tan fácil como darle al símbolo de "+" que hay arriba a la derecha, lo que abrirá esta pantalla:


Ahora solo tenemos que decirle en "IP, host o red"  la IP de la página o máquina que queremos bloquear, pero  como en este caso es una página web y no nos vamos a saber todas las IP's(aunque la podemos ver en conexiones activas si la abrimos en un navegador), ponemos directamente www.google.es y adicionalmente podemos poner un comentario.


Una vez esto tenemos que validar la regla dándole al check que hay al lado del "+".

Arrancamos de nuevo el firewall y probamos a entrar en www.google.es.

Si quisiéramos eliminar todo el trafico web entonces pulsaremos sobre el panel de "Denegar servicio" y añadimos una nueva regla:


No hace falta que sepáis el puerto, al desplegar "Nombre" tenemos disponibles multitud de protocolos con sus puerto correspondientes relacionados.

Con esto ya podéis tapar un poco los agujeros.


Otra utilidad podéis encontrarla en  la configuración, podeis acceder desde la pestaña de "Estado" en el botón de control de mandos que esta arriba a la derecha del todo.

Aquí tenemos el filtrado ICMP, donde se puede bloquear el acceso a PING, TELNET y otras aplicaciones potencialmente peligrosas.

Si quereis ver el equivalente en IPTables, en consola(Como ROOT) poned:

  # iptables -L

Podéis observar las reglas de INPUT, OUTPUT y FORWARD(En nuestro ejemplo solo habrá reglas en OUTPUT).

En fin, podeis consultar el manual de iptables para saber todo lo que podéis hacer con esto. Es una herramienta muy potente y os recomiendo que la uséis.

Como siempre, espero que os haya sido útil.

No hay comentarios:

Publicar un comentario