Ecco alcune impostazioni che stanno funzionando per ora per fornire un account Style Kiosk predefinito per l'accesso tramite l'autenticazione LDAP.
Fileserver: MacBookPro
Mac OS: El Capitan
Questo è basato su Collegamento 10.5 a LDAP di Stanford
Con questa configurazione, tutti gli utenti LDAP effettueranno l'accesso, ma avranno la stessa directory home e l'id utente di sistema. È utile solo se un utente ldap alla volta effettuerà l'accesso alla macchina.
Crea il contenuto predefinito della cartella home dell'utente
Crea un utente standard da Apple - > Preferenze di sistema - > Utenti e amp; Gruppi
User: ldaptemplate
Pass: randomAnyP@ssKe1
Accedi come ldaptemplate. (Personalizza il desktop se preferisci.)
Esci
Crea una cartella con un ID univoco come proprietario, quindi copia tutto all'interno di ldaptemplate nella nuova cartella.
su -s
mkdir /Users/ldap
rsync --quiet --recursive --links --perms --group --delete --extended-attributes /Users/ldaptemplate/ /Users/ldap
chown -R 900 /Users/ldap
Aggiungi lo script di reimpostazione della directory home al gancio di accesso
mkdir /Library/Management
nano /Library/Management/ldapcleanup.bash
Incolla nello script di seguito
#!/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;
Salva lo script e chiudi l'editor
control + x y return
Esegui lo script quando un utente effettua l'accesso
defaults write com.apple.loginwindow LoginHook /Library/Management/ldapcleanup.bash
Esci dalla modalità terminale utente root
exit
Aggiungi il tuo ldap.server.tld alla lista in Directory Services
comando + spazio - > Utilità di directory - > immettere
Fai clic su Blocca e autenticati per apportare modifiche
Scegli LDAPv3 - > Modifica - > Nuovo
Server Name or IP Address: ldap2.server.tld
√ Encrypt using SSL
√ Use for authentication
Continue
Seleziona server - > Fai clic su Modifica
Imposta tutte le parti di ciascuna scheda come di seguito, in modo che corrispondano ai requisiti del server LDAP e ai campi di informazione forniti. Stuff qui, ha lavorato a questo particolare lavoro.
Scheda Connessione:
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)
Cerca e amp; Scheda Mapping
-
Questa parte rende o interrompe il login. Avevo bisogno solo di un'impostazione minima alla fine. Fondamentalmente le cose sul lato sinistro delle caselle possono essere mappate alle proprietà LDAP sul lato destro. Potrebbero essere informazioni sulla persona o sugli elementi dell'account come la cartella home della rete e molte altre cose.
Scegli Personalizza, cancella tutto dalla casella di sinistra, quindi aggiungi la seguente.
> 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
Scheda Sicurezza:
-
Questo server LDAP richiede all'account autorizzato del gruppo di cercarlo. Senza questo account, la schermata di accesso sul Mac mostrava un punto rosso, incapace di connettersi alla rete. Queste informazioni sono configurate e fornite dal team di amministrazione LDAP in questa organizzazione.
Access to Directory
√ Use authentication when connecting
Distinguished Name: uid=someid,ou=SomeGroup,dc=server,dc=edu
Password: somelongpasswordstringprovidedbyldapadmins
Click OK, OK
Scegli criterio di ricerca
Click +
Add your new LDAP server to the list
Scegli l'Editor di directory e prova a utilizzare la ricerca e il login 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
Consenti l'accesso alla rete da parte degli utenti e amp; Gruppi
Questa parte sta dicendo a mac di controllare la directory ldap per gli account utente.
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
Dopo queste modifiche, il MacBook è stato riavviato e potevo accedere come utenti autenticati LDAP. I messaggi di registro ora mostrano:
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)
Dopo aver completato tutte le impostazioni, la risposta alla domanda originale, "Hai qualche consiglio per consentire agli utenti di autenticarsi su questo mac da LDAP per accedere alle cartelle condivise?" è quello di configurare tutto come sopra, quindi condividere la cartella con l'utente della rete.
Aggiungi gli accessi di rete alla risorsa condivisa
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
Dopo questo, quando il giocattolo di backup è stato lanciato, gli utenti della rete si sono autenticati e lo script ha funzionato bene come quando è stato autenticato contro l'account utente locale.