3 votos

Necesita ayuda para autentificar a los usuarios de Mac por LDAP

Me conecté al servidor LDAP con una cuenta especial y una contraseña de búsqueda usando la Utilidad de Directorio.

Cuando configuro el Servicio LDAPv3 en RFC2307 LDAP Mappings, con SSL marcado, puedo pasar al Editor de Directorios y autentificarme usando el nombre de usuario y la contraseña del directorio LDAP. Sin embargo, no puedo acceder al ordenador.

Yo hice esto:

  1. Marcó la casilla en Usuarios y Grupos - Permitir a los usuarios de la red iniciar sesión...
  2. Opciones
  3. Elegir sólo a estos usuarios de la red
  4. Hice clic en + y busqué mi nombre de usuario LDAP
  5. Seleccionó el nombre de usuario para que aparezca en la lista.

Cuando intento entrar, la caja sólo tiembla y estos mensajes de error de registro llegan al system.log.

Aug 31 10:35:58 MacBook-Pro SecurityAgent[1150]: User info context values set for 
userid
Aug 31 10:35:58 MacBook-Pro authorizationhost[1157]: Failed to authenticate
user <userid> (error: 13).

Algunas guías en la web indican que el error 13 es así:

Indicates that the session is not protected by a protocol such as
Transport Layer Security (TLS), which provides session 
confidentiality and the request will not be handled without
confidentiality enabled.

Pero elegí SSL y no encuentro una caja o método para cambiar esto a TLS en la Utilidad de Directorio de Mac. Cuando hago clic en Seguridad en la sección de configuración (donde pongo la información de "usar autenticación al conectarse") las opciones de Política de seguridad no están disponibles con el mensaje "Las capacidades y los requisitos del servidor determinan la disponibilidad de las opciones".

Por lo tanto, no puedo elegir entre firmar todos los paquetes o encriptar todos los paquetes...

Cuando elijo otros esquemas de conexión, como el Open Directory o el Personalizado, ni siquiera pude autenticarme en la ventana del Editor del Directorio. (Error 500, 2100)

La información de "autenticación al conectar" es la misma que utilizo para las aplicaciones web que proporcionan acceso por LDAP, por lo que seguramente funciona en el campo. Sólo que no aparentemente desde el Mac cuando se intenta acceder.

¿Tiene algún consejo para permitir a los usuarios autenticarse en este mac por LDAP para acceder a las carpetas compartidas?

0 votos

¿Se puede acceder a una carpeta compartida antes de vincularse a AD/LDAP? Si eso es todo lo que quieres, esa tuerca es mucho más fácil de romper que la vinculación. (si su objetivo principal es SSO para la autenticación de usuarios, tal vez eliminar la última pregunta y centrarse en la necesidad de obtener el inicio de sesión único para la cuenta de usuario configurado).

0 votos

Gracias por ayudarme. Puedo hacer recursos compartidos en el Mac y compartirlos con una cuenta local (sólo recursos compartidos) o una cuenta de invitado a otros usuarios. Sólo quiero dejar que el servidor de recursos compartidos autentique a los otros usuarios mediante LDAP para no tener que crear muchas cuentas reales en el Mac que compartirán los archivos. Sólo quiero añadir los usuarios de la red a la lista utilizando su uid LDAP

0 votos

De acuerdo. Este mac necesita enlazar para autenticar a otros usuarios en su recurso compartido. Mucho más claro.

3voto

ndasusers Puntos 104

Aquí hay algunos ajustes que están funcionando por ahora para proporcionar una cuenta de estilo de quiosco por defecto de inicio de sesión por autenticación ldap.

Servidor de archivos: MacBookPro Mac OS: El Capitán

Esto se basa en Conectando 10.5 al LDAP de Stanford

Con esta configuración, todos los usuarios de ldap se conectarán, pero tienen el mismo directorio principal y el mismo ID de usuario del sistema. Sólo es útil si un usuario ldap a la vez se conecta a la máquina.

Crear el contenido de la carpeta de inicio del usuario por defecto

Haga un usuario estándar desde Apple -> Preferencias del sistema -> Usuarios y grupos

User: ldaptemplate
Pass: randomAnyP@ssKe1

Entra como el ldaplate. (Personaliza el escritorio si quieres).

Cierre de sesión

Haz una carpeta con un identificador único como propietario, luego copia todo el interior de ldaptemplate a la nueva carpeta.

su -s 
mkdir /Users/ldap
rsync --quiet --recursive --links --perms --group --delete --extended-attributes /Users/ldaptemplate/ /Users/ldap
chown -R 900 /Users/ldap

Añade el restablecimiento del directorio principal script al gancho de inicio de sesión

mkdir /Library/Management
nano /Library/Management/ldapcleanup.bash

Pega en el script de abajo

#!/bin/bash
# /Library/Management/ldapcleanup.bash
# Copies the templates user home directory to the Kiosk user home dir
# When a Kiosk user logs in using LDAP authentication

templateDir="/Users/ldaptemplate/";
targetDir="/Users/ldap";
targetOwner=900;

# this script must be run as root, bail if it is not
if [ "$(whoami)" != "root" ]; then
echo "This script must be run as root!"
exit 0;
fi

# here we test to make sure both the directories we are using exist on this system
if [ ! -d $templateDir ] || [ ! -d $targetDir ]; then
echo "Either $templateDir or $targetDir did not exist!";
exit 0;
fi

# now we use rsync to make the target mirror the template
# note that we are not preserving owner
rsync --quiet --recursive --links --perms --group --delete --extended-attributes $templateDir $targetDir

# and then we make sure everything has the correct owner
chown -R $targetOwner $targetDir

exit 0;

Guarda el script y cierra el editor

control + x y return

Hacer que el script se ejecute cuando un usuario inicie sesión

 defaults write com.apple.loginwindow LoginHook /Library/Management/ldapcleanup.bash

Salir del modo de terminal de usuario root

exit

Añade tu ldap.server.tld a la lista de Servicios de Directorio

comando + espacio -> Utilidad de directorio -> entrar

Haga clic en bloquear y autentificar para hacer cambios

Elija LDAPv3 -> Editar -> Nuevo

    Server Name or IP Address: ldap2.server.tld
    √ Encrypt using SSL
    √ Use for authentication
    Continue

Selecciona Servidor -> Haz clic en Editar

Configure todas las partes de cada pestaña como se indica a continuación, para que coincidan con los requisitos de su servidor ldap y los campos de información proporcionados. Las cosas aquí, trabajaron en este trabajo en particular.

Pestaña de conexión:

Configuration name: ldap2.server.tld
Server Name or IP Address: ldap2.server.tld
default timeouts
√ Encrypt using SSL
Default port is 636 (your server may need custom)

Pestaña de Búsqueda y Mapeo

  • Esta parte hace o rompe el inicio de sesión. Al final sólo necesitaba un ajuste mínimo. Básicamente, las cosas en el lado izquierdo de las cajas pueden mapear a las propiedades LDAP en el lado derecho. Pueden ser información sobre la persona o cosas de la cuenta como la carpeta de inicio de la red y muchas otras cosas.

    Elige Personalizado, borra todo de la casilla izquierda y añade lo siguiente.

    > People         (Search base: ou=People,dc=server,dc=edu)
        RecordName   Map to uid
    > UserAuthenticationData (Search base: ou=People,dc=server,dc=edu)
        RecordName  Map to uid
    > Users      Search base: ou=People,dc=server,dc=edu) 
                 Map to inetOrgPerson
        AuthenticationAuthority  Map to uid
        EMailAddress             Map to mail
        FirstName                Map to givenName
        JobTitle                 Map to title
        LastName                 Map to sn
        NFSHomeDirectory         Map to #/Users/ldap
        OrganizationName         Map to serverEduStaffDepartment
                                 (or some existing ldap field)
        PostalAddress            Map to postalAddress
        PrimaryGroupID           Map to #900 
        RealName                 Map to cn (users ldap full name)
        RecordName               Map to aid (users ldap id)
        UniqueID                 Map to #900
                                (Default owner of that folder we made)
        UserShell                #/bin/bash

Ficha de seguridad:

  • Este servidor ldap requiere que la cuenta autorizada del grupo lo busque. Sin esta cuenta la pantalla de acceso en el Mac mostraba un punto rojo, incapaz de conectarse a la red. Esta información es configurada y proporcionada por el equipo de administración LDAP de esta organización.

    Access to Directory
      √ Use authentication when connecting 
      Distinguished Name: uid=someid,ou=SomeGroup,dc=server,dc=edu
      Password: somelongpasswordstringprovidedbyldapadmins
    
    Click OK, OK

Elija la política de búsqueda

Click + 
Add your new LDAP server to the list

Elija el Editor del Directorio e intente usar la búsqueda e inicio de sesión LDAP.

Select Users in node /LDAPv3/ldap.server.tld
    * Try searching for your id, If you can't find it something wrong
      with setup.
    * Click the lock to authenticate. If you can't something did not
      map right. Check that mac did not auto-correct 'uid'

Click lock to de-authenticate

Close Directory Utility

Permitir el acceso a la red desde Usuarios y Grupos

Esta parte sólo le dice a Mac que compruebe en el directorio ldap las cuentas de usuario.

Click Apple -> System preferences -> Users & Groups

    Automatic Login: Off
    Display login window as Name and password
    Show fast user switching menu as Full Name
    Click the lock to make changes and authenticate
    √ Allow network users to log in at login window
    Click Edit near Network Account Server: 
    Click + and choose the ldap server created previously

Después de estos cambios, el MacBook fue reiniciado y pude entrar como usuario autentificado de LDAP. Los mensajes de registro ahora se muestran:

Sep  1 13:40:24 MacBook-Pro SecurityAgent[652]: User info context 
                values set for auser
Sep  1 13:40:44 MacBook-Pro KeyAccess[62]: opened session B8860100,
                auser (en_US)

Después de haber hecho toda la configuración, la respuesta a la pregunta original, "¿Algún consejo para permitir a los usuarios autenticarse en este mac por LDAP para acceder a las carpetas compartidas?" es configurar todo como arriba, y luego compartir la carpeta con el usuario de la red.

Agregar los inicios de sesión de la red al recurso compartido

Click Apple -> System preferences -> Sharing
Choose File Sharing
Select the Shared Folder:
Click + in the Users box
Choose Network Users
Search for the ldap ID you want to add
Highlight the user
Click Select

Después de esto, cuando se lanzó el juguete de respaldo, los usuarios de la red se autenticaron y el script se ejecutó tan bien como cuando se autenticó contra la cuenta del usuario local.

0 votos

¿Por qué restar uno a la respuesta que sirvió para resolver el problema?

0 votos

Probablemente fue descalificado porque parece ser una respuesta a otra pregunta. La pregunta en sí no está clara (al menos para mí), por ejemplo, ni siquiera contiene algunos datos básicos como la versión del sistema operativo/servidor.app. La respuesta en sí tiene una calidad similar a la respuesta "Empuja tu coche con 5 personas" respondiendo a la pregunta "Cómo hacer que funcione el motor de arranque de mi coche".

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X