Firewall Firestarter ¿Qué es un Firewall? Un muro de fuego (firewall en inglés) es una parte de un sistema o una red que está diseñada para bloquear el acceso no autorizado, permitiendo al mismo tiempo comunicaciones autorizadas. Se trata de un dispositivo o conjunto de dispositivos configurados para permitir, limitar, cifrar, descifrar, el tráfico entre los diferentes ámbitos sobre la base de un conjunto de normas y otros criterios. Los cortafuegos pueden ser implementados en hardware o software, o una combinación de ambos. Los cortafuegos se utilizan con frecuencia para evitar que los usuarios de Internet no autorizados tengan acceso a redes privadas conectadas a Internet, especialmente intranets. Todos los mensajes que entren o salgan de la intranet pasan a través del cortafuego, que examina cada mensaje y bloquea aquellos que no cumplen los criterios de seguridad especificados. También es frecuente conectar al cortafuego a una tercera red, llamada Zona desmilitarizada o DMZ, en la que se ubican los servidores de la organización que deben permanecer accesibles desde la red exterior. Un cortafuego correctamente configurado añade una protección necesaria a la red, pero que en ningún caso debe considerarse suficiente. Ventajas de un cortafuego Establece perímetros confiables. Protege de intrusiones.- El acceso a ciertos segmentos de la red de una organización sólo se permite desde máquinas autorizadas de otros segmentos de la organización o de Internet. Protección de información privada.- Permite definir distintos niveles de acceso a la información, de manera que en una organización cada grupo de usuarios definido tenga acceso sólo a los servicios e información que le son estrictamente necesarios. Optimización de acceso. - Identifica los elementos de la red internos y optimiza que la comunicación entre ellos sea más directa. Esto ayuda a reconfigurar los parámetros de seguridad. Linux tiene un sistema cortafuegos incluido en su núcleo (kernel) llamado iptables pero configurarlo es muy complejo. Así que cuando instalamos Ubuntu por ejemplo, tenemos un potente cortafuegos pero eso no nos sirve de nada porque su configuración por defecto es permitir la entrada y salida a todo. De hecho, tenemos las puertas y las ventanas abiertas para cualquiera. La solución es tener un programa que actúe de interfaz gráfico y nos permita configurar ese cortafuego tan potente de un modo sencillo y cómodo. Existen varias soluciones al respecto, pero yo utilizo Firestarter y es del que vamos a tratar en este tutorial. Para tener el servicio samba en nuestro Linux Ubuntu 10.04 debemos instalar el paquete desde la terminal de Linux: Apt-get install firestarter Para acceder a la Terminal de Linux hacemos clic en el menú Aplicaciones de la Barra de Superior de Ubuntu, luego hacemos clic en Accesorios y por último elegimos la opción Terminal. Para ejecutarlo por la terminal introducimos: firestarter y nos llevara a la siguiente imagen En la ventana siguiente de configuración del dispositivo de red, primero elegimos el dispositivo que está conectado a internet. En este caso es la tarjeta de red del PC, así que está seleccionado el dispositivo Ethernet (eth). Si tuviéramos un dispositivo Wi-Fi, la elección sería Dispositivo inalámbrico (wlan) (para identificar la conexión de red que utilizamos podemos hacer un ifconfig en una Terminal). Después tenemos dos casillas de verificación; Podemos elegir si se inicia el cortafuegos al conectarse al exterior (recomendado) y si la dirección IP que tenemos se asigna vía DHCP de forma que se permite la configuración automática del protocolo TCP/IP de los clientes de una red local, así se evita el trabajo de configurar el protocolo TCP/IP cada vez que se agrega una nueva máquina en la red. De esta forma, con DHCP tenemos una red con máquinas que con sólo conectarlas podrá dialogar con la red. Aparece otra ventana con la posibilidad de compartir la conexión a Internet con los ordenadores que forman la red usando NAT (Marcamos esta opción si nuestro ordenador es el que hace de servidor de DHCP y suministra Internet a los demás ordenadores de nuestra red. Para el caso de estar utilizando un router y switch para la conexión de internet, no es necesario marcar la opción. Aquí vamos activar la opción de compartimiento de la conexión a internet para que las otras PC se conecten a internet a través del servidor. Nota: Se debe utilizar otra tarjeta para compartir el internet con otras PC. En la siguiente pantalla nos dice que ya está configurado todo, activamos la casilla de verificación junto a Iniciar el cortafuego ahora y pulsamos Guardar. La ventana de configuración se cierra y se abre Firestarter. Por defecto Iptables y su interfaz gráfica Firestarter permite todas las conexiones salientes y deniega todas las conexiones entrantes. En la primera pestaña Estado muestra el estado del cortafuego, con una lectura directa de las conexiones activas, en Eventos se muestra las conexiones que el cortafuego ha rechazado, y en Normativa, se muestran las reglas de configuración del cortafuego seleccionando entre las siguientes opciones: Normativa para tráfico entrante: sirve autorizar las entradas. Normativa para tráfico saliente: sirve para impedir salidas. Habilitar accesos a programas determinados a través del cortafuego Hay programas que para su correcto funcionamiento necesitan poder tener un puerto de entrada abierto a tu ordenador. Para definir una normativa para tráfico entrante, podemos hacerlo de las siguientes formas: Permitiendo las conexiones desde el host: permite el tráfico de nuestra red. Definiendo permitir servicio/ puerto/ para: permite accesos a puertos específicos. Ejemplo en mi servidor está configurado como servidor LTSP, como no le hemos aplicado ninguna regla al Firewall no dejará a los clientes descargar la imagen por TFTP, como veremos en la imagen que sigue a continuación. Como vemos en la imagen el cliente con la dirección IP 192.168.1.22 está intentando acceder al servidor LTSP. Se permite la solicitud DHCP por haber habilitado la misma en la instalación pero el servicio TFTP esta denegado por la configuración por defecto. Para permitir al cliente conectarse al Servidor LTSP debemos añadir una nueva regla. En Edición nos aseguramos que esté seleccionada Normativa para el tráfico entrante Hacemos clic en el espacio vacío que hay bajo la barra Permitir servicio | Puerto | Para y hacemos clic en la cruz verde que hay en la barra de iconos. Se nos abre otra ventana llamada Añadir regla nueva de entrada. Se nos abre una ventana en la que debemos definir el puerto que queremos abrir: Nombre: descriptivo para el puerto que abriremos. Puerto: Puerto a abrir (si queremos abrir un rango, pondremos algo del estilo: 46624672) Origen: Si queremos abrirlo sólo para lo que provenga de una IP concreta. Comentario: Un comentario (opcional) que describa para qué se usa ese puerto. Una vez introducidos los datos, le damos al botón Añadir y la regla quedará aplicada. Si no sabemos qué puertos utiliza una aplicación y ésta no funciona correctamente, es probable que el cortafuego esté denegándole el tráfico, al no tener configurada una regla explícita para ella. En este caso, en la pestaña Eventos veremos las conexiones de dicha aplicación para poder darle permiso. Ahora el cliente LTSP puede acceder al servidor.