SlideShare una empresa de Scribd logo
1 de 9
Descargar para leer sin conexión
Formas de
autenticarse en un
sitio web Apache -
Ubuntu
Redes Trimestre 1 2º ASIR
Débora García García
Redes Trimestre 1 Débora García García
1
Índice
OBJETIVOS ................................................................................................................................2
INTRODUCCIÓN: Métodos de autenticación en Apache.............................................................2
Autenticación Basic...................................................................................................................3
Apache2.conf........................................................................................................................3
Creación del archivo authgroups...........................................................................................4
Autenticación Digest.................................................................................................................6
Redes Trimestre 1 Débora García García
2
OBJETIVOS
Hemos visto en clase una manera de acceder a un sitio web de Apache, mediante
autenticación contra un servidor LDAP. Investiga otras maneras, pruébalas y haz un artículo en
tu blog.
INTRODUCCIÓN: Métodos de autenticación en Apache
Una instalación por defecto del servidor Web Apache es que soporta dos tipos de
autenticación básica:
 Basic.
 Digest (instalada pero no habilitada).
 Otras (mediante módulos específicos).
 Otras (adaptadas a interactuar con programas concretos como: MYSQL).
Aquí podemos buscar los modulos “auth”: http://modules.apche.org/search.php
Cada módulo de atenticación tiene su forma particular de ser activado y gestionado.
Estas dos formas de autenticación nos sirven como base para hacernos una idea de cómo
manejar el resto.
Hay mucho tipos de autenticación que son front-ends (del lado del usuario) que trabajan con
estas dos formas básicas de autenticación, por eso es importante hacer uso de SSL para
hacerlas seguras, dado a que se envía información importante.
En los ejemplos que veremos en este documento utilizaremos archivos:
 .htaccess (con el mismo efecto se puede lograr con directivas <Directory> o <Location>
ubicados en los archivos de configuración principales de Apache).
Los ficheros de autenticación nunca deben estar en el “path” designado por “DocumentRoot”,
ya que podrán descargarse por cualquier usuario y esté romper nuestro sistema de
autenticación.
Más información:
 http://www.linuxsecurity.com/content/view/133913/171/
 http://www.brennan.id.au/13-Apache_Web_Server.html#users (página que incluye
autenticación en directorios personales public_html de usuarios)
 http://httpd.apache.org/docs/2.0/howto/auth.html
 http://blog.innerewut.de/2007/6/26/apache-2-2-authentication-with-
mod_authnz_external
 http://httpd.apache.org/docs/2.0/mod/mod_auth_digest.html
Redes Trimestre 1 Débora García García
3
 http://www.howtoforge.com/apache_mod_auth_shadow_debian_ubuntu
Otras páginas interesantes donde podemos encontrar más métodos de autenticación:
 http://humanliks.wordpress.com/manual-de-instalalacion-y-configuracion-de-apache-
autenticado-con-radiuslinux-debian-lenny/
 http://gnburgos.blogspot.com/2009/11/configuracion-de-autenticacion-con.html
 http://blog.unlugarenelmundo.es/2010/03/13/autenticacion-en-apache-basica-y-
pam/
Para terminar, podemos considerar que otra de las opciones que primero se puede considerar
es intentar autenticar usuarios a partir del fichero de claves del S.O “/etc/shadow”.
Esto se puede conseguir por medio del módulo “mod_shadow”:
http://httpd.apache.org/docs/1.3/misc/FAQ.html#passwdauth
O La autenticación como hemos nombrado en otro manual con LDAP:
http://www.sahw.com/wp/archivos/2009/06/08/autenticacion-en-apache-mediante-
mod_authnz_ldap-soporte-openldap/
En el siguiente enlace podemos encontrar guías y procedimientos sobre cómo gestionar
distintos tipos de autenticación:
http://www.yolinux.com/TUTORIALS/LinuxTutorialApacheAddingLoginSiteProtection.html
Autenticación Basic
Vamos a implementar en el directorio “/var/www/básica” de una web una autenticación
básica para personas que pertenecen a un grupo concreto.
Apache2.conf
Redes Trimestre 1 Débora García García
4
El fichero “authgroups” debe contener un listado de usuarios que han sido creados
expresamente para esta clase de autenticación, distribuidos en una serie de grupos que
también aparecen en el mismo. Esto permite crear varias áreas de acceso en diversas partes de
la web, donde un mismo grupo puede tener diferentes privilegios o bien sólo algunos pueden
acceder a los contenidos.
Cuando se comprueba las credenciales de un usuario que accede, ha de comprobarse a que
grupo pertenece para ver si está autorizado o no.
La directiva “Require group private” hace que sólo los usuarios de este grupo tengan acceso a
ese directorio web.
No te olvides que has de crear el directorio en “/var/www/”:
Mkdir básica
Los permisos también es importante ponerlo para poder acceder a la carpeta o no:
Esta carpeta sólo contiene un “index.html”
Creación del archivo authgroups
Empezaremos por crear este archivo en la carpeta “/etc/apache2/authgroups”.
El contenido será  nombregrupo: usuario1 usuario2 ….
De igual forma el archivo “authusers” contiene una lista de usuarios y una hash de su
password, comprobado cada vez que se requiera autorización.
La directiva “Required valid-user” se usa cuando no existen grupos de usuarios con accesos
diferenciados, por eso cuando entran en la web es necesario conocer las credenciales de los
usuarios de este fichero.
El usuario sobre el que Apache se ejecuta por defecto es www-data. Esto influye a la hora de
acceder a ciertos archivos con usuarios y claves, como el que estamos usando, ya que este
usuario podría no tener privilegios. Para que funcione lo podemos poner en una localización
independiente del resto de las webs, dándole unos permisos adecuados. Otra opción es
Redes Trimestre 1 Débora García García
5
crearlo en el directorio de instalación Apache. Por motivos de seguridad haremos la primera
opción.
Para terminar debemos de construir las password de los usuarios que creamos anteriormente
en el fichero de los grupos:
Las claves generadas:
Agregamos la url al archivo hosts:
Reiniciamos apache para guardar los cambios:
/etc/init.d/apache2 restart
Nos dirigimos al navegador para probar que nos ha salido bien la autenticación:
Usuario no válido
Redes Trimestre 1 Débora García García
6
Usuario valido
Autenticación Digest
Haremos unos pasos similares a los anteriores.
Hay que habilitar este tipo de autenticación :
A2enmod auth_digest
Reiniciamos apache:
/etc/init.d/apache2 restart
Redes Trimestre 1 Débora García García
7
Tenemos que crear un espacio web nuevo:
Mkdir /var/www/digest
Dentro creamos un fichero “.htaccess” con el siguiente contenido:
Creamos un “index.html”.
El parametro AuthName o realm es una descripción del equipo al que se quiere acceder
mediante esta clase de autenticación. Esta información se usa para calcular las hash de las
claves enviadas y que será mostrada al usuario cuando se conecte al servidor. Más
información:http://en.wikipedia.org/wiki/Digest_access_authentication
Ahora tendremos que crear un fichero en “/etc/apache2/.htdigestusers” :
Contraseña generada, debe ir en la ruta “/etc/apache2/”:
Añadir al archivo host la url:
Comprobamos por el navegador si todo sale correctamente:
Redes Trimestre 1 Débora García García
8

Más contenido relacionado

La actualidad más candente

Seguridad 2° exp_ooo
Seguridad 2° exp_oooSeguridad 2° exp_ooo
Seguridad 2° exp_oooYuzel Sederap
 
Cómo blindar tu sitio WordPress (Rodrigo Donini, WCBA 2017)
 Cómo blindar tu sitio WordPress (Rodrigo Donini, WCBA 2017) Cómo blindar tu sitio WordPress (Rodrigo Donini, WCBA 2017)
Cómo blindar tu sitio WordPress (Rodrigo Donini, WCBA 2017)wpargentina
 
Latch, el pestillo digital
Latch, el pestillo digitalLatch, el pestillo digital
Latch, el pestillo digitalbilaljbr
 
Servidor de autenticación con OpenLDAP en CentOS
Servidor de autenticación con OpenLDAP en CentOSServidor de autenticación con OpenLDAP en CentOS
Servidor de autenticación con OpenLDAP en CentOSKramer Garay Gómez
 
MANUAL DE CREACION DE UNA BASE DE DATOS EN POSTGRESQL
MANUAL DE CREACION DE UNA BASE DE DATOS EN POSTGRESQLMANUAL DE CREACION DE UNA BASE DE DATOS EN POSTGRESQL
MANUAL DE CREACION DE UNA BASE DE DATOS EN POSTGRESQLJesus Alberto Casco Agudelo
 
Linux ud16 - usuarios de dominio de samba
Linux   ud16 - usuarios de dominio de sambaLinux   ud16 - usuarios de dominio de samba
Linux ud16 - usuarios de dominio de sambaJavier Muñoz
 
Perfil movil y obligatorio
Perfil movil y obligatorioPerfil movil y obligatorio
Perfil movil y obligatorioRosariio92
 
Seguridad 2° exp_ooo
Seguridad 2° exp_oooSeguridad 2° exp_ooo
Seguridad 2° exp_oooYuzel Sederap
 
Taller oracle seguridad backup recovery 22092008
Taller oracle seguridad backup recovery 22092008Taller oracle seguridad backup recovery 22092008
Taller oracle seguridad backup recovery 22092008wilder sanchez
 
Grupo#4 trabajo colaborativo2
Grupo#4 trabajo colaborativo2Grupo#4 trabajo colaborativo2
Grupo#4 trabajo colaborativo2ddiego7
 
Abf leccion 13
Abf leccion 13Abf leccion 13
Abf leccion 13victdiazm
 
Linux ud17 - recursos compartidos con samba en un controlador dominio
Linux   ud17 - recursos compartidos con samba en un controlador dominioLinux   ud17 - recursos compartidos con samba en un controlador dominio
Linux ud17 - recursos compartidos con samba en un controlador dominioJavier Muñoz
 
Gestión de Unidades Organizativas y Usuarios
Gestión de Unidades Organizativas y UsuariosGestión de Unidades Organizativas y Usuarios
Gestión de Unidades Organizativas y UsuariosDaniel Valdez
 

La actualidad más candente (17)

Seguridad 2° exp_ooo
Seguridad 2° exp_oooSeguridad 2° exp_ooo
Seguridad 2° exp_ooo
 
Cómo blindar tu sitio WordPress (Rodrigo Donini, WCBA 2017)
 Cómo blindar tu sitio WordPress (Rodrigo Donini, WCBA 2017) Cómo blindar tu sitio WordPress (Rodrigo Donini, WCBA 2017)
Cómo blindar tu sitio WordPress (Rodrigo Donini, WCBA 2017)
 
Métodos de autenticación en apache
Métodos de autenticación en apacheMétodos de autenticación en apache
Métodos de autenticación en apache
 
Ejercicio privilegios
Ejercicio privilegiosEjercicio privilegios
Ejercicio privilegios
 
Latch, el pestillo digital
Latch, el pestillo digitalLatch, el pestillo digital
Latch, el pestillo digital
 
Servidor de autenticación con OpenLDAP en CentOS
Servidor de autenticación con OpenLDAP en CentOSServidor de autenticación con OpenLDAP en CentOS
Servidor de autenticación con OpenLDAP en CentOS
 
MANUAL DE CREACION DE UNA BASE DE DATOS EN POSTGRESQL
MANUAL DE CREACION DE UNA BASE DE DATOS EN POSTGRESQLMANUAL DE CREACION DE UNA BASE DE DATOS EN POSTGRESQL
MANUAL DE CREACION DE UNA BASE DE DATOS EN POSTGRESQL
 
Linux ud16 - usuarios de dominio de samba
Linux   ud16 - usuarios de dominio de sambaLinux   ud16 - usuarios de dominio de samba
Linux ud16 - usuarios de dominio de samba
 
Perfil movil y obligatorio
Perfil movil y obligatorioPerfil movil y obligatorio
Perfil movil y obligatorio
 
Seguridad 2° exp_ooo
Seguridad 2° exp_oooSeguridad 2° exp_ooo
Seguridad 2° exp_ooo
 
Conexión remota-a-oracle-database
Conexión remota-a-oracle-databaseConexión remota-a-oracle-database
Conexión remota-a-oracle-database
 
Taller oracle seguridad backup recovery 22092008
Taller oracle seguridad backup recovery 22092008Taller oracle seguridad backup recovery 22092008
Taller oracle seguridad backup recovery 22092008
 
Grupo#4 trabajo colaborativo2
Grupo#4 trabajo colaborativo2Grupo#4 trabajo colaborativo2
Grupo#4 trabajo colaborativo2
 
Abf leccion 13
Abf leccion 13Abf leccion 13
Abf leccion 13
 
Linux ud17 - recursos compartidos con samba en un controlador dominio
Linux   ud17 - recursos compartidos con samba en un controlador dominioLinux   ud17 - recursos compartidos con samba en un controlador dominio
Linux ud17 - recursos compartidos con samba en un controlador dominio
 
Php.y.my sql
Php.y.my sqlPhp.y.my sql
Php.y.my sql
 
Gestión de Unidades Organizativas y Usuarios
Gestión de Unidades Organizativas y UsuariosGestión de Unidades Organizativas y Usuarios
Gestión de Unidades Organizativas y Usuarios
 

Destacado

Red t3 practicas_iss
Red t3 practicas_issRed t3 practicas_iss
Red t3 practicas_issgarciadebora
 
Sg t3 practica_vpn-ssh
Sg t3 practica_vpn-sshSg t3 practica_vpn-ssh
Sg t3 practica_vpn-sshgarciadebora
 
Red t4 practica_ftp2
Red t4 practica_ftp2Red t4 practica_ftp2
Red t4 practica_ftp2garciadebora
 
Red t4 practica_ftp1
Red t4 practica_ftp1Red t4 practica_ftp1
Red t4 practica_ftp1garciadebora
 
Aso t1 practicas_ad
Aso t1 practicas_adAso t1 practicas_ad
Aso t1 practicas_adgarciadebora
 
Aso t2 practica_crontab
Aso t2 practica_crontabAso t2 practica_crontab
Aso t2 practica_crontabgarciadebora
 
Seg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslSeg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslgarciadebora
 
Iso practica1 gavilan_fran_garciadebora
Iso practica1 gavilan_fran_garciadeboraIso practica1 gavilan_fran_garciadebora
Iso practica1 gavilan_fran_garciadeboragarciadebora
 
Apli t1 practicas_apache
Apli t1 practicas_apacheApli t1 practicas_apache
Apli t1 practicas_apachegarciadebora
 
Introducción a phone gap
Introducción a phone gapIntroducción a phone gap
Introducción a phone gapRodrigo Corral
 

Destacado (11)

Red t3 practicas_iss
Red t3 practicas_issRed t3 practicas_iss
Red t3 practicas_iss
 
Sg t3 practica_vpn-ssh
Sg t3 practica_vpn-sshSg t3 practica_vpn-ssh
Sg t3 practica_vpn-ssh
 
Red t4 practica_ftp2
Red t4 practica_ftp2Red t4 practica_ftp2
Red t4 practica_ftp2
 
Red t4 practica_ftp1
Red t4 practica_ftp1Red t4 practica_ftp1
Red t4 practica_ftp1
 
Aso t1 practicas_ad
Aso t1 practicas_adAso t1 practicas_ad
Aso t1 practicas_ad
 
Aso t2 practica_crontab
Aso t2 practica_crontabAso t2 practica_crontab
Aso t2 practica_crontab
 
Seg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslSeg t2 practicas_certificado ssl
Seg t2 practicas_certificado ssl
 
Iso practica1 gavilan_fran_garciadebora
Iso practica1 gavilan_fran_garciadeboraIso practica1 gavilan_fran_garciadebora
Iso practica1 gavilan_fran_garciadebora
 
Apli t1 practicas_apache
Apli t1 practicas_apacheApli t1 practicas_apache
Apli t1 practicas_apache
 
Edubuntu
EdubuntuEdubuntu
Edubuntu
 
Introducción a phone gap
Introducción a phone gapIntroducción a phone gap
Introducción a phone gap
 

Similar a Red t3_practica_autenticacion_apache

autenticacion apache con mysql
autenticacion apache con mysqlautenticacion apache con mysql
autenticacion apache con mysqlRoberto Almena
 
Autenticación en apache
Autenticación en apache Autenticación en apache
Autenticación en apache Rosariio92
 
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPSAcceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPSTerrafx9
 
Manuel rodriguez práctica 2 apache
Manuel rodriguez   práctica 2 apacheManuel rodriguez   práctica 2 apache
Manuel rodriguez práctica 2 apachecaoxman
 
Guia basica-securizacion-apache
Guia basica-securizacion-apacheGuia basica-securizacion-apache
Guia basica-securizacion-apacheERWIN AGUILAR
 
Apache.http ftp-smtp
Apache.http ftp-smtpApache.http ftp-smtp
Apache.http ftp-smtpgh02
 
CACTI herramienta de monitoreo
CACTI herramienta de monitoreoCACTI herramienta de monitoreo
CACTI herramienta de monitoreoJenny Galicia
 
69 Php. Proteccion De Directorios
69 Php. Proteccion De Directorios69 Php. Proteccion De Directorios
69 Php. Proteccion De DirectoriosJosé M. Padilla
 
Auth digest
Auth digestAuth digest
Auth digestjuanan10
 
practica 1 apache
practica 1 apachepractica 1 apache
practica 1 apachecaoxman
 
Apache: instalación y configuración en Ubuntu Server y Windows Server
Apache: instalación y configuración en Ubuntu Server y Windows ServerApache: instalación y configuración en Ubuntu Server y Windows Server
Apache: instalación y configuración en Ubuntu Server y Windows ServerNombre Apellidos
 
Servicio HTTP en Ubuntu (Apache)
Servicio HTTP en Ubuntu (Apache)Servicio HTTP en Ubuntu (Apache)
Servicio HTTP en Ubuntu (Apache)Sergio Santos
 
Apache2 dia1
Apache2 dia1Apache2 dia1
Apache2 dia1lyonel_cc
 

Similar a Red t3_practica_autenticacion_apache (20)

autenticacion apache con mysql
autenticacion apache con mysqlautenticacion apache con mysql
autenticacion apache con mysql
 
RESUMEN PROXY
RESUMEN PROXYRESUMEN PROXY
RESUMEN PROXY
 
servidor proxy
servidor proxyservidor proxy
servidor proxy
 
Autenticación en apache
Autenticación en apache Autenticación en apache
Autenticación en apache
 
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPSAcceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
Acceso a carpeta privada con LDAP e instalación de Joomla en HTTPS
 
Manuel rodriguez práctica 2 apache
Manuel rodriguez   práctica 2 apacheManuel rodriguez   práctica 2 apache
Manuel rodriguez práctica 2 apache
 
Cherokee
CherokeeCherokee
Cherokee
 
Guia basica-securizacion-apache
Guia basica-securizacion-apacheGuia basica-securizacion-apache
Guia basica-securizacion-apache
 
Apache.http ftp-smtp
Apache.http ftp-smtpApache.http ftp-smtp
Apache.http ftp-smtp
 
CACTI herramienta de monitoreo
CACTI herramienta de monitoreoCACTI herramienta de monitoreo
CACTI herramienta de monitoreo
 
Métodos de autenticación en apache
Métodos de autenticación en apacheMétodos de autenticación en apache
Métodos de autenticación en apache
 
69 Php. Proteccion De Directorios
69 Php. Proteccion De Directorios69 Php. Proteccion De Directorios
69 Php. Proteccion De Directorios
 
Auth digest
Auth digestAuth digest
Auth digest
 
practica 1 apache
practica 1 apachepractica 1 apache
practica 1 apache
 
Apache: instalación y configuración en Ubuntu Server y Windows Server
Apache: instalación y configuración en Ubuntu Server y Windows ServerApache: instalación y configuración en Ubuntu Server y Windows Server
Apache: instalación y configuración en Ubuntu Server y Windows Server
 
Práctica apache2 jose antonio albalat almenara
Práctica apache2 jose antonio albalat almenaraPráctica apache2 jose antonio albalat almenara
Práctica apache2 jose antonio albalat almenara
 
Servicio HTTP en Ubuntu (Apache)
Servicio HTTP en Ubuntu (Apache)Servicio HTTP en Ubuntu (Apache)
Servicio HTTP en Ubuntu (Apache)
 
Cómo utilizar htaccess
Cómo utilizar htaccessCómo utilizar htaccess
Cómo utilizar htaccess
 
Apache2 dia1
Apache2 dia1Apache2 dia1
Apache2 dia1
 
Servidor apache
Servidor apacheServidor apache
Servidor apache
 

Más de garciadebora

Sg t2 practicas_tripwire
Sg t2 practicas_tripwireSg t2 practicas_tripwire
Sg t2 practicas_tripwiregarciadebora
 
Sg t2 practicas_snort
Sg t2 practicas_snortSg t2 practicas_snort
Sg t2 practicas_snortgarciadebora
 
Sg t2 practicas_eliminar_malware
Sg t2 practicas_eliminar_malwareSg t2 practicas_eliminar_malware
Sg t2 practicas_eliminar_malwaregarciadebora
 
Sg t1 practicas_linux
Sg t1 practicas_linuxSg t1 practicas_linux
Sg t1 practicas_linuxgarciadebora
 
Sg t1 practica-copia_seguridadwindows2003
Sg t1 practica-copia_seguridadwindows2003Sg t1 practica-copia_seguridadwindows2003
Sg t1 practica-copia_seguridadwindows2003garciadebora
 
Sg t1 practica_e_criptfs
Sg t1 practica_e_criptfsSg t1 practica_e_criptfs
Sg t1 practica_e_criptfsgarciadebora
 
Sg t1 practica_copia_seguridadlinux
Sg t1 practica_copia_seguridadlinuxSg t1 practica_copia_seguridadlinux
Sg t1 practica_copia_seguridadlinuxgarciadebora
 
Sg t1 practica_analisis_forense-2
Sg t1 practica_analisis_forense-2Sg t1 practica_analisis_forense-2
Sg t1 practica_analisis_forense-2garciadebora
 
Red t3 practica1_apachecms
Red t3 practica1_apachecmsRed t3 practica1_apachecms
Red t3 practica1_apachecmsgarciadebora
 
Red t1 practicas_dns
Red t1 practicas_dnsRed t1 practicas_dns
Red t1 practicas_dnsgarciadebora
 
Red t1_practica_dns2
Red  t1_practica_dns2Red  t1_practica_dns2
Red t1_practica_dns2garciadebora
 
Los servidores wamp
Los servidores wampLos servidores wamp
Los servidores wampgarciadebora
 
Aso t1 open_ldap_lnpracticas
Aso t1 open_ldap_lnpracticasAso t1 open_ldap_lnpracticas
Aso t1 open_ldap_lnpracticasgarciadebora
 
Fh trbj chipset_garciad_escrichef
Fh trbj chipset_garciad_escrichefFh trbj chipset_garciad_escrichef
Fh trbj chipset_garciad_escrichefgarciadebora
 

Más de garciadebora (20)

Pecha kucha
Pecha kuchaPecha kucha
Pecha kucha
 
Sg t2 practicas_tripwire
Sg t2 practicas_tripwireSg t2 practicas_tripwire
Sg t2 practicas_tripwire
 
Sg t2 practicas_snort
Sg t2 practicas_snortSg t2 practicas_snort
Sg t2 practicas_snort
 
Sg t2 practicas_eliminar_malware
Sg t2 practicas_eliminar_malwareSg t2 practicas_eliminar_malware
Sg t2 practicas_eliminar_malware
 
Sg t1 practicas_linux
Sg t1 practicas_linuxSg t1 practicas_linux
Sg t1 practicas_linux
 
Sg t1 practica-copia_seguridadwindows2003
Sg t1 practica-copia_seguridadwindows2003Sg t1 practica-copia_seguridadwindows2003
Sg t1 practica-copia_seguridadwindows2003
 
Sg t1 practica_e_criptfs
Sg t1 practica_e_criptfsSg t1 practica_e_criptfs
Sg t1 practica_e_criptfs
 
Sg t1 practica_copia_seguridadlinux
Sg t1 practica_copia_seguridadlinuxSg t1 practica_copia_seguridadlinux
Sg t1 practica_copia_seguridadlinux
 
Sg t1 practica_analisis_forense-2
Sg t1 practica_analisis_forense-2Sg t1 practica_analisis_forense-2
Sg t1 practica_analisis_forense-2
 
Red t3 practica1_apachecms
Red t3 practica1_apachecmsRed t3 practica1_apachecms
Red t3 practica1_apachecms
 
Red t2 dhcp
Red t2 dhcpRed t2 dhcp
Red t2 dhcp
 
Red t1 practicas_dns
Red t1 practicas_dnsRed t1 practicas_dns
Red t1 practicas_dns
 
Red t1_practica_dns2
Red  t1_practica_dns2Red  t1_practica_dns2
Red t1_practica_dns2
 
Bd practica1.11
Bd practica1.11Bd practica1.11
Bd practica1.11
 
Bd practica 1.10
Bd practica 1.10Bd practica 1.10
Bd practica 1.10
 
Los servidores wamp
Los servidores wampLos servidores wamp
Los servidores wamp
 
Apli t1 ejr
Apli t1 ejrApli t1 ejr
Apli t1 ejr
 
Aso t1 open_ldap_lnpracticas
Aso t1 open_ldap_lnpracticasAso t1 open_ldap_lnpracticas
Aso t1 open_ldap_lnpracticas
 
Fh trbj chipset_garciad_escrichef
Fh trbj chipset_garciad_escrichefFh trbj chipset_garciad_escrichef
Fh trbj chipset_garciad_escrichef
 
Gbd t2 trbj_grupo
Gbd t2 trbj_grupoGbd t2 trbj_grupo
Gbd t2 trbj_grupo
 

Red t3_practica_autenticacion_apache

  • 1. Formas de autenticarse en un sitio web Apache - Ubuntu Redes Trimestre 1 2º ASIR Débora García García
  • 2. Redes Trimestre 1 Débora García García 1 Índice OBJETIVOS ................................................................................................................................2 INTRODUCCIÓN: Métodos de autenticación en Apache.............................................................2 Autenticación Basic...................................................................................................................3 Apache2.conf........................................................................................................................3 Creación del archivo authgroups...........................................................................................4 Autenticación Digest.................................................................................................................6
  • 3. Redes Trimestre 1 Débora García García 2 OBJETIVOS Hemos visto en clase una manera de acceder a un sitio web de Apache, mediante autenticación contra un servidor LDAP. Investiga otras maneras, pruébalas y haz un artículo en tu blog. INTRODUCCIÓN: Métodos de autenticación en Apache Una instalación por defecto del servidor Web Apache es que soporta dos tipos de autenticación básica:  Basic.  Digest (instalada pero no habilitada).  Otras (mediante módulos específicos).  Otras (adaptadas a interactuar con programas concretos como: MYSQL). Aquí podemos buscar los modulos “auth”: http://modules.apche.org/search.php Cada módulo de atenticación tiene su forma particular de ser activado y gestionado. Estas dos formas de autenticación nos sirven como base para hacernos una idea de cómo manejar el resto. Hay mucho tipos de autenticación que son front-ends (del lado del usuario) que trabajan con estas dos formas básicas de autenticación, por eso es importante hacer uso de SSL para hacerlas seguras, dado a que se envía información importante. En los ejemplos que veremos en este documento utilizaremos archivos:  .htaccess (con el mismo efecto se puede lograr con directivas <Directory> o <Location> ubicados en los archivos de configuración principales de Apache). Los ficheros de autenticación nunca deben estar en el “path” designado por “DocumentRoot”, ya que podrán descargarse por cualquier usuario y esté romper nuestro sistema de autenticación. Más información:  http://www.linuxsecurity.com/content/view/133913/171/  http://www.brennan.id.au/13-Apache_Web_Server.html#users (página que incluye autenticación en directorios personales public_html de usuarios)  http://httpd.apache.org/docs/2.0/howto/auth.html  http://blog.innerewut.de/2007/6/26/apache-2-2-authentication-with- mod_authnz_external  http://httpd.apache.org/docs/2.0/mod/mod_auth_digest.html
  • 4. Redes Trimestre 1 Débora García García 3  http://www.howtoforge.com/apache_mod_auth_shadow_debian_ubuntu Otras páginas interesantes donde podemos encontrar más métodos de autenticación:  http://humanliks.wordpress.com/manual-de-instalalacion-y-configuracion-de-apache- autenticado-con-radiuslinux-debian-lenny/  http://gnburgos.blogspot.com/2009/11/configuracion-de-autenticacion-con.html  http://blog.unlugarenelmundo.es/2010/03/13/autenticacion-en-apache-basica-y- pam/ Para terminar, podemos considerar que otra de las opciones que primero se puede considerar es intentar autenticar usuarios a partir del fichero de claves del S.O “/etc/shadow”. Esto se puede conseguir por medio del módulo “mod_shadow”: http://httpd.apache.org/docs/1.3/misc/FAQ.html#passwdauth O La autenticación como hemos nombrado en otro manual con LDAP: http://www.sahw.com/wp/archivos/2009/06/08/autenticacion-en-apache-mediante- mod_authnz_ldap-soporte-openldap/ En el siguiente enlace podemos encontrar guías y procedimientos sobre cómo gestionar distintos tipos de autenticación: http://www.yolinux.com/TUTORIALS/LinuxTutorialApacheAddingLoginSiteProtection.html Autenticación Basic Vamos a implementar en el directorio “/var/www/básica” de una web una autenticación básica para personas que pertenecen a un grupo concreto. Apache2.conf
  • 5. Redes Trimestre 1 Débora García García 4 El fichero “authgroups” debe contener un listado de usuarios que han sido creados expresamente para esta clase de autenticación, distribuidos en una serie de grupos que también aparecen en el mismo. Esto permite crear varias áreas de acceso en diversas partes de la web, donde un mismo grupo puede tener diferentes privilegios o bien sólo algunos pueden acceder a los contenidos. Cuando se comprueba las credenciales de un usuario que accede, ha de comprobarse a que grupo pertenece para ver si está autorizado o no. La directiva “Require group private” hace que sólo los usuarios de este grupo tengan acceso a ese directorio web. No te olvides que has de crear el directorio en “/var/www/”: Mkdir básica Los permisos también es importante ponerlo para poder acceder a la carpeta o no: Esta carpeta sólo contiene un “index.html” Creación del archivo authgroups Empezaremos por crear este archivo en la carpeta “/etc/apache2/authgroups”. El contenido será  nombregrupo: usuario1 usuario2 …. De igual forma el archivo “authusers” contiene una lista de usuarios y una hash de su password, comprobado cada vez que se requiera autorización. La directiva “Required valid-user” se usa cuando no existen grupos de usuarios con accesos diferenciados, por eso cuando entran en la web es necesario conocer las credenciales de los usuarios de este fichero. El usuario sobre el que Apache se ejecuta por defecto es www-data. Esto influye a la hora de acceder a ciertos archivos con usuarios y claves, como el que estamos usando, ya que este usuario podría no tener privilegios. Para que funcione lo podemos poner en una localización independiente del resto de las webs, dándole unos permisos adecuados. Otra opción es
  • 6. Redes Trimestre 1 Débora García García 5 crearlo en el directorio de instalación Apache. Por motivos de seguridad haremos la primera opción. Para terminar debemos de construir las password de los usuarios que creamos anteriormente en el fichero de los grupos: Las claves generadas: Agregamos la url al archivo hosts: Reiniciamos apache para guardar los cambios: /etc/init.d/apache2 restart Nos dirigimos al navegador para probar que nos ha salido bien la autenticación: Usuario no válido
  • 7. Redes Trimestre 1 Débora García García 6 Usuario valido Autenticación Digest Haremos unos pasos similares a los anteriores. Hay que habilitar este tipo de autenticación : A2enmod auth_digest Reiniciamos apache: /etc/init.d/apache2 restart
  • 8. Redes Trimestre 1 Débora García García 7 Tenemos que crear un espacio web nuevo: Mkdir /var/www/digest Dentro creamos un fichero “.htaccess” con el siguiente contenido: Creamos un “index.html”. El parametro AuthName o realm es una descripción del equipo al que se quiere acceder mediante esta clase de autenticación. Esta información se usa para calcular las hash de las claves enviadas y que será mostrada al usuario cuando se conecte al servidor. Más información:http://en.wikipedia.org/wiki/Digest_access_authentication Ahora tendremos que crear un fichero en “/etc/apache2/.htdigestusers” : Contraseña generada, debe ir en la ruta “/etc/apache2/”: Añadir al archivo host la url: Comprobamos por el navegador si todo sale correctamente:
  • 9. Redes Trimestre 1 Débora García García 8