• ¡Obtenga la seguridad de la aplicación de la manera correcta! Detectar, proteger, monitorear, acelerar y más ...
  • Es posible que tenga alguna página confidencial que desee proteger con la contraseña. Esto también se conoce como autenticación básica.

    La buena noticia es que es posible y muy fácil.

    ¿Por qué proteger la página web con contraseña?

    Bueno, podría haber muchas razones, entre ellas.

    • Contener datos sensibles en la página
    • La página no está lista y no desea que sea visible públicamente, sino compartirla con alguien.

    Sea lo que sea, exploremos cómo puede protegerse.

    Requisito

    Tomemos un ejemplo; Quiero proteger /client en lab.geekflare.com, lo que significa que si alguien accede https://lab.geekflare.com/client debe solicitar una contraseña.

    Apache

    Comencemos con Apache primero.

    Lo primero que debemos crear es un archivo de contraseña donde se almacenarán todas las credenciales. El nombre del archivo sería .htpasswd y puede colocarlo en cualquier lugar del servidor. Lo crearé debajo /etc/httpd/conf carpeta

    • Puede crear el archivo con el touch comando
    touch /etc/httpd/conf/.htpasswd
    • Agreguemos el usuario al que se le permitiría acceder a / client. Necesitamos usar htpasswd comando para esto.
    htpasswd /etc/httpd/conf/.htpasswd geekflare
    • La última sección geekflare, es el nombre de usuario. Cambia eso con lo que quieras y presiona Enter.
    • Ingrese la contraseña y verá una confirmación de que se agregó el usuario.
    [[email protected] html]# htpasswd /etc/httpd/conf/.htpasswd geekflare
    New password: 
    Re-type new password: 
    Adding password for user geekflare
    [[email protected] html]#

    Si captura el archivo, notará que la contraseña se almacena en un formato cifrado. ¡Es bueno!

    [[email protected] html]# cat /etc/httpd/conf/.htpasswd 
    geekflare:$apr1$EHvl0Bc5$nh4u0w3.Cj3wzPT7XUXqW1
    [[email protected] html]#

    A continuación, debemos indicarle a Apache que proteja el URI que queremos.

    • Modifique el archivo httpd.conf o el archivo de configuración que está utilizando para la instancia de Apache. Estoy usando la instalación predeterminada, así que estoy usando /etc/httpd/conf/httpd.conf
    • Agregue lo siguiente en cualquier lugar del archivo
    <Directory "/var/www/html/client">
    Options Indexes FollowSymLinks
    AuthType Basic
    AuthName "Protected Content for Client"
    AuthUserFile /etc/httpd/conf/.htpasswd
    Require valid-user
    </Directory>

    Si ya tienes un /var/www/html/client Directiva de directorio, luego, en lugar de agregar una nueva sección, debe agregar lo siguiente en la directiva existente.

    AuthType Basic
    AuthName "Protected Content"
    AuthUserFile /etc/httpd/conf/.htpasswd
    Require valid-user
    • Reiniciar Apache
    service httpd restart
    • Intente acceder a la página / client, y debería pedirle una contraseña.

    • Ingrese la credencial que estableció anteriormente para ver el contenido.

    Lujoso .htaccess ¿método?

    Claro, puede implementar la autenticación básica a través de .htaccess archivo también. Aún necesita generar credenciales usando htpasswd como se explicó anteriormente. Una vez hecho esto, puede agregar lo siguiente en la carpeta respectiva .htaccess archivo.

    AuthType Basic
    AuthName "Protected Content"
    AuthUserFile /etc/httpd/conf/.htpasswd
    Require valid-user

    Lo bueno es que no es necesario reiniciar Apache.

    Nginx

    Implementemos la autenticación básica en Nginx siguiendo.

    Tomaremos la ayuda de Apache Utils para generar las credenciales. Si el servidor no tiene Apache HTTP instalado, debe instalar las utilidades por separado como se muestra a continuación. Si no está seguro, puede ejecutar htpasswd para ver si funciona. Si no es así, entonces sabrá que necesita instalarlo.

    CentOS / RHEL 8

    dnf install httpd-tools

    CentOS / RHEL 7

    yum install httpd-tools

    Ubuntu

    apt-get install apache2-utils
    • Creemos las credenciales de forma similar a como lo hicimos en Apache.
    htpasswd -c /etc/nginx/.htpasswd chandan
    • No te olvides de reemplazar chandan con el nombre de usuario real que desee

    A continuación, necesitamos configurar Nginx, por lo que restringe el URI particular con la contraseña.

    • Asumamos que necesitamos proteger /admin URI
    • Agregue lo siguiente en nginx.conf u otro archivo de configuración activo de Nginx
    location /admin {
    auth_basic "Admin Area";
    auth_basic_user_file /etc/nginx/.htpasswd;
    }
    • Reiniciar Nginx

    ¿Qué sucede si tiene que restringir el servicio de todo el sitio web a través de Nginx?

    ¡Fácil!

    Agregue lo siguiente en nginx.conf o el archivo de configuración activo en location / { Directivas

    auth_basic "Admin Area";
    auth_basic_user_file /etc/nginx/.htpasswd;

    SiteGround

    La plataforma de alojamiento ha evolucionado. Hay muchas plataformas que ofrecen herramientas útiles y Iart es uno de ellos.

    Si está utilizando SiteGround para alojar su sitio web, puede proteger fácilmente la URL desde su consola de administración. Supongamos que está usando WordPress y necesito proteger /wp-admin.

    • Inicie sesión en SiteGround y vaya al sitio donde necesita habilitar la autenticación básica.
    • Haga clic en Seguridad >> URL protegidas >> Usuarios
    • Ingrese el nombre y la contraseña para crear la credencial

    A continuación, protegeremos wp-admin con la credencial que acabamos de crear.

    • Ir a la pestaña URL
    • Ingrese wp-admin en la ruta y haga clic en proteger
    • Haga clic en Administrar acceso y asigne el usuario que acaba de crear

    Intente acceder a la página y SiteGround le pedirá que ingrese las credenciales.

    Fácil, ¿no?

    WordPress

    ¿Utiliza WordPress y le gustaría proteger con contraseña una publicación, página, categoría, por función o todo el sitio en particular?

    ¡Por supuesto!

    Conoce a PPWP (Complemento de WordPress protegido con contraseña)

    Instale el complemento y configure la forma en que desea proteger los recursos de WordPress. Esto funciona con constructores de páginas como Elementor, divi, Castor.

    Alternativamente, si necesita una publicación o página simple protegida con contraseña, puede aprovechar la función WP incorporada. No necesitas ningún complemento para esto.

    • Vaya a la publicación o página en la que desea habilitar una contraseña.
    • En la sección de publicación, haga clic en Editar junto a la visibilidad: Público
    • Seleccione Protegido con contraseña e ingrese la contraseña.

    • Haga clic en Aceptar, ¡y listo!

    ¿Necesita más formas de proteger WordPress? Mira esto .

    cPanel

    Si estás en alojamiento compartido, lo más probable es que tenga cPanel. La buena noticia es que cPanel ofrece una utilidad llamada Directory Privacy; desde allí, puede establecer una contraseña para el directorio.

    • Inicie sesión en cPanel
    • Buscar privacidad en el directorio

    • Seleccione la carpeta que desea proteger. Como a continuación, he seleccionado una carpeta llamada chandan, que está bajo public_html
    • Crea el usuario que se debe permitir y guarda

    • Una vez hecho esto, notará que la carpeta tiene un candado

    Y eso es. El directorio está protegido con contraseña ahora. Como puede ver arriba, he probado en Alojamiento A2y funciona muy bien

    Conclusión

    Espero que lo anterior le ayude a proteger cierta carpeta URI con la contraseña mediante autenticación básica. Si está buscando una seguridad completa para su sitio web, debería considerar implementar WAF.