Skip to main content

Limitación de acceso por host dinámico - Apache y Nginx

Introducción

Muchas veces necesitamos usar mecanismos de seguridad para el acceso a determinadas areas, más cuando nos encontramos con software que ya ha tenido más de una incidencia de seguridad o conocemos la baja calidad de su software como WHMCS.

Uno de los mejores mecanismos es la aplicación de seguridad mediante al acceso a la zona que queremos proteger, mediante el uso de Host dinámicos

Apache

Con apache usaremos .htaccess para cerrar todas las conexiones a la zona web que queremos proteger.

Requerimientos

Implementación

Require forward-dns mi.hostdinamico.tld

También si tenemos IP fija podemos usarla (aunque en nueysro tip anterior indico mi preferencia por los host dinámicos)

Require forward-dns 00.00.00.00 

Nginx

** pendiente de testing ** Nginx tiene otros mecanismos, y lo describe en HTTP rDNS

Requerimientos

  • módulo ngx_http_rdns_module
server {
	resolver 127.0.0.1; # Si tienes activado dns localhost, sino pon tu resolver preferido
    
    rdns_allow mi\.hostname\.tld;
	
    location /path {
    	echo_exec $protegido
    }
    
    location
}

Compilación

En mi blog tengo una entrada sobre LEMP en la que hago compilación de modulos como este.

Para compilar ete modulo de forma dinámica:

$ cd ~/soft/
$ git clone git@github.com:flant/nginx-http-rdns.git
## $version ya estaba declarada en la compilacion sino, poner la que corresponda. Ten en cuenta que este post
## entiende que se esta siguiente el modelo del enalce de más arriba
$ cd ninx-$version/
$ /configure --with-compat --add-dynamic-module=../nginx-http-rdns
$ make
$ make modules
$ sudo mv objs/ngx_http_rdns_module.so /usr/lib/nginx/modules/

Añadir la carga del módulo a nginx en /etc/nginx/modules-enabled/51-mod-http_rdns.conf

load_module modules/ngx_http_rdns_module.so;

Configurar en los sitios que se requiera segun su configuración.

$sudo nginx -t # Para verificar que todo esta correcto

Aviso

Esta documentación y su contenido, no implica que funcione en tu caso o determinados casos. También implica que tienes conocimientos sobre lo que trata, y que en cualquier caso tienes copias de seguridad. El contenido el contenido se entrega, tal y como esta, sin que ello implique ningún obligación ni responsabilidad por parte de Castris

Si necesitas soporte profesional puedes contratar con Castris soporte profesional.