Queda claro que cuando contratas un servidor, un VPS, o pones una maquina visible en Internet, es totalmente necesario protegerla frente ataques y accesos no deseados.
Para ello, es imprescindible un Firewall. GNU/Linux utiliza el famoso software IPTABLES, también muy usado en otros dispositivos como routers, dada su eficacia y simplicidad.
Pero para un usuario o administrador que lleva mil temas en la cabeza, no es fácil recordad la sintaxis de Iptables, así que existen herramientas que nos facilitan mucho la vida. Yo, por ejemplo, uso CSF.
Es un software muy simple que recoge toda la configuración en algunos archivos, y luego crea las reglas con Iptables en nuestro equipo de manera automática, incluso pudiendo habilitar una interfaz gráfica, pese a que no os lo recomiendo.
Instalación
Para utilizarlo, lo primero es descargar la ultima versión de su sitio web, y para ello usamos wget:
wget https://download.configserver.com/csf.tgz
Ahora lo descomprimimos:
tar -xzf csf.tgz
Entramos en la carpeta que acaba de crear, y ejecutamos la instalación:
sh csf/install.sh
Al acabar, debería mostraros el siguiente mensaje:
Installation Completed
Podemos comprobarlo con el siguiente comando:
perl /usr/local/csf/bin/csftest.pl
Y deberiais tener este resultado:
RESULT: csf should function on this server
Si es así, ya tenemos CSF correctamente instalado.
Configuración
Lo primero que recomiendo hacer antes de hacer modificaciones y arrancar el firewall, es agregar tu IP a la Whitelist, por si te equivocas en bloquear algún puerto, no te deje fuera.
Para ello, solo tenemos que agregar las IP’s que queramos, una por linea, en el archivo /etc/csf/csf.allow
nano /etc/csf/csf.allow
Ahora, podemos ir al archivo de configuración y modificar lo que necesitemos para adaptarlo a nuestro servidor.
nano /etc/csf/csf.conf
Aquí veremos muchos parámetros, pero lo más relevante, son los puertos y el modo testing.
La primera opción que vemos es TESTING = “1”. Si lo dejamos así, pese que arranquemos el servidor, no se aplicaran los cambios. Debemos ponerlo a 0 cuando tengamos toda la configuración hecha.
Para testear la configuración, puedes usar la opción TESTING_INTERVAL = “”, para probar la configuración tantos minutos como le indiquemos, antes de deshacerla.
Ahora veremos las opciones por defecto para permitir puertos tanto en TCP o en UDP. En el archivo se incluyen de esta manera, que podemos modificar fácilmente añadiendo o quitando los puertos:
TCP_IN = “20,21,22,25,53,80,110,143,443,465,587,993,995”
TCP_OUT = “20,21,22,25,53,80,110,113,443”
UDP_IN = “20,21,53”
UDP_OUT = “20,21,53,113,123”
Una vez hayamos modificado todos los parámetros, podemos arrancar o reiniciar el servicio con este comando:
csf -r
Os recomiendo miraros muy bien toda la configuración, ya que tiene muchas posibilidades.
Ahora, podéis comprobar que los puertos están abiertos o cerrados tal y como habéis configurado con nmap (recuerda hacerlo desde una IP que no tengas en la whitelist).
sudo nmap -sT -O IP_DE_TU_SERVIDOR
¡Espero que os haya servido!
0 comentarios