saludos comunidad.
pues resulta que hago la guia a raíz de que me toco colocarle un directorio seguro (con contraseña) a un cliente que tenía en su servidor configurado con apache + nginx de proxy.
así que me dure un par de horas pensando o mirando cómo lograrlo y aquí se los resumo.
en el caso de vestacp si usas la configuración de la Plantilla Web HTTPD: default
y el Proxy NGINX la Plantilla http2
entonces configurar el htpasswd bastaría solo con hacer esto.
ve a tu SSH y ejecuta lo siguiente para crear un archivo .htpasswd detrás de la public_html para que sea más seguro.
donde usuarioadmin es el usuario que usaras para ingresar a tu directorio seguro.
luego te pedira que ingreses una contraseña la cual no se mostrará en pantalla pero te pedira repetirla posteriormente.
Luego deben ir al directorio de configuración de nginx y apache de su sitio web en vestacp y editar el archivo de configuración de nginx y es aquí donde se encuentra la magia, puesto a que si su sitio esta configurado para soportar SSL deben realizarlo tanto para el archivo que tiene el SSL como el que no lo tiene.
SSL
NO SSL
y pegan esto:
Esto lo pegan debajo de donde va el primer location donde cierra }
Por supuesto que allí tienen que cambiar todo lo que dice: tuweb y el directorio que van a proteger con contraseña.
Para finalizar reiniciar nginx y apache (por las dudas)
apache:
nginx:
es una pequeña guia resumida que me llevo unas cuantas horas de lograrlo. así que espero les sirva.
pues resulta que hago la guia a raíz de que me toco colocarle un directorio seguro (con contraseña) a un cliente que tenía en su servidor configurado con apache + nginx de proxy.
así que me dure un par de horas pensando o mirando cómo lograrlo y aquí se los resumo.
en el caso de vestacp si usas la configuración de la Plantilla Web HTTPD: default
y el Proxy NGINX la Plantilla http2
entonces configurar el htpasswd bastaría solo con hacer esto.
ve a tu SSH y ejecuta lo siguiente para crear un archivo .htpasswd detrás de la public_html para que sea más seguro.
Código:
[server]$ htpasswd -c /home/admin/web/tuweb.com/.htpasswd usuarioadmin
donde usuarioadmin es el usuario que usaras para ingresar a tu directorio seguro.
luego te pedira que ingreses una contraseña la cual no se mostrará en pantalla pero te pedira repetirla posteriormente.
Código:
New password:
Re-type new password:
Adding password for user usuarioadmin
Luego deben ir al directorio de configuración de nginx y apache de su sitio web en vestacp y editar el archivo de configuración de nginx y es aquí donde se encuentra la magia, puesto a que si su sitio esta configurado para soportar SSL deben realizarlo tanto para el archivo que tiene el SSL como el que no lo tiene.
SSL
Código:
[server]$ nano /home/admin/conf/web/tuweb.com.nginx.ssl.conf
NO SSL
Código:
[server]$ nano /home/admin/conf/web/tuweb.com.nginx.conf
Código:
location /tudirectorio/ {
proxy_pass http://IPSERVER:8080;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|svg|css|zip|tgz|gz|rar|bz2|exe|pdf|doc|xls|ppt|txt|odt|ods|odp|odf|tar|bmp|rtf|js|mp3|avi|mpeg|flv|html|htm)$ {
root /home/admin/web/tuweb.com/public_html;
access_log /var/log/httpd/domains/tuwebtuweb.com.log combined;
access_log /var/log/httpd/domains/tuweb.com.bytes bytes;
expires max;
try_files $uri @fallback;
}
auth_basic "Restricted";
auth_basic_user_file /home/admin/web/tuweb.com/.htpasswd;
}
Esto lo pegan debajo de donde va el primer location donde cierra }
Por supuesto que allí tienen que cambiar todo lo que dice: tuweb y el directorio que van a proteger con contraseña.
Para finalizar reiniciar nginx y apache (por las dudas)
apache:
[server]$ systemctl restart httpd
nginx:
[server]$ systemctl restart nginx
es una pequeña guia resumida que me llevo unas cuantas horas de lograrlo. así que espero les sirva.