Estendere il controllo delle utenze alla rete MS-Windows

Attraverso Samba, NLNX può offrire, da elaboratori con sistema MS-Windows, la gestione delle cartelle personali. Oltre a questo, è possibile attivare la gestione delle utenze, in modo tale che anche dagli elaboratori MS-Windows sia richiesto di accedere specificando il nominativo utente e la parola d'ordine, come per gli altri elaboratori con NLNX. Per coordinare questa funzione occorre modificare manualmente la configurazione di Samba e provvedere alla creazione di alcuni utenti speciali.

Situazione di esempio

Per comprendere il meccanismo è necessario partire da un esempio, nel quale si ipotizza di disporre di una rete locale, unica sul piano fisico e anche sul piano logico, nel senso che gli indirizzi IPv4 devono essere tali da non richiedere il passaggio attraverso dei router.

Figura u65.1. Situazione di esempio, in cui si evidenziano tre persone con ruoli di amministrazione.

esempio di tre laboratori

Nella figura si vede Mario Rossi che è il responsabile e l'amministratore del servente NLNX, oltre che di altri elaboratori clienti (sempre NLNX). Mario Rossi ha l'utenza amministrativa root, oltre a una seconda utenza amministrativa, denominata rossi, meno importante. Antonio Bianchi amministra il gruppo di lavoro INF2 e ha un'utenza amministrativa, presso il servente NLNX, denominata bianchi; Giuseppe Verdi amministra il gruppo di lavoro INF3 e ha un'utenza amministrativa, presso il servente NLNX, denominata verdi (queste utenze amministrative sono state create con il comando nlnxrc admin add). Questi tre utenti, presso il servente NLNX, hanno anche delle utenze «normali», al pari di tutti gli altri utenti della rete.

La configurazione di Samba che si propone in questo contesto, contenuta nel file /etc/smb.conf presso il servente NLNX, è quella nel listato successivo, dove sono evidenziate le voci salienti:

[global]
    server string = NLNX server
    workgroup = NLNX
    netbios name = nlnx00
    local master = yes
    domain master = yes
    preferred master = yes
    os level = 64
    domain logons = yes
    logon path = \\%L\profiles\%u
    wins support = yes
    time server = yes
    security = user
    hostname lookups = no
    hosts allow = 127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 \
  \192.168.0.0/16 dns proxy = no log file = /var/log/samba/log.%m max log size = 1000 log level = 3 encrypt passwords = yes smb passwd file = /etc/samba/smbpasswd passdb backend = smbpasswd:/etc/samba/smbpasswd socket options = TCP_NODELAY hide files = /Desktop/Mail/mail/dosemu/ unix password sync = yes passwd program = /usr/bin/passwd %u pam password change = yes [homes] comment = home directories browseable = no writable = yes create mask = 0755 directory mask = 0755 [netlogon] path = /home/.samba/netlogon writeable = no browseable = no guest ok = yes [profiles] path = /home/.samba/profiles browseable = no writeable = yes create mask = 0600 directory mask = 0700

È necessario fare attenzione ai permessi della directory /home/.samba/profiles/, con MS-Windows 7, può essere necessario dare i permessi di scrittura anche agli utenti diversi dal proprietario e dal gruppo:

chmod o+rw /home/.samba/profiles[Invio]

Eventualmente, ma ciò è da verificare, sarebbe opportuno attribuire anche il bit Sticky (Save text image), in modo da consentire la cancellazione solo al proprietario dei file contenuti:

chmod o+trw /home/.samba/profiles[Invio]

Profili personali

In base alla configurazione proposta, si determina che i profili personali, definiti dalla direttiva logon path, vengono collocati nel percorso \\servente_smb\profiles\utente.(1) In pratica, in questo modo si rimanda alla sezione profiles, in cui si fa riferimento alla directory /home/.samba/profiles/. Pertanto, l'utente tizio, si troverebbe ad avere i propri profili nella directory /home/.samba/profiles/tizio/.

Per garantire che tutto funzioni correttamente, il comando nlnxrc user add provvede a creare tale directory vuota, assegnandone la proprietà all'utente relativo. Nello stesso modo, la cancellazione di un utente con il comando nlnxrc user del, provvede anche a cancellare tale directory.

Script di avvio

Nella configurazione proposta per Samba, appare la sezione netlogon, con la quale si dichiara una directory, dove, eventualmente, si può collocare lo script da eseguire al collegamento di un utente. In tal caso, nella sezione global va aggiunta la direttiva logon script:

[global]
    ...
    logon script = logon.bat
    ...

Secondo questo esempio, si tratta di predisporre il file logon.bat e collocarlo nella directory /home/.samba/netlogon/. Deve trattarsi di un file di testo, con i codici di interruzione di riga adatti al Dos. Eventualmente si può usare un programma come unix2dos.

Utenze per gli elaboratori MS-Windows

Gli elaboratori MS-Windows vanno aggiunti agli utenti Unix e Samba, utilizzando il nome predisposto per il protocollo NetBIOS. Nella figura dell'esempio si ipotizza di avere usato nomi del tipo PC01, PC02, PC03,... Lì, in particolare, viene evidenziato l'elaboratore PC07.

Queste utenze particolari vanno aggiunte utilizzando soltanto lettere minuscole (pertanto, PC07 diventa pc07), facendo in modo che nei file /etc/passwd e /etc/samba/smbpasswd appaiano conclusi con un dollaro (pertanto il nome PC07 viene archiviato, in realtà, come pc07$). Questo lavoro viene svolto dallo script nlnxrc, in modo da evitare errori:

nlnxrc machine add[Invio]

.--Add a new Win machine-----.
| Please insert the new Win  |
| machine name:              |
| .------------------------. |
| |                        | |
| `------------------------' |
|----------------------------|
|   <  OK   >   <Cancel>     |
`----------------------------'

pc07<OK>

.Full Win machine description--.
| Please insert the machine    |
| full description.            |
| .--------------------------. |
| |                          | |
| `--------------------------' |
|------------------------------|
|   <  OK   >   <Cancel>       |
`------------------------------'

Laboratorio informatica 3<OK>

La creazione di queste utenze coincide con la creazione di altrettante directory vuote a partire dalla gerarchia /home/.samba/machines/. Tali directory non hanno alcuna utilità particolare, ma vengono prodotte ugualmente per esigenze che potrebbero manifestarsi in futuro.

Eventualmente, sempre con nlnxrc potrebbero essere eliminate tali utenze speciali:

nlnxrc machine del pc07[Invio]

Naturalmente, oltre a Mario Rossi, Antonio Bianchi e Giuseppe Verdi trovano la funzione di aggiunta di un elaboratore MS-Windows quando accedono al servente NLNX con la loro utenza speciale, tra le voci del menù prodotto dallo script ADMIN9.

Configurazione di MS-Windows XP Professional: disabilitazione della connessione cifrata

Perché MS-Windows XP possa essere associato a un dominio gestito da Samba, potrebbe essere necessario disabilitare alcune opzioni relative all'uso della crittografia nella comunicazione per tale funzione. In pratica, ciò riguarda soltanto le versioni più vecchie di Samba e meno aggiornate di MS-Windows XP Professional; a ogni modo, in caso di difficoltà, si deve procedere attraverso le voci successive, ma in qualità di utente Administrator, o equivalente:

Tutte le voci {Membro di dominio} vanno disattivate.

Figura u65.6. Pannello di controllo: selezione della voce {Strumenti di amministrazione}.

pannello di controllo

Figura u65.7. Strumenti di amministrazione: selezione della voce {Criteri di protezione locali}.

strumenti di amministrazione

Figura u65.8. Impostazioni protezione locale: selezione della voce {Criteri locali}.

impostazioni protezione locale

Figura u65.9. Opzioni di protezione: selezione della voce {Opzioni di protezione}.

opzioni di protezione

Figura u65.10. Impostazioni protezione locale: disattivazione delle voci {Membro di dominio}.

impostazioni protezione locale

Figura u65.11. Impostazioni protezione locale: risultato della disattivazione delle voci {Membro di dominio}.

impostazioni protezione locale

Configurazione di MS-Windows XP Professional: associazione al dominio

Inizialmente, MS-Windows XP si trova probabilmente a funzionare gestendo semplicemente i gruppi di lavoro. Per fare in modo di centralizzare le utenze occorre associarlo a un «dominio». Sulla base della configurazione proposta per Samba, il dominio in questione sarebbe denominato «NLNX», secondo la direttiva workgroup:

[global]
    ...
    workgroup = NLNX
    ...

Presso l'elaboratore MS-Windows XP, con il nome PC07, occorre procedere secondo i passi evidenziati dalle figure successive, ma occorre agire in qualità di utente Administrator, o equivalente:

Figura u65.13. Pannello di controllo: selezione della voce {Sistema}.

pannello di controllo

Figura u65.14. Proprietà del sistema: cambiamento del nome o dell'associazione a un dominio.

proprietà del sistema

Figura u65.15. Cambiamenti nome computer: selezione del dominio e conferma.

cambiamenti nome computer cambiamenti nome computer

Quando si vuole associare il dominio e confermare, viene richiesta l'indicazione di un'utenza «amministrativa», ovvero riconosciuta come tale presso il servente Samba. Ma attenzione: dal punto di vista di MS-Windows, queste utenze amministrative hanno il prefisso «win.»; pertanto, in base all'esempio, si tratta di win.rossi, win.bianchi e win.verdi.

Figura u65.16. Richiesta di identificazione per l'utente amministrativo con cui ottenere l'aggiunta del dominio.

richiesta di identificazione

Al termine viene richiesto di riavviare il sistema per poter rendere operative le modifiche. Al riavvio può essere scelto se utilizzare le utenze locali preesistenti o il dominio appena collegato.

Configurazione di MS-Windows 7: definizione di due voci nel registro di sistema

Perché MS-Windows 7 possa essere associato a un dominio gestito da Samba si devono creare due voci nel «registro di sistema», ovvero in ciò che si gestisce attraverso il programma regedit.

Le voci da aggiungere vanno collocate nel percorso HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanWorkstation\parameters\:

Computer
  |
  |-HKEY_CLASSES_ROOT
  |-HKEY_CURRENT_USER
  |-HKEY_LOCAL_MACHINE
  |  |
  |  `->SYSTEM
  |      |
  |      `->CurrentControlSet->services->LanmanWorkstation->parameters
  |
  |-HKEY_USERS
  `-HKEY_CURRENT_CONFIG

Figura u65.18. Per avviare il programma regedit occorre digitarne il nome nel campo di ricerca, completando alla fine con [Invio].

NLNX: Windows 7: avvio di regedit

Figura u65.19. Svolgimento del percorso HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanWorkstation\parameters\.

NLNX: Windows 7: configurazione con regedit

Le voci da aggiungere sono di tipo «DWORD» (nel senso di interi a 32 bit), denominate DomainCompatibilityMode e DNSNameResolutionRequired. Alla prima di queste due voci si associa il valore 1, mentre alla seconda si deve lasciare il valore zero.

Figura u65.20. Creazione di una voce.

NLNX: Windows 7: configurazione con regedit

Figura u65.21. Creazione di una voce e modifica del suo contenuto.

NLNX: Windows 7: configurazione con regedit

Figura u65.22. Dopo la creazione delle due voci.

NLNX: Windows 7: configurazione con regedit

Configurazione di MS-Windows 7: associazione al dominio

Inizialmente, MS-Windows 7 si trova probabilmente a funzionare gestendo semplicemente i gruppi di lavoro. Per fare in modo di centralizzare le utenze occorre associarlo a un «dominio». Sulla base della configurazione proposta per Samba, il dominio in questione sarebbe denominato «NLNX», secondo la direttiva workgroup:

[global]
    ...
    workgroup = NLNX
    ...

Tuttavia, negli esempi seguenti si fa riferimento al dominio INF e il nome dell'elaboratore risulta essere PC29L-VAIO. Per prima cosa occorre ricordare di aggiungere la macchina pc29l-vaio alla gestione di Samba, usando solo lettere minuscole. Attraverso nlnxrc si procede con il comando seguente:

nlnxrc machine add[Invio]

.--Add a new Win machine-----.
| Please insert the new Win  |
| machine name:              |
| .------------------------. |
| |                        | |
| `------------------------' |
|----------------------------|
|   <  OK   >   <Cancel>     |
`----------------------------'

pc29l-vaio<OK>

.Full Win machine description--.
| Please insert the machine    |
| full description.            |
| .--------------------------. |
| |                          | |
| `--------------------------' |
|------------------------------|
|   <  OK   >   <Cancel>       |
`------------------------------'

Laboratorio informatica 5<OK>

Quindi si può procedere con MS-Windows 7, selezionando la voce {Proprietà}, dal menù {Computer} (usando però il tasto destro del mouse).

Figura u65.26. Accesso alle proprietà.

NLNX: Windows 7: accesso alle proprietà

Figura u65.27. Selezione delle impostazioni avanzate.

NLNX: Windows 7: accesso alle proprietà avanzate

Figura u65.28. Nome dell'elaboratore.

NLNX: Windows 7: accesso al nome dell'elaboratore

Figura u65.29. Associazione al dominio INF attraverso l'operato dell'amministratore win.giacomini.

NLNX: Windows 7: associazione al dominio

L'utenza win.giacomini dell'esempio, fa parte di quelle di Samba e ha i privilegi amministrativi. Al termine, dopo la conferma, potrebbe apparire una segnalazione di errore, da ignorare.

Figura u65.30. Errore da ignorare al termine della procedura di associazione al dominio di Samba.

NLNX: Windows 7: associazione al dominio

Figura u65.31. Al termine è necessario riavviare per mettere in pratica le modifiche.

NLNX: Windows 7: associazione al dominio

Spegnimento del servente NLNX

Se l'elaboratore che svolge il ruolo di servente NLNX deve essere spento, è ragionevole attendersi che gli elaboratori MS-Windows, se usati durante tale inattività del servente NLNX, non siano in grado di accedere al dominio relativo. Tuttavia, per utilizzare gli elaboratori MS-Windows viene richiesto ugualmente il riconoscimento, almeno in qualità di utente locale.

Servente WINS

Nella configurazione di Samba, mostrata come esempio, appare la direttiva wins support = yes, con la quale si ottiene di fornire anche il servizio WINS per gli elaboratori MS-Windows. Tali elaboratori, per potersene avvalere, devono essere configurati al riguardo; tuttavia, va considerato che in tal modo, il servente NLNX non può più essere spento, almeno fino a quando ci sono elaboratori che hanno bisogno di quel servizio.

Riferimenti


1) La direttiva logon path riguarda MS-Windows NT/2000/XP.

«a2» 2013.11.11 --- Copyright © Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net