
Cloudflare es una gran cosa para proteger sitios de diferentes delincuentes informáticos: hackers. Sin embargo, si sin embargo reconocieron de alguna manera la IP original del servidor web en el que se encuentra el sitio, al menos intentarán atacarlo por IP, sin pasar por el proxy. Puede bloquear redireccionamientos, enviar 444 restablecimientos de NGINX cuando intente acceder a dominios inexistentes, pero lo más importante de la situación es esto: abra el tráfico http / https al servidor solo para las direcciones IP de nuestro proxy de seguridad.
Por cierto, este método también puede hacer parcialmente inútil todo tipo de sitios como
crimeflare.org . Bueno, el "detective" descubrió que el dominio era accesible una vez por dicha IP, verificando si todavía está allí al intentar iniciar sesión en IP: 443 o IP: 80 será inútil.
Y si cierra todos los puertos en el servidor, deshabilita ICMP y solo permite el acceso a través de IPMI / VNC, nadie sabrá que hay algo en nuestra IP.
Hagámoslo en iptables.
CloudFlare tiene una gran cantidad de direcciones, pero todas están comprimidas en una pequeña cantidad de subredes. Anticipándose a tal solicitud, los chicos
publicaron un artículo que indica dónde puede encontrar sus subredes actuales e incluso qué escribir en iptables. Un problema es hacer esto manualmente, lo cual es bastante incómodo y poco confiable: el direccionamiento de CloudFlare puede cambiar con el tiempo, y algún día puede ocurrir que el proxy ubicado en las nuevas direcciones no esté permitido en su servidor. En consecuencia, los clientes cuyas sesiones pasarán por estas nuevas direcciones no podrán acceder a su sitio.
Afortunadamente, el problema está automatizado. Entonces
1. Prohibimos todo el tráfico HTTP / HTTPS en iptables:
iptables -I INPUT 1 -p tcp -m multiport --dports http,https -j DROP
2. Coloque en algún lugar, por ejemplo, a través de /root/cloudflare-update.sh el script cloudflare-update.sh con el siguiente contenido:
Es decir, eliminamos todas las entradas existentes agregadas previamente, volvemos a agregar todo lo que está en la lista de direcciones de CloudFlare. De esta forma evitamos reglas duplicadas. Al final, guardar.
3. Hacemos que el script sea ejecutable:
chmod +x /root/cloudflare-update.sh
4. En las coronas (por ejemplo, al final del archivo / etc / crontab) agregamos la tarea de actualizar las direcciones cada 12 horas:
0 */12 * * * root /root/cloudflare-update.sh &> /dev/null
Eso es todo! Ahora puede acceder a los puertos 80 y 443 en su servidor solo a través de un proxy, porque en cualquier momento, solo las direcciones que pertenecen al proxy están permitidas en el servidor.