Prohibir conexiones de la red TOR

Si tienes un servidor es probable que te preocupen los ataques hacia él, puedes configurar un firewall para prohibir ciertas conexiones por puertos que no usas, puedes banear una IP que intente hacer login mas de 3 veces incluso, no permitir login si no tienes certificado publico/privado.

¿Pero que hay de las redes como TOR, redes que se usan para hacer ataques por que ofrecen un anonimato?

Bueno pues podemos también prohibir el acceso a cualquier IP que proceda de una red TOR, para ello vamos conectarnos como “root” instalar ipset

Remoto$ sudo su –
Remoto# apt install ipset

Ahora crearemos un script en “/root/scripts/” llamado “filtrar-ip-tor.sh“

Este escript lo que hace es:
Crear el grupo si no esta creado ya.
Vacia el grupo
Obtiene la lista de IPs para actualizar el grupo
Guarda los cambios
Imprime la fecha con fines informativos en el log

Remoto# vim ./scripts/filtrar-por-ip.sh 

Y copiamos lo siguiente

NOTA: En el script as de poner la ruta completa de los comandos “ipset” y “iptables” ya que aunque funciona el script lanzandolo a mano, cron dira que no reconoce el comando.

#!/bin/bash

# Creo el grupo si no estra creado, ya que en cada reinicio el grupo no estara creado
/sbin/ipset create -! filtro-tor hash:ip

# Elimino las IP en el grupo filtro-tor
/sbin/ipset flush filtro-tor

# Obtengo la lista de IP de los nodos de salida de Tor y los añado al grupo filtro-tor
lista=$(curl -sSL "https://check.torproject.org/torbulkexitlist" | sed '/^#/d')

for i in $lista
do
        /sbin/ipset -q -A filtro-tor $i
        echo $i
done

# Aplico el grupo filtro-tor a iptables
/sbin/iptables -A INPUT -m set --match-set filtro-tor src -j DROP

# Imprimo fecha y hora para el log
date

le damos permiso de ejecución al script y lo ejecutamos para verificar que funciona bien

Remoto# chmod 700 ./scripts/filtrar-ip-tor.sh 
Remoto# ./scripts/filtrar-ip-tor.sh

Y por último lo agregamos como tarea cron

# Actualizo las IP filtradas de nodos de salida Tor
# se ejecuta 1 vez al dia "media noche" y en cada reinicio
@daily /root/scripts/filtrar-ip-tor.sh > /var/log/fitrarIpTor.log 2>&1
@reboot /root/scripts/filtrar-ip-tor.sh > /var/log/filtrarIpTorlog 2>&1

Referencias e informacion suplementearia
Articulo original
Informacion mas ampliada sobre ipset

Deja una respuesta

Tu dirección de correo electrónico no será publicada.