SergioMeneses' Blog

Como Prevenir Hotlink en Nginx

El día de hoy me encontré con una situación muy particular y era como prevenir Hotlink de diversos tipos de contenidos en Nginx. EL mayor problema de HotLink es que no solo roba nuestro contenido sino que usa un gran ancho de banda de nuestro sitio para las referencias externas, lo cual es un gran problema.

Mas información acerca de que es Hotlink aqui

Como siempre usando mi servidor-web en Nginx, y leyendo algunos artículos pude encontrar que todas las referencias externas al contenido pueden ser bloqueadas fácilmente mediante el siguiente bloque de código:

location ~ \.(jpe?g|png|gif)$ {
valid_referers none blocked tudominio.com *.tudominio.com;
if ($invalid_referer) {
return 403;
}
}

Si se tiene problemas con archivos como pdf solo basta con incluir |pdf al final de la locación en la declaración del bloque.

Muy importante, la directiva “valid_referers” incluye las excepciones del bloqueo como lo pueden ser buscadores ( Google, Yahoo, etc ) y por supuesto el sitio en si. Por ejemplo:

valid_referers none blocked ~.google. ~.bing. ~.yahoo. server_names ~($host);

Una vez el cambio esta implementado, solo basta con cargar el archivo de configuración de nuevo.

Leave a Comment

Your email address will not be published. Required fields are marked *