SlideShare uma empresa Scribd logo
1 de 29
Baixar para ler offline
Francisco José Ribadas Pena
ribadas@uvigo.es
Departamento de Informática   Gestión de usuarios y autenticación en
Universidade de Vigo                                     GNU/Linux.
                                       Módulos de autenticación PAM
                                         Ferramentas de seguridade en GNU/Linux
                                                      Curso de Extensión Universitaria




                                                      21 de xuño de 2010
Indice

Autenticación
Autenticación de usuarios en GNU/Linux
Pluggable Authentication Modules (PAM)
Funcionamiento de PAM
Configuración de PAM
Módulos PAM
Ejemplos de uso




                                                  2
Autenticación

Definición:
  Mecanismo/proceso que permita identificar a las entidades
  (elementos activos del sistema [usuarios]) que intentan acceder
  a los objetos (elementos pasivos [ficheros, equipos, datos].
  Objetivo:
     Autenticar = asegurar que una entidad[usuario] es quien dice ser
Mecanismos generales de autenticación:
  en base a algo que sabe el usuario
     Ej.: claves, passwords y similares
  en base a algo que posee el usuario
     Ej.: DNIe, tarjetas acceso, tarjetas inteligentes, ...
  en base a alguna característica física del usuario
     Ej.: medidas biométricas (huellas, iris, voz, etc)


                                                                        3
Autenticación de usuarios en GNU/Linux (I)

Esquema clásico
  Cada usuario se identifica por un UID (user id) al que se
  asocia un nombre (login) y una clave secreta (password)
  Asociaciones almacenadas en el fichero /etc/passwd
  Una línea por usuario con campos separados por “:”
   login:pass word:uid:gid:nombre:home:shell
  Claves almacenadas están cifradas con CRYPT
       A partir de: 8 bytes password claro + salt aletorio
       Varios cifrados DES en cascada [cifrado en único sentido]
       /etc/passwd almacena salt en claro + resultado CRYPT
  Proceso autenticación (login)
       Password introducido + salt se procesa con CRYPT
       Resultado obtenido es comparado con almacenado
            si coinciden -> acceso permitido
  Fichero /etc/passwd debe ser accesible en lectura para todas
  las aplicaciones que lo usen en la autenticación             4
Autenticación de usuarios en GNU/Linux (II)

Problemas esquema clásico
  Info. de usuarios en /etc/passwd (incluidos passwords
  cifrados) debe ser accesibles a todo el mundo
       => son posibles ataques de diccionario (fuerza bruta)
     Solución: shadow password
       Almacena la versión cifrada del password en el archivo
       /etc/shadow que sólo puede leer el administrador (root)
       Añade info. adicional: envejecimiento, caducidad, etc
  Passwords con CRYPT limitados a 8 caracteres
     Solución: usar hash MD5
       Hash criptográfica, genera “resúmenes únicos” de 128 bits para
       tamaños de entrada variables (ilimitado en teoría).
  Problema: estos cambios requerirían “modificar” y
  recompilar las aplicaciones que hacían uso del esquema de
  autenticación clásico.
                                                                        5
Pluggable Authentication Modules (I)

Propuesto por SUN en 1995 (RFC 86.9)
Proporciona un interfaz modular entre las aplicaciones de
usuario y los métodos de autenticación
  conjunto de librerías de carga dinámica
  independiza aplicaciones del método de autenticación sin
  necesidad de recompilar
  permite integrar aplicaciones Unix clásicas con nuevos
  esquemas de autenticación (biometría, tarjetas inteligentes,...)
Objetivos de diseño
  Dar mayor libertad al administrador para elegir el mecanismo de
  autenticación
  Configuración de la autenticación a nivel de aplicación
  Múltiples mecanismos de autentic. para cada aplicación
Premisa: las aplicaciones/servicios no deben cambiar cuando
se cambia el mecanismo de autenticación
                                                                     6
Pluggable Authentication Modules (II)

Idea base:
  Separar las acciones típicas de autenticación
  Delegarlas en el susbsistema PAM (libpam)
  Descomponer tareas de autenticación en “5 pasos”
     pam_autenticate()
     pam_acct_mgmt()
     pam_secrted()
     pam_open_ses sion()
     pam_close_sess ion()
     pam_chauthtok()
  Componentes software (librerías) intercambiables se
  encargan de implementar esas tareas
  Controlado por ficheros de configuración



                                                        7
Pluggable Authentication Modules (III)

Beneficios del uso de PAM:
 Políticas de configuración flexibles
     Autenticación para cada aplicación/servicio
     Posibilidad de definir un mecanismo de autenticación por
     defecto
     Posibilidad de requerir múltiples autorizaciones
  Facilidad de uso para el usuario final
     Evitar repetición de passwords en diferentes servicios
     Solicitar múltiples passwords sin lanzar múltiples comandos
     Posibilidad de parametrizar (pasar argumentos) a los
     componentes des sistema de autenticación
  Posibilidad de implementar políticas específicas de una
  máquina/sistema sin tener que cambiar los servicios


                                                                   8
Funcionamiento de PAM (I)

Idea de funcionamiento
  El API PAM descompone las tareas de autenticación en
  cuatro grupos independientes
    autenticación/obtención de credenciales
    gestión/verificación de cuentas de usuario
    gestión de sesiones
    actualización info. de autenticación (passwords)
  Para cada servicio/aplicación que haga uso de PAM se
  deberá configurar el modo en que funcionará cada etapa
  del proceso de autenticación
    especificando el módulo encargado de gestionarlo
  El servicio/aplicación concreta es ajeno a esos “pasos
  intermedios”
    simplemente recibe una respuesta final afirmativa o positiva
    (autoriza/desautoriza al usuario)
                                                                   9
Funcionamiento de PAM (II)

Arquitectura de PAM
  Componentes: aplicaciones + módulos autenticación




                                                        10
Funcionamiento de PAM (III)


Tipos de módulos
    de autenticación (auth): autentican al usuario mediante un
    determinado método (solicitud de clave, tarjeta aceso, control
    biométrico,...) y le asignan una serie de
    credenciales/privilegios
       invocados cuando la aplicación llama a la función
       pam_authenticate() ó pam_secretd()

    de verificación de cuentas (account): realizan
    comprobaciones relativas al servicio concreto
       una vez establecido que el usuario es quien dice ser ...
           ¿usuario tiene permiso para usar el servicio?
           ¿ha expirado su clave?
           ¿el servicio está permitido?
       invocados cuando la aplicación llama a la función
       pam_acct_mgmt()
                                                                     11
Funcionamiento de PAM (III)


Tipos de módulos
    de gestión de sesiones (session): determinan las acciones
    que se ejecutarán antes y/o después del acceso del usuario
      invocados cuando la aplicación llama a la función
      pam_open_session() ó pam_close_session()

    de actualización (password): empleandos para actualizar la
    información que usa el mecanismo de autenticación
      invocados cuando la aplicación llama a la función
      pam_chauthtok()




                                                                 12
Funcionamiento de PAM (IV)

Configuración
 Controlada por fichero/s: para cada servicio/aplicación se
 especifican los módulos encargados de cada tarea
 Esquema original: fichero / pam.conf
                            etc/
     Fichero único: asocia servicios con módulos
     Sintaxis: (1 o más líneas por servicio)
      servicio tipo control módulo argumentos

  Esquema actual: directorio / pam.d/
                              etc/   *
     Un fichero para cada servicio
     Sintaxis:
      tipo control módulo argumentos




                                                              13
Configuración PAM (I)


Idea básica: pila de módulos
  lista de acciones a realizar antes de que usuario llegue a
  acceder al servicio/aplicación
  el orden es muy importante
Elementos de los ficheros / pam.d
                           etc/
  tipo: especifica el tipo de módulo (auth, account, password,
  session)
  control: especifica la acción que se toma en base al
  resultado (éxito/fracaso) del módulo correspondiente
  modulo: path del módulo
     path absoluto (empieza por /)
     path relativo (módulos contenidos en /lib/security)
  argumentos: parámetros concretos que se pasarán al
  módulo (específicos de cada módulo)

                                                                 14
Configuración PAM (II)

Acciones (campo “control”)
 Sintaxis simplificada (4 acciones posibles)
     requisite: debe verificarse
       si falla, se envía fallo inmediatamente a la aplicación
       no se ejecuta resto de módulos del mismo tipo en la lista
     required: debe verificarse
       si falla, se enviará fallo una vez completada la pila
       se ejecutan el resto de módulos
     sufficient: debe verificarse
       si se verifica, se enviará correcto inmediatamente, salvo que
       exista un fallo previo (required fallido)
            la ejecución correcta del módulo satisface los requisitos de
            autenticación
       si falla, se ignora el fallo
     optional: puede verificarse o no
       su resultado sólo es tenido en consideración si es el único
       módulo en la lista                                                  15
Configuración PAM (II)

Acciones (campo “control”)
 Sintaxis extendida (mayor control)
    Cada “acción” es un conjunto de pares valor+acción
  [valor=accion, valor=accion, ..., valor=accion]
        acciones a realizar en función del valor devuelto por el módulo
        llamado
    Valores de retorno:
  success             open_err         symbol_err   service_err       system_err
  buf_err             perm_denied      auth_err     cred_insufficient
  authinfo_unavail    user_unknown     maxtries     new_authtok_reqd
  acct_expired        session_err      cred_unavail cred_expired      cred_err
  no_module_data      conv_err         authtok_err authtok_recover_err
  authtok_lock_busy   authtok_disable_aging         try_again         ignore
  abort                authtok_expired module_unknown bad_item        default




                                                                                   16
Configuración PAM (III)

Aciones:
   nº entero K: ignorar siguientes K módulos del mismo tipo
   ignore: valor de retorno se omite
   ok: si es correcto, devolver correcto después de ejecutar el resto de
   módulos de ese tipo
   done: si es correcto, devolver correcto inmediatamente
   bad: si es fallo, devolver fallo después de ejecutar el resto de módulos de
   ese tipo
   die: si es fallo, devolver fallo inmediatamente
   reset: desecha el estado actual y comienza de nuevo en el siguiente
   módulo
Equivalencias
Simple       Extendida
requisite    [success=ok, new_authtok_reqd=ok, ignore=ignore, default=die]
required     [success=ok, new_authtok_reqd=ok, ignore=ignore, default=bad]
sufficient   [success=done, new_authtok_reqd=done, default=ignore]
optional     [success=ok, new_authtok_reqd=ok, default=ignore]
                                                                                 17
Módulos PAM (I)


Módulo pam_unix.s o
 Tipo: auth, account, password, session
 Implementa el mecanismo de autenticación por passwords
 clásico de UNIX
    Consulta /etc/password + /etc/shadow
 Argumentos propios:
    auth: debug, audit, user_first_pass, try_first_pass, nullok,
    nodelay, noreap
    account: debug, audit,
    password: debug, audit, nullook, not_set_pass, use_authtok,
    try_fisrt_pass, use_first_pass, md5, bigcrypt, shadow, nis,
    remember=n


                                                                   18
Módulos PAM (II)


Módulo pam_cracklib.s o
 Tipo: password
 Comprueba la fortaleza de las nuevas contraseñas
 introducidas.
 Usa diccionario para evitar contraseñas débiles
    /etc/lib/cracklib_dict
  Argumentos propios:
    password: debug, type=XXX, retry=n, difok=n, minlen=n,
    dcredit=n, ucredit=n, lcredit=n, ocredit=n, use_authtok
  Módulo similar: pam-passwdqc.so




                                                              19
Módulos PAM (III)

Módulo pam_env.s o
 Tipo: auth
 Permite asignar valores a variables de entorno

Módulo pam_group.s o
 Tipo: auth
 Establece el grupo del usuario que accede al sistema

Módulo pam_lastlog.s o
 Tipo: session
 Anota en el fichero /var/log/lastlog el acceso del usuario
 y le informa de su último acceso (siempre se satisface)


                                                              20
Módulos PAM (IV)

Módulo pam_limits .s o
 Tipo: session
 Permite establecer límites a los recursos del sistema
 disponibles para un usuario
 Configurado en /etc/security/limits.conf
Módulo pam_mkhomedir.s o
 Tipo: session
 Crea el directorio home del usuario si no existía
 Argumentos propios:
    skel: directorio home base a copiar (/etc/skel)
    umask: máscara de permisos
Módulo pam_acces s .s o
 Tipo: account
 Comprueba si el usuario puede acceder desde una posición
 remota (/etc/security/access)                           21
Módulos PAM (IV)


Módulo pam_chroot.s o
 Tipo: auth, account, session
 Convierte el directorio del usuario en el directorio raíz (/)
 [entorno chroot]
     Útil para limitar las acciones de los usuarios (no “ven” los
     directorios del sistema)
Módulo pam_nologin.s o
 Tipo: auth, account
 Si existe el fichero /etc/nologin sólo permite acceso al
 administrador (root)
Módulo pam_rootok.s o
 Tipo: auth
 Permite acceso al administrador (root) sin tener que
 introducir su contraseña (comando su)
                                                                    22
Módulos PAM (V)

Módulo pam_wheel.s o
 Tipo: auth, account
 Solo permite acceso como administrador (root) a los
 miembros de un grupo concreto

Módulo pam_deny.s o
 Tipo: auth, account, session, password
 Devuelve siempre fallo.
 Util para organizar pila de módulos (acción por defecto)

Módulo pam_permit.s o
 Tipo: auth, account, session, password
 Devuelve siempre correcto
 Util para organizar pila de módulos (acción por defecto)
                                                            23
Módulos PAM (VI)


Módulo pam_mys ql.s o
 Tipo: auth, account, session, password
 Soporta la autenticación contra los datos almacenados en
 una BD mysql
 Configuración en /etc/pam_mysql.conf

Módulo pam_ldap.s o
 Tipo: auth, account, session, password
 Soporta la autenticación contra los datos almacenados en
 un directorio LDAP
 Configuración en /etc/pam_ldap.conf



                                                            24
Ejemplos de uso (I)


Nota: Estructura / pam.d en Debian/Ubuntu
                  etc/
 Se definen pilas por defecto para auth, account,
 password, session que son incluidas en los ficheros
 PAM de cada uno de los servicios.
        common-account, common-auth,common-password, common-
        session
   Ejemplo: / pam.d/
             etc/   common-auth
# /etc/pam.d/common-auth - authentication settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use the
# traditional Unix authentication mechanisms.
#
auth required         pam_unix.so nullok_secure


                                                                                25
Ejemplos de uso (II)

   Ejemplo: / pam.d/
             etc/   login
# The PAM configuration file for the Shadow `login' service
auth      requisite pam_securetty.so
auth      requisite pam_nologin.so
session   required pam_env.so readenv=1
session   required pam_env.so readenv=1 envfile=/etc/default/locale


# Standard Un*x authentication.
@include common-auth
auth      optional pam_group.so
session   required pam_limits.so
session   optional pam_motd.so
session   optional pam_mail.so standard


# Standard Un*x account and session
@include common-account
@include common-session
@include common-password                                                             26
Ejemplos de uso (III)

    Ejemplo: / pam.d/ sh
              etc/   s
# PAM configuration for the Secure Shell service
auth      required    pam_env.so # [1]
auth      required    pam_env.so envfile=/etc/default/locale


# Standard Un*x authentication.
@include common-auth
account    required    pam_nologin.so


# Standard Un*x authorization.
@include common-account


# Standard Un*x session setup and teardown.
@include common-session
session    optional   pam_motd.so # [1]
session    optional   pam_mail.so standard noenv # [1]
session    required    pam_limits.so


# Standard Un*x password updating.
@include common-password                                                               27
NSS: Name Service Switch

Servicio complemento a PAM
Unifica la gestión de la traducción/mapeo entre IDs numéricos
(uid, gid, dir. ip) y nombres (login, grupo, nombre dominio)
Unifica/reemplaza parte de la información gestionada por los
ficheros de configuración típicos de Unix (/etc/passwd,
/etc/group, /etc/hosts, ...)
Configuración: /etc/nsswitch.conf
passwd:      files db ldap
group:       files db ldap
shadow:      file db ldap


hosts:        files dns
networks:    files


protocols:   db files
services:    db files
ethers:      db files

                                                            28
netgroup:    nis
Enlaces y referencias

SEGURIDAD EN UNIX Y REDES Versión 2.1.
  http://www.rediris.es/cert/doc/unixsec/
Linux PAM
  http://www.kernel.org/pub/linux/libs/pam/
The Linux-PAM System Administrators' Guide
  http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-
  html/Linux-PAM_SAG.html
(Lista de módulos+parametros en Sección 6)
Sun PAM
  http://www.sun.com/software/solaris/pam/




                                                           29

Mais conteúdo relacionado

Mais procurados

Cai Dat SSL tren WEB SERVER
Cai Dat SSL tren WEB SERVERCai Dat SSL tren WEB SERVER
Cai Dat SSL tren WEB SERVERconglongit90
 
Tài liệu về VPN IPSEC - Trển khai VPN có IPsec trên Windows Server
Tài liệu về VPN IPSEC - Trển khai VPN có IPsec trên Windows ServerTài liệu về VPN IPSEC - Trển khai VPN có IPsec trên Windows Server
Tài liệu về VPN IPSEC - Trển khai VPN có IPsec trên Windows ServerDiệp Trần
 
Chương 8_Bảo mật và an ninh mạng
Chương 8_Bảo mật và an ninh mạngChương 8_Bảo mật và an ninh mạng
Chương 8_Bảo mật và an ninh mạngHoa Le
 
Azure AD B2C Webinar Series: Custom Policies Part 3 Troubleshooting
Azure AD B2C Webinar Series: Custom Policies Part 3 TroubleshootingAzure AD B2C Webinar Series: Custom Policies Part 3 Troubleshooting
Azure AD B2C Webinar Series: Custom Policies Part 3 TroubleshootingVinu Gunasekaran
 
Aws Solution Architecture Associate - summary
Aws Solution Architecture Associate - summaryAws Solution Architecture Associate - summary
Aws Solution Architecture Associate - summaryonoffshake
 
Thực thi policy cho user trên fortigate
Thực thi policy cho user trên fortigateThực thi policy cho user trên fortigate
Thực thi policy cho user trên fortigatelaonap166
 
autenticacion apache con mysql
autenticacion apache con mysqlautenticacion apache con mysql
autenticacion apache con mysqlRoberto Almena
 
Auto Update(AUT) - HCL Notes
Auto Update(AUT) -  HCL NotesAuto Update(AUT) -  HCL Notes
Auto Update(AUT) - HCL NotesRanjit Rai
 
How to create a User Defined Policy with IBM APIc (v10)
How to create a User Defined Policy with IBM APIc (v10)How to create a User Defined Policy with IBM APIc (v10)
How to create a User Defined Policy with IBM APIc (v10)Shiu-Fun Poon
 
Lựa chọn thuộc tính và Khai phá luật kết hợp trên WEKA
Lựa chọn thuộc tính và Khai phá luật kết hợp trên WEKALựa chọn thuộc tính và Khai phá luật kết hợp trên WEKA
Lựa chọn thuộc tính và Khai phá luật kết hợp trên WEKAHo Quang Thanh
 
Ssl report
Ssl reportSsl report
Ssl reportDiodeZ
 
Introduction of own cloud
Introduction of own cloudIntroduction of own cloud
Introduction of own cloudZhichao Liang
 
TIM HIEU SSL VA UNG DUNG TREN WEB SERVER
TIM HIEU SSL VA UNG DUNG TREN WEB SERVERTIM HIEU SSL VA UNG DUNG TREN WEB SERVER
TIM HIEU SSL VA UNG DUNG TREN WEB SERVERconglongit90
 
DataPower API Gateway Performance Benchmarks
DataPower API Gateway Performance BenchmarksDataPower API Gateway Performance Benchmarks
DataPower API Gateway Performance BenchmarksIBM DataPower Gateway
 
Tìm Hiểu WLAn, Giao Thức Radius, Mikrotik Router
Tìm Hiểu WLAn, Giao Thức Radius, Mikrotik RouterTìm Hiểu WLAn, Giao Thức Radius, Mikrotik Router
Tìm Hiểu WLAn, Giao Thức Radius, Mikrotik RouterLe Trung Hieu
 
suricata giới thiệu, cách sử dụng, hoàn cảnh sử dụng
suricata giới thiệu, cách sử dụng, hoàn cảnh sử dụngsuricata giới thiệu, cách sử dụng, hoàn cảnh sử dụng
suricata giới thiệu, cách sử dụng, hoàn cảnh sử dụngNgcBoNguyn3
 
Orquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace NetflixOrquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace NetflixParadigma Digital
 
Cookies and sessions
Cookies and sessionsCookies and sessions
Cookies and sessionsSukrit Gupta
 
AWS Route53 Fundamentals
AWS Route53 FundamentalsAWS Route53 Fundamentals
AWS Route53 FundamentalsPiyush Agrawal
 

Mais procurados (20)

Cai Dat SSL tren WEB SERVER
Cai Dat SSL tren WEB SERVERCai Dat SSL tren WEB SERVER
Cai Dat SSL tren WEB SERVER
 
Tài liệu về VPN IPSEC - Trển khai VPN có IPsec trên Windows Server
Tài liệu về VPN IPSEC - Trển khai VPN có IPsec trên Windows ServerTài liệu về VPN IPSEC - Trển khai VPN có IPsec trên Windows Server
Tài liệu về VPN IPSEC - Trển khai VPN có IPsec trên Windows Server
 
Chương 8_Bảo mật và an ninh mạng
Chương 8_Bảo mật và an ninh mạngChương 8_Bảo mật và an ninh mạng
Chương 8_Bảo mật và an ninh mạng
 
Azure AD B2C Webinar Series: Custom Policies Part 3 Troubleshooting
Azure AD B2C Webinar Series: Custom Policies Part 3 TroubleshootingAzure AD B2C Webinar Series: Custom Policies Part 3 Troubleshooting
Azure AD B2C Webinar Series: Custom Policies Part 3 Troubleshooting
 
Aws Solution Architecture Associate - summary
Aws Solution Architecture Associate - summaryAws Solution Architecture Associate - summary
Aws Solution Architecture Associate - summary
 
Thực thi policy cho user trên fortigate
Thực thi policy cho user trên fortigateThực thi policy cho user trên fortigate
Thực thi policy cho user trên fortigate
 
autenticacion apache con mysql
autenticacion apache con mysqlautenticacion apache con mysql
autenticacion apache con mysql
 
Auto Update(AUT) - HCL Notes
Auto Update(AUT) -  HCL NotesAuto Update(AUT) -  HCL Notes
Auto Update(AUT) - HCL Notes
 
How to create a User Defined Policy with IBM APIc (v10)
How to create a User Defined Policy with IBM APIc (v10)How to create a User Defined Policy with IBM APIc (v10)
How to create a User Defined Policy with IBM APIc (v10)
 
Lựa chọn thuộc tính và Khai phá luật kết hợp trên WEKA
Lựa chọn thuộc tính và Khai phá luật kết hợp trên WEKALựa chọn thuộc tính và Khai phá luật kết hợp trên WEKA
Lựa chọn thuộc tính và Khai phá luật kết hợp trên WEKA
 
Ssl report
Ssl reportSsl report
Ssl report
 
Introduction of own cloud
Introduction of own cloudIntroduction of own cloud
Introduction of own cloud
 
TIM HIEU SSL VA UNG DUNG TREN WEB SERVER
TIM HIEU SSL VA UNG DUNG TREN WEB SERVERTIM HIEU SSL VA UNG DUNG TREN WEB SERVER
TIM HIEU SSL VA UNG DUNG TREN WEB SERVER
 
DataPower API Gateway Performance Benchmarks
DataPower API Gateway Performance BenchmarksDataPower API Gateway Performance Benchmarks
DataPower API Gateway Performance Benchmarks
 
Tìm Hiểu WLAn, Giao Thức Radius, Mikrotik Router
Tìm Hiểu WLAn, Giao Thức Radius, Mikrotik RouterTìm Hiểu WLAn, Giao Thức Radius, Mikrotik Router
Tìm Hiểu WLAn, Giao Thức Radius, Mikrotik Router
 
suricata giới thiệu, cách sử dụng, hoàn cảnh sử dụng
suricata giới thiệu, cách sử dụng, hoàn cảnh sử dụngsuricata giới thiệu, cách sử dụng, hoàn cảnh sử dụng
suricata giới thiệu, cách sử dụng, hoàn cảnh sử dụng
 
Mô Hình MVC 3.0
Mô Hình MVC 3.0Mô Hình MVC 3.0
Mô Hình MVC 3.0
 
Orquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace NetflixOrquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace Netflix
 
Cookies and sessions
Cookies and sessionsCookies and sessions
Cookies and sessions
 
AWS Route53 Fundamentals
AWS Route53 FundamentalsAWS Route53 Fundamentals
AWS Route53 Fundamentals
 

Semelhante a Gestión de usuarios en GNU/Linux. Módulos de autenticación PAM

Curso Avanzado Seguridad Acceso
Curso Avanzado Seguridad AccesoCurso Avanzado Seguridad Acceso
Curso Avanzado Seguridad AccesoAntonio Durán
 
Gestión de usuarios y autenticación en GNU/Linux
Gestión de usuarios y autenticación en GNU/LinuxGestión de usuarios y autenticación en GNU/Linux
Gestión de usuarios y autenticación en GNU/Linuxseguridadelinux
 
Fortificación de MS SharePon
Fortificación de MS SharePonFortificación de MS SharePon
Fortificación de MS SharePonChema Alonso
 
MAQUINAS VIRTUALES Y PROTOCOLO DE AUTENTICACION.pptx
MAQUINAS VIRTUALES Y PROTOCOLO DE AUTENTICACION.pptxMAQUINAS VIRTUALES Y PROTOCOLO DE AUTENTICACION.pptx
MAQUINAS VIRTUALES Y PROTOCOLO DE AUTENTICACION.pptxalexanderramirez620370
 
Seguridad y proteccion
Seguridad y proteccionSeguridad y proteccion
Seguridad y proteccionvagusska
 
Diferenciar las-funciones-del-sistema-operativo
Diferenciar las-funciones-del-sistema-operativoDiferenciar las-funciones-del-sistema-operativo
Diferenciar las-funciones-del-sistema-operativoValdivia0312
 
Los 7 pecados del Desarrollo Web
Los 7 pecados del Desarrollo WebLos 7 pecados del Desarrollo Web
Los 7 pecados del Desarrollo Webacksec
 
Auditoria de la seguridad logica
Auditoria de la seguridad logicaAuditoria de la seguridad logica
Auditoria de la seguridad logica1416nb
 
Cuaderno electronico
Cuaderno electronicoCuaderno electronico
Cuaderno electronicoEder Abundis
 
Cuaderno electronico
Cuaderno electronicoCuaderno electronico
Cuaderno electronicoEder Abundis
 
Diferenciar las funciones del sistema operativo...
Diferenciar las funciones del sistema operativo...Diferenciar las funciones del sistema operativo...
Diferenciar las funciones del sistema operativo...Frezon0312
 
Iv arquitectura del computador. ppt. (fase ii)
Iv arquitectura del computador. ppt. (fase ii)Iv arquitectura del computador. ppt. (fase ii)
Iv arquitectura del computador. ppt. (fase ii)diomarmedina2
 

Semelhante a Gestión de usuarios en GNU/Linux. Módulos de autenticación PAM (20)

Curso Avanzado Seguridad Acceso
Curso Avanzado Seguridad AccesoCurso Avanzado Seguridad Acceso
Curso Avanzado Seguridad Acceso
 
Gestión de usuarios y autenticación en GNU/Linux
Gestión de usuarios y autenticación en GNU/LinuxGestión de usuarios y autenticación en GNU/Linux
Gestión de usuarios y autenticación en GNU/Linux
 
Curso Redes Linex 3
Curso Redes Linex 3Curso Redes Linex 3
Curso Redes Linex 3
 
Curso Redes Linex 3
Curso Redes Linex 3Curso Redes Linex 3
Curso Redes Linex 3
 
Fortificación de MS SharePon
Fortificación de MS SharePonFortificación de MS SharePon
Fortificación de MS SharePon
 
MAQUINAS VIRTUALES Y PROTOCOLO DE AUTENTICACION.pptx
MAQUINAS VIRTUALES Y PROTOCOLO DE AUTENTICACION.pptxMAQUINAS VIRTUALES Y PROTOCOLO DE AUTENTICACION.pptx
MAQUINAS VIRTUALES Y PROTOCOLO DE AUTENTICACION.pptx
 
SimpleSAMLphp
SimpleSAMLphpSimpleSAMLphp
SimpleSAMLphp
 
Seguridad y proteccion
Seguridad y proteccionSeguridad y proteccion
Seguridad y proteccion
 
Portada
PortadaPortada
Portada
 
Diferenciar las-funciones-del-sistema-operativo
Diferenciar las-funciones-del-sistema-operativoDiferenciar las-funciones-del-sistema-operativo
Diferenciar las-funciones-del-sistema-operativo
 
Los 7 pecados del Desarrollo Web
Los 7 pecados del Desarrollo WebLos 7 pecados del Desarrollo Web
Los 7 pecados del Desarrollo Web
 
Estructura so
Estructura soEstructura so
Estructura so
 
Auditoria de la seguridad logica
Auditoria de la seguridad logicaAuditoria de la seguridad logica
Auditoria de la seguridad logica
 
Sistemas Distribuidos
Sistemas DistribuidosSistemas Distribuidos
Sistemas Distribuidos
 
Cuaderno electronico
Cuaderno electronicoCuaderno electronico
Cuaderno electronico
 
Auditing SharePoint 2010
Auditing SharePoint 2010Auditing SharePoint 2010
Auditing SharePoint 2010
 
Cuaderno electronico
Cuaderno electronicoCuaderno electronico
Cuaderno electronico
 
Diferenciar las funciones del sistema operativo...
Diferenciar las funciones del sistema operativo...Diferenciar las funciones del sistema operativo...
Diferenciar las funciones del sistema operativo...
 
Iv arquitectura del computador. ppt. (fase ii)
Iv arquitectura del computador. ppt. (fase ii)Iv arquitectura del computador. ppt. (fase ii)
Iv arquitectura del computador. ppt. (fase ii)
 
S.o
S.oS.o
S.o
 

Mais de seguridadelinux

Amenazas en redes GNU/Linux. Herramientas de seguridad para redes.
Amenazas en redes GNU/Linux. Herramientas de seguridad para redes.Amenazas en redes GNU/Linux. Herramientas de seguridad para redes.
Amenazas en redes GNU/Linux. Herramientas de seguridad para redes.seguridadelinux
 
Autenticación remota y servicios de directorio LDAP
Autenticación remota y servicios de directorio LDAPAutenticación remota y servicios de directorio LDAP
Autenticación remota y servicios de directorio LDAPseguridadelinux
 
Protección perimetral. Fundamentos de firewalls y redes privadas virtuales
Protección perimetral. Fundamentos de firewalls y redes privadas virtualesProtección perimetral. Fundamentos de firewalls y redes privadas virtuales
Protección perimetral. Fundamentos de firewalls y redes privadas virtualesseguridadelinux
 
Tests de intrusión. Análisis de seguridad en GNU/Linux
Tests de intrusión. Análisis de seguridad en GNU/LinuxTests de intrusión. Análisis de seguridad en GNU/Linux
Tests de intrusión. Análisis de seguridad en GNU/Linuxseguridadelinux
 
Herramientas criptográficas en GNU/Linux
Herramientas criptográficas en GNU/LinuxHerramientas criptográficas en GNU/Linux
Herramientas criptográficas en GNU/Linuxseguridadelinux
 
Autenticación remota y servicios de directorio. LDAP y Kerberos
Autenticación remota y servicios de directorio. LDAP y KerberosAutenticación remota y servicios de directorio. LDAP y Kerberos
Autenticación remota y servicios de directorio. LDAP y Kerberosseguridadelinux
 
Ferramentas criptográficas en GNU/linux. gnuPG e sistemas de arquivos cifrados
Ferramentas criptográficas en GNU/linux. gnuPG e sistemas de arquivos cifradosFerramentas criptográficas en GNU/linux. gnuPG e sistemas de arquivos cifrados
Ferramentas criptográficas en GNU/linux. gnuPG e sistemas de arquivos cifradosseguridadelinux
 
Introduccion a GNU/Linux. Uso de QEMU
Introduccion a GNU/Linux. Uso de QEMUIntroduccion a GNU/Linux. Uso de QEMU
Introduccion a GNU/Linux. Uso de QEMUseguridadelinux
 
Sistemas de detección de intrusiones. SNORT
Sistemas de detección de intrusiones. SNORTSistemas de detección de intrusiones. SNORT
Sistemas de detección de intrusiones. SNORTseguridadelinux
 
Herramientas de seguridad en redes. WIRESHARK. NMAP
Herramientas de seguridad en redes. WIRESHARK. NMAPHerramientas de seguridad en redes. WIRESHARK. NMAP
Herramientas de seguridad en redes. WIRESHARK. NMAPseguridadelinux
 
Fundamentos de administración de sistemas GNU/Linux
Fundamentos de administración de sistemas GNU/LinuxFundamentos de administración de sistemas GNU/Linux
Fundamentos de administración de sistemas GNU/Linuxseguridadelinux
 
Herramientas de detección de vulnerabilidades-NESSUS
Herramientas de detección de vulnerabilidades-NESSUSHerramientas de detección de vulnerabilidades-NESSUS
Herramientas de detección de vulnerabilidades-NESSUSseguridadelinux
 
Seguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_securitySeguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_securityseguridadelinux
 
Fundamentos de firewalls. Netfilter/iptables
Fundamentos de firewalls. Netfilter/iptablesFundamentos de firewalls. Netfilter/iptables
Fundamentos de firewalls. Netfilter/iptablesseguridadelinux
 
Topologías avanzadas de firewalls
Topologías avanzadas de firewallsTopologías avanzadas de firewalls
Topologías avanzadas de firewallsseguridadelinux
 

Mais de seguridadelinux (15)

Amenazas en redes GNU/Linux. Herramientas de seguridad para redes.
Amenazas en redes GNU/Linux. Herramientas de seguridad para redes.Amenazas en redes GNU/Linux. Herramientas de seguridad para redes.
Amenazas en redes GNU/Linux. Herramientas de seguridad para redes.
 
Autenticación remota y servicios de directorio LDAP
Autenticación remota y servicios de directorio LDAPAutenticación remota y servicios de directorio LDAP
Autenticación remota y servicios de directorio LDAP
 
Protección perimetral. Fundamentos de firewalls y redes privadas virtuales
Protección perimetral. Fundamentos de firewalls y redes privadas virtualesProtección perimetral. Fundamentos de firewalls y redes privadas virtuales
Protección perimetral. Fundamentos de firewalls y redes privadas virtuales
 
Tests de intrusión. Análisis de seguridad en GNU/Linux
Tests de intrusión. Análisis de seguridad en GNU/LinuxTests de intrusión. Análisis de seguridad en GNU/Linux
Tests de intrusión. Análisis de seguridad en GNU/Linux
 
Herramientas criptográficas en GNU/Linux
Herramientas criptográficas en GNU/LinuxHerramientas criptográficas en GNU/Linux
Herramientas criptográficas en GNU/Linux
 
Autenticación remota y servicios de directorio. LDAP y Kerberos
Autenticación remota y servicios de directorio. LDAP y KerberosAutenticación remota y servicios de directorio. LDAP y Kerberos
Autenticación remota y servicios de directorio. LDAP y Kerberos
 
Ferramentas criptográficas en GNU/linux. gnuPG e sistemas de arquivos cifrados
Ferramentas criptográficas en GNU/linux. gnuPG e sistemas de arquivos cifradosFerramentas criptográficas en GNU/linux. gnuPG e sistemas de arquivos cifrados
Ferramentas criptográficas en GNU/linux. gnuPG e sistemas de arquivos cifrados
 
Introduccion a GNU/Linux. Uso de QEMU
Introduccion a GNU/Linux. Uso de QEMUIntroduccion a GNU/Linux. Uso de QEMU
Introduccion a GNU/Linux. Uso de QEMU
 
Sistemas de detección de intrusiones. SNORT
Sistemas de detección de intrusiones. SNORTSistemas de detección de intrusiones. SNORT
Sistemas de detección de intrusiones. SNORT
 
Herramientas de seguridad en redes. WIRESHARK. NMAP
Herramientas de seguridad en redes. WIRESHARK. NMAPHerramientas de seguridad en redes. WIRESHARK. NMAP
Herramientas de seguridad en redes. WIRESHARK. NMAP
 
Fundamentos de administración de sistemas GNU/Linux
Fundamentos de administración de sistemas GNU/LinuxFundamentos de administración de sistemas GNU/Linux
Fundamentos de administración de sistemas GNU/Linux
 
Herramientas de detección de vulnerabilidades-NESSUS
Herramientas de detección de vulnerabilidades-NESSUSHerramientas de detección de vulnerabilidades-NESSUS
Herramientas de detección de vulnerabilidades-NESSUS
 
Seguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_securitySeguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_security
 
Fundamentos de firewalls. Netfilter/iptables
Fundamentos de firewalls. Netfilter/iptablesFundamentos de firewalls. Netfilter/iptables
Fundamentos de firewalls. Netfilter/iptables
 
Topologías avanzadas de firewalls
Topologías avanzadas de firewallsTopologías avanzadas de firewalls
Topologías avanzadas de firewalls
 

Último

Código Civil de la República Bolivariana de Venezuela
Código Civil de la República Bolivariana de VenezuelaCódigo Civil de la República Bolivariana de Venezuela
Código Civil de la República Bolivariana de Venezuelabeltranponce75
 
UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...
UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...
UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...rosalindatellodelagu
 
Educacion Basada en Evidencias SM5 Ccesa007.pdf
Educacion Basada en Evidencias  SM5  Ccesa007.pdfEducacion Basada en Evidencias  SM5  Ccesa007.pdf
Educacion Basada en Evidencias SM5 Ccesa007.pdfDemetrio Ccesa Rayme
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONamelia poma
 
LA JUNGLA DE COLORES.pptx Cuento de animales
LA JUNGLA DE COLORES.pptx  Cuento de animalesLA JUNGLA DE COLORES.pptx  Cuento de animales
LA JUNGLA DE COLORES.pptx Cuento de animalesanllamas
 
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...Ars Erótica
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdfDemetrio Ccesa Rayme
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024IES Vicent Andres Estelles
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOluismii249
 
Actividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxActividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxpaogar2178
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIAFabiolaGarcia751855
 

Último (20)

Código Civil de la República Bolivariana de Venezuela
Código Civil de la República Bolivariana de VenezuelaCódigo Civil de la República Bolivariana de Venezuela
Código Civil de la República Bolivariana de Venezuela
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...
UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...
UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...
 
Educacion Basada en Evidencias SM5 Ccesa007.pdf
Educacion Basada en Evidencias  SM5  Ccesa007.pdfEducacion Basada en Evidencias  SM5  Ccesa007.pdf
Educacion Basada en Evidencias SM5 Ccesa007.pdf
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
LA JUNGLA DE COLORES.pptx Cuento de animales
LA JUNGLA DE COLORES.pptx  Cuento de animalesLA JUNGLA DE COLORES.pptx  Cuento de animales
LA JUNGLA DE COLORES.pptx Cuento de animales
 
Los dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la VerdadLos dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la Verdad
 
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
 
Novena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan EudesNovena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan Eudes
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdf
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
PP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomasPP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomas
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
Actividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxActividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docx
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 

Gestión de usuarios en GNU/Linux. Módulos de autenticación PAM

  • 1. Francisco José Ribadas Pena ribadas@uvigo.es Departamento de Informática Gestión de usuarios y autenticación en Universidade de Vigo GNU/Linux. Módulos de autenticación PAM Ferramentas de seguridade en GNU/Linux Curso de Extensión Universitaria 21 de xuño de 2010
  • 2. Indice Autenticación Autenticación de usuarios en GNU/Linux Pluggable Authentication Modules (PAM) Funcionamiento de PAM Configuración de PAM Módulos PAM Ejemplos de uso 2
  • 3. Autenticación Definición: Mecanismo/proceso que permita identificar a las entidades (elementos activos del sistema [usuarios]) que intentan acceder a los objetos (elementos pasivos [ficheros, equipos, datos]. Objetivo: Autenticar = asegurar que una entidad[usuario] es quien dice ser Mecanismos generales de autenticación: en base a algo que sabe el usuario Ej.: claves, passwords y similares en base a algo que posee el usuario Ej.: DNIe, tarjetas acceso, tarjetas inteligentes, ... en base a alguna característica física del usuario Ej.: medidas biométricas (huellas, iris, voz, etc) 3
  • 4. Autenticación de usuarios en GNU/Linux (I) Esquema clásico Cada usuario se identifica por un UID (user id) al que se asocia un nombre (login) y una clave secreta (password) Asociaciones almacenadas en el fichero /etc/passwd Una línea por usuario con campos separados por “:” login:pass word:uid:gid:nombre:home:shell Claves almacenadas están cifradas con CRYPT A partir de: 8 bytes password claro + salt aletorio Varios cifrados DES en cascada [cifrado en único sentido] /etc/passwd almacena salt en claro + resultado CRYPT Proceso autenticación (login) Password introducido + salt se procesa con CRYPT Resultado obtenido es comparado con almacenado si coinciden -> acceso permitido Fichero /etc/passwd debe ser accesible en lectura para todas las aplicaciones que lo usen en la autenticación 4
  • 5. Autenticación de usuarios en GNU/Linux (II) Problemas esquema clásico Info. de usuarios en /etc/passwd (incluidos passwords cifrados) debe ser accesibles a todo el mundo => son posibles ataques de diccionario (fuerza bruta) Solución: shadow password Almacena la versión cifrada del password en el archivo /etc/shadow que sólo puede leer el administrador (root) Añade info. adicional: envejecimiento, caducidad, etc Passwords con CRYPT limitados a 8 caracteres Solución: usar hash MD5 Hash criptográfica, genera “resúmenes únicos” de 128 bits para tamaños de entrada variables (ilimitado en teoría). Problema: estos cambios requerirían “modificar” y recompilar las aplicaciones que hacían uso del esquema de autenticación clásico. 5
  • 6. Pluggable Authentication Modules (I) Propuesto por SUN en 1995 (RFC 86.9) Proporciona un interfaz modular entre las aplicaciones de usuario y los métodos de autenticación conjunto de librerías de carga dinámica independiza aplicaciones del método de autenticación sin necesidad de recompilar permite integrar aplicaciones Unix clásicas con nuevos esquemas de autenticación (biometría, tarjetas inteligentes,...) Objetivos de diseño Dar mayor libertad al administrador para elegir el mecanismo de autenticación Configuración de la autenticación a nivel de aplicación Múltiples mecanismos de autentic. para cada aplicación Premisa: las aplicaciones/servicios no deben cambiar cuando se cambia el mecanismo de autenticación 6
  • 7. Pluggable Authentication Modules (II) Idea base: Separar las acciones típicas de autenticación Delegarlas en el susbsistema PAM (libpam) Descomponer tareas de autenticación en “5 pasos” pam_autenticate() pam_acct_mgmt() pam_secrted() pam_open_ses sion() pam_close_sess ion() pam_chauthtok() Componentes software (librerías) intercambiables se encargan de implementar esas tareas Controlado por ficheros de configuración 7
  • 8. Pluggable Authentication Modules (III) Beneficios del uso de PAM: Políticas de configuración flexibles Autenticación para cada aplicación/servicio Posibilidad de definir un mecanismo de autenticación por defecto Posibilidad de requerir múltiples autorizaciones Facilidad de uso para el usuario final Evitar repetición de passwords en diferentes servicios Solicitar múltiples passwords sin lanzar múltiples comandos Posibilidad de parametrizar (pasar argumentos) a los componentes des sistema de autenticación Posibilidad de implementar políticas específicas de una máquina/sistema sin tener que cambiar los servicios 8
  • 9. Funcionamiento de PAM (I) Idea de funcionamiento El API PAM descompone las tareas de autenticación en cuatro grupos independientes autenticación/obtención de credenciales gestión/verificación de cuentas de usuario gestión de sesiones actualización info. de autenticación (passwords) Para cada servicio/aplicación que haga uso de PAM se deberá configurar el modo en que funcionará cada etapa del proceso de autenticación especificando el módulo encargado de gestionarlo El servicio/aplicación concreta es ajeno a esos “pasos intermedios” simplemente recibe una respuesta final afirmativa o positiva (autoriza/desautoriza al usuario) 9
  • 10. Funcionamiento de PAM (II) Arquitectura de PAM Componentes: aplicaciones + módulos autenticación 10
  • 11. Funcionamiento de PAM (III) Tipos de módulos de autenticación (auth): autentican al usuario mediante un determinado método (solicitud de clave, tarjeta aceso, control biométrico,...) y le asignan una serie de credenciales/privilegios invocados cuando la aplicación llama a la función pam_authenticate() ó pam_secretd() de verificación de cuentas (account): realizan comprobaciones relativas al servicio concreto una vez establecido que el usuario es quien dice ser ... ¿usuario tiene permiso para usar el servicio? ¿ha expirado su clave? ¿el servicio está permitido? invocados cuando la aplicación llama a la función pam_acct_mgmt() 11
  • 12. Funcionamiento de PAM (III) Tipos de módulos de gestión de sesiones (session): determinan las acciones que se ejecutarán antes y/o después del acceso del usuario invocados cuando la aplicación llama a la función pam_open_session() ó pam_close_session() de actualización (password): empleandos para actualizar la información que usa el mecanismo de autenticación invocados cuando la aplicación llama a la función pam_chauthtok() 12
  • 13. Funcionamiento de PAM (IV) Configuración Controlada por fichero/s: para cada servicio/aplicación se especifican los módulos encargados de cada tarea Esquema original: fichero / pam.conf etc/ Fichero único: asocia servicios con módulos Sintaxis: (1 o más líneas por servicio) servicio tipo control módulo argumentos Esquema actual: directorio / pam.d/ etc/ * Un fichero para cada servicio Sintaxis: tipo control módulo argumentos 13
  • 14. Configuración PAM (I) Idea básica: pila de módulos lista de acciones a realizar antes de que usuario llegue a acceder al servicio/aplicación el orden es muy importante Elementos de los ficheros / pam.d etc/ tipo: especifica el tipo de módulo (auth, account, password, session) control: especifica la acción que se toma en base al resultado (éxito/fracaso) del módulo correspondiente modulo: path del módulo path absoluto (empieza por /) path relativo (módulos contenidos en /lib/security) argumentos: parámetros concretos que se pasarán al módulo (específicos de cada módulo) 14
  • 15. Configuración PAM (II) Acciones (campo “control”) Sintaxis simplificada (4 acciones posibles) requisite: debe verificarse si falla, se envía fallo inmediatamente a la aplicación no se ejecuta resto de módulos del mismo tipo en la lista required: debe verificarse si falla, se enviará fallo una vez completada la pila se ejecutan el resto de módulos sufficient: debe verificarse si se verifica, se enviará correcto inmediatamente, salvo que exista un fallo previo (required fallido) la ejecución correcta del módulo satisface los requisitos de autenticación si falla, se ignora el fallo optional: puede verificarse o no su resultado sólo es tenido en consideración si es el único módulo en la lista 15
  • 16. Configuración PAM (II) Acciones (campo “control”) Sintaxis extendida (mayor control) Cada “acción” es un conjunto de pares valor+acción [valor=accion, valor=accion, ..., valor=accion] acciones a realizar en función del valor devuelto por el módulo llamado Valores de retorno: success open_err symbol_err service_err system_err buf_err perm_denied auth_err cred_insufficient authinfo_unavail user_unknown maxtries new_authtok_reqd acct_expired session_err cred_unavail cred_expired cred_err no_module_data conv_err authtok_err authtok_recover_err authtok_lock_busy authtok_disable_aging try_again ignore abort authtok_expired module_unknown bad_item default 16
  • 17. Configuración PAM (III) Aciones: nº entero K: ignorar siguientes K módulos del mismo tipo ignore: valor de retorno se omite ok: si es correcto, devolver correcto después de ejecutar el resto de módulos de ese tipo done: si es correcto, devolver correcto inmediatamente bad: si es fallo, devolver fallo después de ejecutar el resto de módulos de ese tipo die: si es fallo, devolver fallo inmediatamente reset: desecha el estado actual y comienza de nuevo en el siguiente módulo Equivalencias Simple Extendida requisite [success=ok, new_authtok_reqd=ok, ignore=ignore, default=die] required [success=ok, new_authtok_reqd=ok, ignore=ignore, default=bad] sufficient [success=done, new_authtok_reqd=done, default=ignore] optional [success=ok, new_authtok_reqd=ok, default=ignore] 17
  • 18. Módulos PAM (I) Módulo pam_unix.s o Tipo: auth, account, password, session Implementa el mecanismo de autenticación por passwords clásico de UNIX Consulta /etc/password + /etc/shadow Argumentos propios: auth: debug, audit, user_first_pass, try_first_pass, nullok, nodelay, noreap account: debug, audit, password: debug, audit, nullook, not_set_pass, use_authtok, try_fisrt_pass, use_first_pass, md5, bigcrypt, shadow, nis, remember=n 18
  • 19. Módulos PAM (II) Módulo pam_cracklib.s o Tipo: password Comprueba la fortaleza de las nuevas contraseñas introducidas. Usa diccionario para evitar contraseñas débiles /etc/lib/cracklib_dict Argumentos propios: password: debug, type=XXX, retry=n, difok=n, minlen=n, dcredit=n, ucredit=n, lcredit=n, ocredit=n, use_authtok Módulo similar: pam-passwdqc.so 19
  • 20. Módulos PAM (III) Módulo pam_env.s o Tipo: auth Permite asignar valores a variables de entorno Módulo pam_group.s o Tipo: auth Establece el grupo del usuario que accede al sistema Módulo pam_lastlog.s o Tipo: session Anota en el fichero /var/log/lastlog el acceso del usuario y le informa de su último acceso (siempre se satisface) 20
  • 21. Módulos PAM (IV) Módulo pam_limits .s o Tipo: session Permite establecer límites a los recursos del sistema disponibles para un usuario Configurado en /etc/security/limits.conf Módulo pam_mkhomedir.s o Tipo: session Crea el directorio home del usuario si no existía Argumentos propios: skel: directorio home base a copiar (/etc/skel) umask: máscara de permisos Módulo pam_acces s .s o Tipo: account Comprueba si el usuario puede acceder desde una posición remota (/etc/security/access) 21
  • 22. Módulos PAM (IV) Módulo pam_chroot.s o Tipo: auth, account, session Convierte el directorio del usuario en el directorio raíz (/) [entorno chroot] Útil para limitar las acciones de los usuarios (no “ven” los directorios del sistema) Módulo pam_nologin.s o Tipo: auth, account Si existe el fichero /etc/nologin sólo permite acceso al administrador (root) Módulo pam_rootok.s o Tipo: auth Permite acceso al administrador (root) sin tener que introducir su contraseña (comando su) 22
  • 23. Módulos PAM (V) Módulo pam_wheel.s o Tipo: auth, account Solo permite acceso como administrador (root) a los miembros de un grupo concreto Módulo pam_deny.s o Tipo: auth, account, session, password Devuelve siempre fallo. Util para organizar pila de módulos (acción por defecto) Módulo pam_permit.s o Tipo: auth, account, session, password Devuelve siempre correcto Util para organizar pila de módulos (acción por defecto) 23
  • 24. Módulos PAM (VI) Módulo pam_mys ql.s o Tipo: auth, account, session, password Soporta la autenticación contra los datos almacenados en una BD mysql Configuración en /etc/pam_mysql.conf Módulo pam_ldap.s o Tipo: auth, account, session, password Soporta la autenticación contra los datos almacenados en un directorio LDAP Configuración en /etc/pam_ldap.conf 24
  • 25. Ejemplos de uso (I) Nota: Estructura / pam.d en Debian/Ubuntu etc/ Se definen pilas por defecto para auth, account, password, session que son incluidas en los ficheros PAM de cada uno de los servicios. common-account, common-auth,common-password, common- session Ejemplo: / pam.d/ etc/ common-auth # /etc/pam.d/common-auth - authentication settings common to all services # # This file is included from other service-specific PAM config files, # and should contain a list of the authentication modules that define # the central authentication scheme for use on the system # (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use the # traditional Unix authentication mechanisms. # auth required pam_unix.so nullok_secure 25
  • 26. Ejemplos de uso (II) Ejemplo: / pam.d/ etc/ login # The PAM configuration file for the Shadow `login' service auth requisite pam_securetty.so auth requisite pam_nologin.so session required pam_env.so readenv=1 session required pam_env.so readenv=1 envfile=/etc/default/locale # Standard Un*x authentication. @include common-auth auth optional pam_group.so session required pam_limits.so session optional pam_motd.so session optional pam_mail.so standard # Standard Un*x account and session @include common-account @include common-session @include common-password 26
  • 27. Ejemplos de uso (III) Ejemplo: / pam.d/ sh etc/ s # PAM configuration for the Secure Shell service auth required pam_env.so # [1] auth required pam_env.so envfile=/etc/default/locale # Standard Un*x authentication. @include common-auth account required pam_nologin.so # Standard Un*x authorization. @include common-account # Standard Un*x session setup and teardown. @include common-session session optional pam_motd.so # [1] session optional pam_mail.so standard noenv # [1] session required pam_limits.so # Standard Un*x password updating. @include common-password 27
  • 28. NSS: Name Service Switch Servicio complemento a PAM Unifica la gestión de la traducción/mapeo entre IDs numéricos (uid, gid, dir. ip) y nombres (login, grupo, nombre dominio) Unifica/reemplaza parte de la información gestionada por los ficheros de configuración típicos de Unix (/etc/passwd, /etc/group, /etc/hosts, ...) Configuración: /etc/nsswitch.conf passwd: files db ldap group: files db ldap shadow: file db ldap hosts: files dns networks: files protocols: db files services: db files ethers: db files 28 netgroup: nis
  • 29. Enlaces y referencias SEGURIDAD EN UNIX Y REDES Versión 2.1. http://www.rediris.es/cert/doc/unixsec/ Linux PAM http://www.kernel.org/pub/linux/libs/pam/ The Linux-PAM System Administrators' Guide http://www.kernel.org/pub/linux/libs/pam/Linux-PAM- html/Linux-PAM_SAG.html (Lista de módulos+parametros en Sección 6) Sun PAM http://www.sun.com/software/solaris/pam/ 29