Page -> Cómo poner una sección de acceso restringido en mi página web. | Vistas : Página Discusión Ver fuente Historial |
De DIT-CDC
Cómo poner una sección de acceso restringido en mi página web
Antes que nada asegúrate de que tu servidor lo permite.
En el caso de los servidores Apache (los que hay instalados en el Dit lo son), debes comprobar que el fichero de configuración del servidor, access.conf, incluye AllowOverride AuthConfig; esta directiva permite al servidor cargar las instrucciones de autentificación desde el fichero .htaccess que nosotros crearemos.
Pasos a seguir:
1º.-Crearemos un fichero con los logins y los passwords de los usuarios que tendrán permiso para acceder a nuestras páginas. Este fichero deberás guardarlo fuera del path que utiliza el servidor de http para encontrar tus páginas web (~/web-home/lib/secret/); por ejemplo, te puedes crear un directorio ~/web-home/lib/secret (con los permisos de ejecución para group y others: chmod go+x users), y meter dentro el fichero.
Crearemos el fichero y el primer usario mediante:
htpasswd -c ~/lib/secret/fichero-claves.pwd usario1
nos pedirá un password para usuario1, y si lo repetimos sin errores ya tendremos creado nuestro primer usuario con permiso de acceso. Para introducir más usuarios el comando es el mismo pero sin la opción -c.
El ejecutable htpasswd viene con el software del servidor Apache, pero si no lo encuentras mándame un mail.
2º.-Crearemos un directorio dentro del ~/lib/www en el que meteremos todos los ficheros a los que queramos restringir el acceso; por ejemplo, ~/lib/www/restringido (acuérdate de ponerle los permisos de lectura y ejecución).
3º.-Dentro del directorio anterior, crearemos un fichero .htaccess que deberá contener lo siguiente:
AuthName "Diálogo de Autentificación" AuthType Basic AuthUserFile /home/usuario/lib/secret/fichero-claves.pwd require valid-user
En AuthName debes poner entre comillas el texto que quieras que aparezca en el diálogo de autentificación, y en AuthUserFile la ruta completa a tu fichero de passwords. Esa ruta ha de corresponder a la que ve el propio servidor web, es decir, si estás en uno de los servidores de cuentas de la nueva infraestructura (p.ej. oasis), deberás eliminar la parte relativa al punto de montaje local, es decir, que aunque el usuario esté editando el fichero oasis:/home/usuario/web-home/lib/secret/passwd
Esto es lo más básico, para más información:
http://www.apacheweek.com/features/userauth