Hosting

En este artículo descubrirás cómo configurar una protección por contraseña en el servidor para tu página web.

Con una protección por contraseña en el servidor (autenticación básica HTTP), puedes proteger los directorios de tu página web de forma eficaz. Antes de que el servidor web entregue el contenido, solicita a la persona visitante un nombre de usuario y una contraseña. Este método es considerablemente más seguro que las soluciones de JavaScript, ya que la verificación se realiza directamente en el servidor.

Nota
¿Has adquirido un contrato hasta el 02/09/2024? En ese caso, también puedes configurar la protección directamente en tu cuenta IONOS. Encontrarás más información al respecto en el enlace al artículo correspondiente: configurar la protección de directorios para el espacio web en la cuenta IONOS.

Requisitos

  • Tarifa de hosting IONOS con acceso SSH.

Breve explicación del funcionamiento

Para la protección por contraseña necesitas 2 archivos en el mismo directorio del espacio web:

  • .htpasswd: aquí se guardan los usuarios, así como sus contraseñas cifradas.
  • .htaccess: este archivo funciona como «portero». Cada vez que se accede a la página web, el archivo comprueba si la persona visitante ha introducido los datos de acceso correctos de .htpasswd.

Paso 1: determinar el directorio de destino

En un espacio web suelen encontrarse varias páginas web en diferentes carpetas. Para evitar que bloquees la página equivocada por error, primero debes comprobar en qué carpeta se encuentra tu proyecto.

  • Inicia sesión en tu cuenta IONOS.
  • En la barra de navegación superior, haz clic en Menú > Dominios & SSL.

  • Haz clic en el dominio para el que quieras proteger la página web. 

  • Busca la entrada Destino.

Allí verás el directorio de inicio (por ejemplo, /wordpress o /my-shop). Anota el nombre de esta carpeta. En el paso 3, debes ir exactamente a esta carpeta.

Paso 2: establecer una conexión SSH

Para ejecutar comandos directamente en tu espacio web, primero debes establecer una conexión cifrada (SSH).

Las siguientes instrucciones te muestran cómo establecer una conexión SSH según tu sistema operativo:

Paso 3: acceder al directorio de destino

Una vez establecida la conexión SSH, te encontrarás en el directorio principal de tu espacio web. Allí verás, por lo general, las carpetas de todos tus proyectos.

Importante en caso de varias páginas web: no crees los archivos de protección directamente en el directorio principal, a menos que desees bloquear todas tus páginas web con la misma contraseña. En su lugar, accede siempre a la carpeta de la página web específica.

Para navegar hasta la carpeta correcta, utiliza los siguientes comandos:

  • Para visualizar las carpetas existentes, introduce ls (list) y pulsa Intro.

    ls

  • Accede a la carpeta que determinaste en el paso 1 (por ejemplo, mi-tienda) introduciendo el siguiente comando y confirmando con la tecla Intro:

    cd mi-tienda

Nota: tras escribir las primeras letras del nombre de la carpeta, puedes pulsar la tecla Tab para completar el nombre automáticamente.

Paso 4: crear el archivo de usuario y contraseña (.htpasswd)

Ahora, crea el archivo .htpasswd y genera el primer usuario. 

  • Introduce el siguiente comando y confirma con Intro. Sustituye <USERNAME> por el nombre de inicio de sesión que desees (por ejemplo, admin o guest):

    htpasswd -Bc .htpasswd <USERNAME>

  • Pulsa Intro.
  • Introduce la contraseña deseada y confirma con Intro. Por razones de seguridad, no se muestran caracteres ni asteriscos al introducir la contraseña. Introduce simplemente la contraseña a ciegas.

El archivo .htpasswd se creará y la contraseña se guardará en él cifrada de forma segura mediante bcrypt.

Paso 5: configurar la protección ( crear .htaccess)

Para que la protección se active, debes indicar al servidor dónde se encuentra exactamente el archivo de contraseñas. Para ello, el servidor necesita la ruta absoluta del sistema.

  • Para determinar la ruta del sistema, introduce pwd en el directorio actual y pulsa Intro:

    pwd

  • Copia la ruta en un archivo de texto. La estructura de la ruta varía en función de la fecha en la que adquiriste tu contrato: 

    Ejemplo para contratos adquiridos hasta el 17/09/2025

    /clientes/homepages/12/d12345678/htdocs

    Ejemplo para contratos adquiridos desde el 18/09/2025:

    /home/www/public/mi-tienda

  • Ahora crea el archivo .htaccess. Para ello, abre el editor de texto Nano introduciendo el siguiente comando y confirmando con la tecla Intro:

    nano .htaccess

  • Copia el siguiente bloque en el editor:

    AuthType Basic
    AuthName "Protected area"
    AuthUserFile /PATH/TO/YOUR/FILE/.htpasswd
    Require valid-user

  • Para ajustar la ruta, desplázate con las teclas de flecha hasta la línea AuthUserFile. Borra el marcador de posición /PATH/TO/YOUR/FILE/.htpasswd e introduce la ruta que has determinado anteriormente con pwd, complementada con /.htpasswd.

    Así debería quedar la línea al final:

    Ejemplo para contratos adquiridos hasta el 17/09/2025

    AuthUserFile /clientes/homepages/12/d12345678/htdocs/mi-tienda/.htpasswd

    Ejemplo para contratos adquiridos desde el 18/09/2025:

    AuthUserFile /home/www/public/mi-tienda/.htpasswd

  • Para guardar el archivo, pulsa Ctrl+ O (Guardar), confirma con Intro y, a continuación, pulsa Ctrl + X (Salir).
     

La protección por contraseña estará inmediatamente activada.

Paso 6: probar la configuración

Para comprobar la protección por contraseña, sigue estos pasos:

  • Abre tu navegador y accede a tu página web. Debería abrirse una ventana de inicio de sesión.

  • En la ventana de inicio de sesión, introduce el nombre de usuario y la contraseña del paso 4.

Si la página se carga, la configuración se ha realizado correctamente. En caso contrario, consulta el último apartado de este artículo («Solución de problemas») y vuelve a realizar los pasos de configuración si fuera necesario.

Opcional: añadir más usuarios

Puedes añadir más usuarios a tu archivo de contraseñas en cualquier momento:

  • Accede al directorio donde configuraste la protección por contraseña (véase «Paso 3: acceder al directorio de destino»).

  • Introduce el comando passwd según el siguiente esquema:

Advertencia

Si añades usuarios adicionales, no utilices bajo ningún concepto el comando «passwd» con la opción -c (o -Bc). La «c» significa «create» (crear de nuevo). Si utilizas esta opción, se sobrescribirá el archivo existente y se borrarán todos los usuarios anteriores.

htpasswd -B .htpasswd <USERNAME>

Antes de ejecutar, sustituye el marcador de posición <USERNAME> por el nombre del usuario que desees añadir.

Solución de problemas

 
Error 500 (Internal Server Error)


Si tras activar la protección por contraseña recibes el mensaje de error 500 en tu página, esto suele indicar un fallo en el archivo .htaccess

  • Causa: la causa más frecuente es que la ruta en AuthUserFile no es correcta al 100 %. Por lo tanto, vuelve a comprobarla con pwd.
  • Solución: para que la página vuelva a estar accesible, borra el archivo .htaccess a través de FTP o SSH (rm .htaccess) y repite el paso 5.

No se solicita la contraseña

Si no aparece la solicitud de contraseña, es probable que el archivo .htaccess se encuentre en una carpeta equivocada. Por lo tanto, comprueba si estás en el directorio del dominio (consulta los pasos 1 y 3).