Haut de page

Configuration de MacOS X Server
Clients Windows XP et Windows Server 2003


Ces pages présentent des éléments de configurations de MacOS X Server 10.4 à base d'exemples concrets. Il n'y a quasiment rien dans cette page qu'on ne trouve ailleurs sur le Web, mais cela représente mon expérience pratique de configuration d'un de mes serveurs. Pour les clients Windows, je n'ai pas configuré de vrai PC, je suis passé un un outil de virtualisation sur un iMac intel, en l'occurence VMWare.

Généralités

Ici on s'attaque à l'utilisation d'un MacOS X Server comme serveur centrale de compte pour postes Windows. Le MacOS X Server, grâce à Samba, sert à la fois de serveur Active Directory pour l'identification et l'authentification des utilisateurs. Il sert aussi de serveur de fichiers smb pour héberger les données des utilisateurs.


Windows XP

Pour configurer le serveur MacOS X Server comme serveur de comptes de cleints XP, il faut qu'il soit contrôleur de domaine. Cela se configure via l'Application Admin serveur, sélectionner le serveur dans la liste des ordinateur et services, sélectionner Windows et l'onglet Réglage en bas à droite. Avec l'onglet Général choisissez Contrôleur de domaine principal (CDP), donner une description, un nom à l'ordinateur et un nom au domaine. Ici, j'ai choisi le domaine LIP6.

Il faut ensuite, sur le poste Windows accrocher le poste au domaine. Pour cela il faut que le poste Windows connaisse l'adresse IP du contrôleur de domaine ainsi que le nom du domaine. Sous Windows XP, cela ne se fait pas au même endroit. Il faut indiquer à Windows l'adresse d'un serveur WINS et le nom du domaine.

Mettre en place le serveur WINS et l'indiquer au poste client XP

Il faut donc mettre en place un serveur WINS. Pour activer un serveur WINS sur MacOS X Server, rester dans le panneau de configuration du contrôleur de domaine et cliquer sur l'onglet Avancé, sélectionner Activer le serveur WINS.Desktop

Pour que le client Windows connaisse ce serveur WINS, il y a deux possibilité :

Pour donner l'adresse IP fixe, suivre les indications suivantes : Ouvrir le panneau de configuration et choisir Connexions réseaux. Pour cela choisir Panneau de configuration du menu Démarrer.

Si vous êtes sur le Panneau de configuration par catégorie, choisir Connexion réseau et Internet puis Connexions réseau. Si vous êtes sur le Panneau de configuration classique, choisir directement Connexions réseau.
Ouvrir la Connexion au réseau local (ici on voit que je suis sous VMWare) Dans l'Etat de connexion au réseau local, cliquer sur le bouton Propriétés
Dans les Propriétés de Connexion au réseau local, onglet Général, sélectionner la ligne Protocole Internet (TCP/IP) puis cliquer sur le bouton Propriétés. Dans les Propriétés de Protocole Internet (TCP/IP), cliquer sur le bouton Avancé...
Dans les Paramètres TCP/IP avancés, cliquer sur l'onglet WINS puis sur le bouton Ajouter... saisir l'adresse IP du serveur WINS (ici le MacOS X Server). Cliquer ensuite sur tous les boutons Ajouter, OK, Appliquer, ....

Joindre le poste client au domaine

Pour cela choisir Panneau de configuration du menu Démarrer. Si vous êtes sur le Panneau de configuration par catégorie, choisir Performance et maintenance puis Système. Si vous êtes sur le Panneau de configuration classique, choisir directement Système.Desktop

Dans la fenêtre Propriétés système, cliquer sur l'onglet Nom de l'odinateur. Par défaut il appartient au Groupe de travail WORKGROUP. Cliquer sur le bouton Modifier... Cliquer sur le bouton Domaine et saisir le nom du domaine que vous avez mis au niveau du Contrôleur de domaine principal d'admin serveur. Ici LIP6. Cliquer sur OK.
Si vous avez un message Un contrôleur de domaine pour le domaine xxx n'a pas pu être contacté, vous devez vérifier le FireWall du serveur ou des routeurs car il ne résponds pas. Lorsque le serveur réponds, vous devez indiquer le nom et le mot de passe d'un compte permettant de joindre le domaine.

Compte autorisé à joindre le domaine Windows

Dans la version 10.4 du Gestionnaire de groupe de travail, il faut que l'utilisateur en question soit administrateur LDAP.

Dans les Autorisations, on peut restreindre l'accès au domaine de répertoire (domaine LDAP) :

en ne laissant que les droits sur les ordinateurs. On peut assi ne pas mettre de répertoire de départ :

et pas de shell

Cet utilisateur ne va qu'ajouter dans la partie les noms de machines Windows :

Vous pouvez aussi tout simplement interdire complètement sa connexion juste après avoir activé le poste XP dans le domaine car le compte ne sera plus utilisé sauf si vous voulez déconnecter la machine du domaine.

Ouverture de session

Au démarrage, après un éventuel ctrl-alt-del, on peut se connecter au compte réseau dans le domaine créé.

Lorsque l'on est connecté, les données du compte utilisateur (unix) se trouvent montées sur le volume X:.

Sur le serveur le Profil de l'utilisateur est stocké par défaut dans /Users/Profiles/login. Lors de la première utilisation, ce dossier contient les éléments suivants :

Application Data
Bureau
Cookies
Favoris
Menu De??marrer
Mes documents
Mode??les
NTUSER.DAT
Recent
SendTo
Voisinage d'impression
Voisinage re??seau
ntuser.dat.LOG
ntuser.ini

Il va falloir maintenant faire le lien entre les fichiers Windows et les fichiers MacOS :

Déconnecter un client XP du domaine

Pour déconnecter un client XP du domaine, il faut le rattacher à un Groupe de travail (WORKGROUP par exemple). Le client va alors demander le nom de l'utilisateur permettant d'activer le poste dans le domaine.

Lorsque l'on déconnecte un ordinateur du domaine Windows, son entrée reste dans la liste des Ordinateurs Windows.


Windows Server 2003

Nous voulons mettre en place un serveur Windows Server 2003 pour servir de serveur Connexion bureau à distance de Microsoft (Permettre aux utilisateur de Mac d'accéder à des applications Windows).

Nous voulons y connecter un serveur Windows Server 2003. Nous bloquons immédiatement sur l'authentification car le Windows Server 2003 service Pack 1 ne peut se connecter sur un MacOS X Server 10.4.2.

/SourceCache/samba/samba-92.9/samba/source/rpc_server/srv_pipe.c:api_pipe_bind_req(993) api_pipe_bind_req: unknown auth type 1 requested.

Le serveur samba 3 n'est compatible avec qu'à partir de la version 3.0.14a. or MacOS X Server 10.4.2 intègre la version 3.0.10 de samba.

Passage en MacOS X Server v10.4

/SourceCache/samba/samba-92.13/samba/source/rpc_server/srv_pipe.c:api_pipe_bind_req(993)
api_pipe_bind_req: unknown auth type 1 requested.
/SourceCache/samba/samba-92.13/samba/source/rpc_server/srv_samr_nt.c:_samr_lookup_domain(2531)
Returning domain sid for domain LIP6 -> S-1-5-21-1619549713-1628146821-3396767598
/SourceCache/samba/samba-92.13/samba/source/rpc_server/srv_samr_nt.c:access_check_samr_object(93)
_samr_open_domain: ACCESS DENIED (requested: 0x00000211)
/SourceCache/samba/samba-92.13/samba/source/rpc_server/srv_samr_nt.c:_samr_lookup_domain(2531)
Returning domain sid for domain LIP6 -> S-1-5-21-1619549713-1628146821-3396767598
/SourceCache/samba/samba-92.13/samba/source/rpc_server/srv_samr_nt.c:access_check_samr_function(154)
_samr_create_user: ACCESS DENIED (granted: 0x00000201; required: 0x00000010)
/SourceCache/samba/samba-92.13/samba/source/smbd/server.c:exit_server(595)
Closing connections

Lors de la jonction d'une machine au domaine LIP6, nous avions ces erreurs. Le problème provenait du fait que l'utilisateur choisi pour se joindre au domaine n'était pas administrateur LDAP du serveur. En le mettant adminstrateur LDAP (on doit pouvoir limiter ses droits), il peut joindre la machine au domaine. Ensuite n'importe qui peut se connecter.

En fait, se connecter au domaine va rajouter les machines (nom_de_machine$) dans la base LDAP comme ordinateur Windows (cn=computers,cn=machine$ avec un promaryGroupID, .... On les retrouve dans le Workgroup Manager.


Annexes

smb.conf

Une bonne chose, il est possible de modifier le fichier smb.conf car l'application Server Admin laisse les modifications.

Voici le fichier smb.conf par défaut :

[global]
encrypt passwords = yes
workgroup = LIP6
display charset = UTF-8-MAC
security = user
deadtime = 5
guest account = unknown
add machine script = /usr/bin/opendirectorypdbconfig -c create_computer_account -r %u -n "/LDAPv3/127.0.0.1"
add user script = /usr/bin/opendirectorypdbconfig -c create_user_account -r %u -n "/LDAPv3/127.0.0.1"
client ntlmv2 auth = no
preferred master = yes
defer sharing violations = no
allow trusted domains = no
netbios name = directory
lanman auth = YES
vfs objects = darwin_acls
wins support = no
brlm = yes
max smbd processes = 0
server string = Mac OS X
logon drive = H:
os level = 20
domain logons = yes
passdb backend = opendirectorysam guest
dos charset = CP850
unix charset = UTF-8-MAC
auth methods = guest opendirectory
local master = yes
domain master = yes
map to guest = Bad User
use spnego = yes
printer admin = @admin, @staff
logon path = \\%N\profiles\%u
ntlm auth = YES
log level = 0
[src]
oplocks = 0
map archive = no
vfs objects = darwin_acls
path = /Volumes/D8c/IP/src
read only = no
strict locking = 1
inherit permissions = 0
comment = macosx
create mask = 0644
guest ok = 1
directory mask = 0755
[Public]
vfs objects = darwin_acls
map archive = no
path = /Shared Items/Public
read only = no
inherit permissions = no
comment = macosx
create mask = 0644
guest ok = 1
directory mask = 0755
[homes]
browseable = no
root preexec = /usr/sbin/inituser %U
create mode = 0750
read only = no
comment = User Home Directories
[profiles]
path = /Users/Profiles
oplocks = yes
strict locking = no
read only = no
browseable = no
[printers]
printable = yes
path = /tmp
[Groups]
vfs objects = darwin_acls
map archive = no
path = /Groups
read only = no
inherit permissions = no
comment = macosx
create mask = 0644
guest ok = 1
directory mask = 0755
[Users]
vfs objects = darwin_acls
map archive = no
path = /Users
read only = no
inherit permissions = no
comment = macosx
create mask = 0644
guest ok = 1
directory mask = 0755
[IP]
oplocks = 0
map archive = no
vfs objects = darwin_acls
path = /Volumes/D8c/IP
read only = no
strict locking = 1
inherit permissions = 0
comment = macosx
create mask = 0644
guest ok = 1
directory mask = 0755
[netlogon]
path = /etc/netlogon
oplocks = yes
strict locking = no
write list = @admin
browseable = no


Problèmes à résoudre :

sudo nvram boot-args="cpus=1"

La version beta 2 semble résoudre le problème (aout 2007).

Voir aussi

2005-2007



FutureShare

 | 

Glossaire

 |