Habilitación de los directorios web de usuarios y contraseña proteger en Zentyal Webserver - Parte 10
- 4604
- 726
- Alejandro Duran
En un entorno de usuario múltiple como un Directorio activo de Zentyal PDC Ejecutar un servidor web puede ser de gran ayuda, si desea permitir que cada usuario tenga su página web personal que se pueda alojar en sus propios hogares.
Servidor web módulo Zentyal 3.4 se puede configurar para activar Usuarios html público y con la ayuda de algunos Linux Bash Scripts para generar dinámicamente algo de contenido para la página web y transmitir los usuarios que requieren información en su inicio de sesión al dominio.
Habilitar el directorio de protección de contraseña de userdirTambién apache envía durante mucho tiempo con otra característica relacionada con el contenido entregado de seguridad y eso es Contraseña protege un directorio web en una de las formas más simples con solo usar .htaccess archivos y crear una lista de usuarios necesarios para acceder a los recursos, incluso proteger el contenido web de los rastreadores de motores de búsqueda.
Requisitos
- Guía de instalación de Zentyal
- Instalar Servicios web (Apache) en Zentyal Server
Paso 1: Habilitar el usuario público HTML
1. Inicie sesión en su Herramienta de administración web de Zentyal PDC usando https: // zentyal_ip.
2. Navegar a Módulo de servidor web -> Verificar Habilitar el usuario de los pares public_html, golpeado en Cambiar botón entonces Ahorrar cambios.
Habilitar el usuario público html3. Abra un navegador y entra Url Archivó lo siguiente: http: // mydomain.com/~ your_username.
Error prohibido de ApacheComo puede ver, Apache no tiene permisos para acceder al directorio de usuario o al inicio del usuario del usuario. Para corregir este comportamiento debemos proporcionar datos www con permisos de ejecución en /Home/$ usuario directorio y crear un public_html carpeta en la ruta de los usuarios.
Para simplificar un poco las cosas vamos a escribir un Linux Bash guión que crea public_html directorio y habilita los permisos correctos en todos los usuarios del sistema, Automatic genera las páginas web HTML para todos los usuarios con un directorio de inicio válido y otro script, esta vez A Windows Bach Script, que lo vinculará a GPO de dominio predeterminado para que cada usuario reciba su página web personal después de inicio de sesión con credenciales de dominio de Windows sistemas unidos en el dominio.
4. Para completar esta tarea, inicie sesión en Servidor Zentyal usando Masilla con su cuenta administrativa de Zentyal creada en la instalación del sistema y cree el primer script utilizando su editor de texto favorito. Lo nombraremos "User-Dir-Creation".
# nano user-dir-creation
5. Agregue el contenido a continuación en "User-Dir-Creation" guion.
#!/bin /bash para i in 'ls /home | GREP -V Samba | GREP -V perdido+encontrado '; hacer mkdir/home/$ i/public_html ## Haga que el mundo sea legible y ejecutable, para que www -data pueda acceder a él ## chmod -r 755/home/$ i chgrp -r www -data/home/$ i/public_html/ ## El siguiente código debe estar en una sola línea ## echo "Bienvenido usuario $ i en 'hostname -f'
">/home/$ i/public_html/index.html ## list/home/$ permisos de usuario y public_html permanente opcional ## echo "..." ls -all/home/$ i echo "..." ls -alt/home/$ i/public_html hecho;
6. Guardar el script y hacerlo ejecutable y luego ejecutarlo con privilegios raíz.
# CHMOD +X User-Dir-Creation # sudo ./User-Dir-Creation
7. Abra nuevamente un navegador y apunte a lo mismo Url Como se indicó anteriormente (ver punto 3).
Dominio de accesoEl public_html Se creó el directorio y se generó un archivo HTML para todos los usuarios, por lo que ahora todos poseen una página web personalizada (esta es solo una página de prueba simple, pero imagine lo que puede hacer con algunos Php, Mysql o CGI guiones ).
8. Si Zentyal 3.4 servidor también es un Controlador de dominio principal Podemos hacer que la página web del usuario se abra automáticamente en un navegador cuando los usuarios inician sesión en Windows Hosts unidos en el dominio.
Para habilitarlo, iniciar sesión en un Windows Sistema unido al dominio y crear un script por lotes de Windows llamado "public_html.murciélago" usando Bloc con el siguiente contenido.
Explorer http: // your_domain.TLD/~%UserName%
Nota: Tenga en cuenta el "~"Carácter especial y %nombre de usuario% que es una variable de entorno de Windows.
Abra la página de usuario automáticamente9. Abierto Herramienta de administración web de Zentyal (https: // zentyal_ip) y vaya a Dominio -> Objetos de política grupal -> Política de dominio predeterminada -> Editor de GPO.
Objetos de política grupal10. Haga clic en Editar, desplazarse hacia abajo a Configuración de usuario -> Agregar nuevo script de inicio de sesión, Explore el camino donde se creó y presionó su script AGREGAR.
Agregar nuevo script de inicio de sesión Configuración de usuarioFelicidades! Ahora, la próxima vez que inicie sesión en dominio, su navegador predeterminado abrirá una página web personalizada relacionada con su nombre de usuario.
Paso 2: Directorio web de protección de contraseña
Esta parte requiere una configuración más avanzada en el módulo Apache que no se puede lograr Interfaz web Zentyal pero solo desde la línea de comandos y modificando algunos Módulo de apache zentyal plantilla.
Si intenta modificar directamente la configuración de Apache como lo haría normalmente en un servidor de Linux, todas las configuraciones realizadas se perderán porque Zentyal usa algunos formularios de plantillas que reescriben cada archivo de configuración de servicio después de reiniciar o reiniciar el servicio.
Para proteger una carpeta web utilizando la autenticación de Apache y hacer cambios permanentes el "Permitir sobrescritura"La directiva debe modificarse y"auth_basic"El módulo debe cargarse y habilitarse en Apache WebServer.
11. Para habilitar todas las configuraciones necesarias, Iniciar sesión FIST a través de la línea de comandos usando Masilla en Servidor Zentyal con raíz cuenta.
12. Permitir "auth_basic"Al emitir el siguiente comando y luego reiniciar el servicio web de Zentyal.
# a2enmod auth_basic # servicio Zentyal WebServer reiniciar
13. Después de cargar el módulo es el momento de modificar Zentyal Apache Vhost plantilla ubicada en "/USR/Share/Zentyal/Stubs/Webserver/"Ruta y configuración"Permitir sobrescritura".
Primera copia de seguridad vhost.masa archivo.
# CP/USR/Share/Zentyal/Stubs/Webserver/Vhost.MAS/USR/Share/Zentyal/Stubs/Webserver/Vhost.masa.bak
Luego abra un editor, navegue por la parte inferior en el archivo y reemplace "Ninguno" con "Todo" en "Permitir sobrescritura"Línea de directiva como en la captura de pantalla.
Habilitar la protección de contraseña14. Después de que hayas terminado de editar reiniciar Servidor web de Zentyal módulo para aplicar nuevos cambios.
# Servicio de reinicio del servidor web de Zentyal
El objetivo principal de Permitir sobrescritura La directiva es alterar dinámicamente las configuraciones de Apache de otros archivos diferentes a los utilizados en Apache Root (/etc/apache2/) por vía por vía utilizando .htacess archivo.
15. Ahora es el momento de crear algunos usuarios a los que se les permite navegar por una contraseña de directorio de contenido web protegido. Primero necesitamos crear un directorio colocado fuera de la ruta del subdominio donde .htpasswd el archivo será alojado y protegido.
# mkdir/srv/www/htpass # chmod -r 750/srv/www/htpass # chgrp -r www -data/srv/www/htpass
dieciséis. Ahora es el momento de crear .htpasswd archivo y agregue algunos usuarios usando htpasswd dominio. Cuando se crea el primer usuario, agregue "-C"(Crear) Switch de comando para crear el archivo y agregar usuario, luego ingrese y confirme la contraseña del usuario.
# htpasswd -c/srv/www/htpass/.htpasswd first_user # htpasswd/srv/www/htpass/.htpasswd Second_userCrear contraseña de usuario Crear contraseña de usuario
17. Ahora el .htpasswd el archivo se crea y encripta usando MD5 Algoritmo de sal y puede agregar tantos usuarios necesarios para acceder al contenido de la carpeta web según sea necesario.
archivo htpasswd18. Ahora supongamos que quieres proteger http: // www.mi dominio.comunicarse URL de otros usuarios que los que se crean en su htpasswd archivo para acceder al subdominio. Para habilitar este comportamiento, cree un .htaccess presentar www.mi dominio.comunicarse ruta del sistema y agregue el siguiente contenido.
AuthType Basic Authname "What Message You Wat" AuthBasicProvider File AuthuserFile/Path/To/.El archivo htpassd creado requiere user your_user1 user2 usern
También asegúrese de que .htacces El archivo está legible por palabras protegido.
# nano/srv/www/www.mi dominio.com/.Htaccess # CHMOD 750/SRV/www/www.mi dominio.com/.htaccess # chgrp www-data/srv/www/www.mi dominio.com/.htaccess
Felicidades! Ahora tienes con éxito contraseña protegida el www.mi dominio.comunicarse Se solicitará a un subdominio en su sitio web y a los usuarios que ingresen sus credenciales para acceder al contenido del sitio web.
Directorio protegido con contraseñaAdemás, si desea proteger otros dominios o subdominios creados en su servidor con las credenciales creadas ya, simplemente copie el .htaccess Presente en su ruta de Apache subdominio y asegúrese de datos www tiene acceso de lectura.
Con la ayuda de Apache Web Direcory Passions Protect Zentyal Weberver se puede forjar con una capa de seguridad adicional para exponer la información confidencial publicada en sus dominios, pero tenga en cuenta que este método solo protege los directorios y no los archivos y las contraseñas se transmiten claramente por el navegador, así que intente usar el protocolo HTTPS para proteger las credenciales de los usuarios para ser interceptados.
- « Instalación del servidor FTP y mapeo de directorios FTP en Zentyal PDC - Parte 8
- Una visión de las variables de Linux en el lenguaje de scripts de shell - Parte 9 »