Synchroniser l’heure sur les clients Windows via Samba | Babash

par francois · Publication 30 janvier 2013 · Mis à jour 1 février 2013

Comment faire pour synchroniser les clients Windows ?
Plusieurs solutions existent :

  • Le plus simple est de paramétrer vos clients via NTP lors de leur installation. Sauf que, dans mon cas, les postes sont déjà tous installés, et je n’ai pas envie de passer sur tous les postes un à un…
  • Si vous ne voulez pas passer sur chacun des postes, vous pouvez réaliser un script et le déployer via OCS inventory s’il est déjà présent. C’est mon cas, mais je trouve que OCS inventory n’est pas très fiable…
  • De plus, si le NTP n’est pas autorisé ou que cela ne vous plait pas, l’autre solution est, d’utiliser votre serveur openLDAP/Samba pour cela… C’est difficile, mais à l’avantage d’être infaillible !

Comme je vous le disais, synchroniser les clients Windows via votre serveur openldap/samba est compliqué. Je vais vous expliquer…

Il faut donc synchroniser l’heure à l’ouverture de session. Pour cela, nous allons utiliser le netlogon de samba, et y créer un fichier bat. Dans ce dernier, nous allons y mettre la commande qui permet la synchronisation :

[geshi lang= »dos » nums= »0″ target= »_self » ]

net time \\serveur /set /yes

[geshi lang= »dos »  nums= »0″  target= »_self » ]

net time \\serveur /set /yes

[/geshi]

Seulement, le fichier bat du netlogon est exécuté en tant que l’utilisateur connecté. Or, pour que cette commande fonctionne, il faut avoir autorisé, via gpedit.msc, que les utilisateurs classiques puissent modifier l’heure. Par défaut, seuls les administrateurs le peuvent.

Résultat : la fenêtre DOS vous gratifie d’un beau : « vous ne disposez pas des privilèges nécessaires…. »
Nous retombons au point de départ : je dois configurer les postes dès le départ avec l’autorisation ou alors passer sur tous les postes….

Lire plus :   Remplacer sa box – Tvheadend : la télévision sur le réseau - Babash

Comment faire pour lancer cette commande avec les privilèges qui vont bien ?

Je vais vous expliquer ici les différentes solutions testées et qui n’ont pas fonctionnées…
Si vous voulez la réponse directement, passez à la page 2 de l’article.

Tests des différentes solutions

Modifier la configuration de Samba

Impossible de lancer le netlogon en tant qu’administrateur. Samba ne le permet pas.

Je dois donc trouver autre chose…

Par mes recherches, j’ai testé :

rktools ( Windows Resource Kits )

Ce kit proposé par Microsoft permet de modifier les privilèges via la commande :

[geshi lang= »dos » nums= »0″ target= »_self » ]

c:\"Program Files\Windows Resource Kits\Tools\ntrights.exe" +r SeSystemTimePrivilege -u "Domain Users"[/geshi]

[geshi lang= »dos »  nums= »0″  target= »_self » ]

c:\"Program Files\Windows Resource Kits\Tools\ntrights.exe" +r SeSystemTimePrivilege -u "Domain Users"[/geshi]

Cela fonctionne, vous obtenez les privilèges. Cependant, rktools doit être installé sur la machine. Il faut donc :

  • convertir le fichier en fichier msi,
  • lancer l’installation silenciseuse si le répertoire n’existe pas sur le poste,
  • et enfin lancer la commande net time.

Sous Windows XP, cela fonctionne, par contre, sous Windows 7, rktools ne veut pas s’installer de manière silencieuse.

J’ai donc du faire autrement : Copier le répertoire d’installation par défaut de votre Windows XP dans le dossier netlogon du serveur, et en bat, tester si le poste avait le répertoire « Windows Resource Kits »:

  • Si non : le copier, lancer la commande des privilèges,
  • Si oui : lancer juste la commande net time.

Pour finir, à l’arrivée, cela n’a pas marché… Une erreur d’exécution… Donc cela fonctionne que sous XP et pas 7.

PsExec

J’ai donc essayé avec la commande PsExec de Sysinternal :

 

\\serveur\netlogon\PSTools\PsExec.exe -u admin -p password NET TIME \\serveur /SET /YES

Lire plus :   Transmission à travers un VPN | Babash
\\serveur\netlogon\PSTools\PsExec.exe -u admin -p password NET TIME \\serveur /SET /YES

Cela fonctionne sur XP et 7, mais le mot de passe en clair de l’administrateur du domaine m’a, comment dire, un peu rebuté 🙂

J’ai donc testé Runas Spc, et là, révélation !

Étiquettes : administrateurclient windowsdateheurenetlogonNTPopenldapprivilègespsexecrktoolsrunasspcsambasynchronisationsysinternaltempswindows resource kits

A lire également