Ouverture de session automatique sous XP

Pour des tas de raisons, au premier rang desquelles, la paresse, il peut-être utile d’avoir un PC qui ouvre une session automatiquement et qui arrive sur le bureau.
Deux cas de figure peuvent alors se présenter.

1- La machine n’est pas dans de domaine.

Solution n°1 : la plus simple

Démarrer => Exécuter => control userpasswords2
Dans la fenêtre qui s’affiche, décocher « Les utilisateurs doivent entrer un nom d’utilisateur et un mot de passe pour utiliser cet ordinateur » et cliquer sur OK
Une fenêtre demande alors de fournir l’identifiant et le mot de passe du compte qui seront utilisés pour ouvrir la session.

Solution n°2 : utilisation d’un utilitaire

Il existe un utilitaire de Microsoft Autologon, développé par Sysinternals avant son rachat par Microsoft. Il ouvre une fenêtre et demande les identifiants du compte.
Ce programme est disponible ici :
Autologon

Solution n°3 : modification du registre

La clé à modifier est la suivante :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon
et les valeurs sont le suivantes
AutoAdminLogon (valeur chaîne) doit être à 1
DefaultUserName (valeur chaîne) doit contenir de nom d’utilisateur choisi
DefaultPassword (valeur chaîne) doit contenir le mot de passe de l’utilisateur

A noter que par la valeur DefaultPassword n’existe pas et qu’il faut la créer.

2- La machine est dans le domaine

Quand la machine est dans le domaine, la méthode numéro1 ne fonctionne plus. En effet la case « Les utilisateurs doivent entrer un nom d’utilisateur et un mot de passe pour utiliser cet ordinateur » n’est pas disponible.

Reste donc l’utilisation de autologon ou la modification du registre. Personnellement je préfère utiliser autologon, d’abord à cause ma paresse légendaire évoquée plus haut, et aussi parce que autologon crypte le mot de passe dans le registre. Je n’ai pas trouvé où :-) mais il n’apparaît pas en clair.
Pour ceux qui ne seraient pas convaincus par mes arguments, je leur demande de quitter ce blog immédiatement et de ne jamais y revenir, et je leur indique aussi qu’il y a une valeur à ajouter :

DefaultDomainName (valeur chaîne) doit contenir le nom du domaine.


3- Remarque pour les administrateurs amenés à ghoster des machines qui seront intégrées dans un domaine

Pour les ghosts j’ai besoin que la session s’ouvre automatiquement en administrateur local tant que la machine n’est pas dans le domaine, afin le lancer le script qui change son nom, redeammre la machine et l’intègre au domaine. En revanche une fois que la machine est intégrée au domaine elle doit demander une authentification.

La première chose à de faire est de ne pas mettre de mot de passe au compte administrateur.
Ensuite :
Démarrer => Exécuter => control userpasswords2
Dans la fenêtre cocher : Les utilisateurs doivent entrer un nom d’utilisateur et un mot de passe pour utiliser cette ordinateur
Dans options avancées : décocher Les utilisateurs doivent appuyer sur Ctrl + Alt + Suppr

Démarrer => Exécuter => control userpasswords
cliquer sur Modifier la manière dont les utilisateur ouvrent et ferment une session :
cocher Utiliser l’écran d’accueil
cocher Utiliser la bascule rapide utilisateur

EDIT : Selon les mises à jour et les programmes installés sur la machine il peut-être nécessaire de désactiver les compte asp.net

Bien entendu toutes ces manips nécessitent d’être administrateur de la machine.

Publié dans Windows | Laisser un commentaire

Installer automatiquement une imprimante partagée et la définir par défaut

Le but du jeu est d’installer une imprimante et de la définir par défaut. Voici un script en wsh qui fait l’affaire, le script doit donc avoir l’extension .vbs

Pour rappel les utilisateurs n’ont pas besoin d’être administrateur de la machine pour avoir le droit d’installer une imprimante. Le script peut donc être mis sur le bureau, voir même lancé à l’ouverture de session d’un groupe de machines par une GPO, dans ce cas penser à virer la dernière ligne.

Dim net
Set net = CreateObject(« WScript.Network »)
net.AddWindowsPrinterConnection « \\nom_serveur\nom_partage_imprimante »
Dim WshNetwork
Set WshNetwork = CreateObject(« WScript.Network »)
WshNetwork.SetDefaultPrinter « \\nom_serveur\nom_partage_imprimante »
WScript.Echo  » L’imprimante a été installée. »

Publié dans Scripting | Laisser un commentaire

Benchmarks de CPU

Au premier abord on peut se demander l’intérêt d’un site de benchs de CPU, à part pour faire un concours de celui qui pisse le plus loin, enfin qui calcule le plus vite.
Ca prend tout son sens quand on doit passer un marché publique et qu’il est interdit de préciser : je veux un Intel de tel modèle ou un AMD de tel modèle. Il est seulement autorisé de préciser : je veux un CPU ayant au moins obtenu tant de points à tel bench.

Ca peut également permettre d’y voir un peu plus clair dans la nébuleuse marketting qu’est aujourd’hui la dénomination des processeurs.

http://www.cpubenchmark.net/

Publié dans Matériel | Laisser un commentaire

Bureau à distance…un peu de sessions en rab

Le bureau à distance de Windows 2003

Jusqu’à Windows2000, 2 sessions terminal server étaient intégrées à la licence Windows 2000 server. Pour ouvrir plus de 2 sessions à distances il fallait faire l’acquisition de licences supplémentaires. Depuis 2003, les 2 sessions Terminal Server ont été remplacées par 2 sessions bureau à distance, ce qui n’a en rien changé le problème des 2 sessions sumultanées.

En effet il arrive que les 2 sessions soient utilisées par des collègues ou bien que les 2 sessions soient déjà ouvertes sur 2 autres machines. Dans ce cas le serveur envoie un message indiquant que les 2 sessions sont utilisées et il est impossible de se connecter. Pour y parvenir il suffit d’entrer /console après le nom du serveur dans le client terminal server. A noter cependant que dans ce cas la session sur la machine est vérouillée.

Le bureau à distance de XP

Le bureau à distance sous XP n’est disponible que dans la version pro et il est limité à une seule session. Cela signifie que quand on se connecte à distance via le bureau, la session est vérouillée. Il était cependant possible d’ouvrir plusieurs sessions simultanées dans une bêta du SP2, il était donc tentant de récupérer les dll correspondantes et de les intégrer à XP. C’est ce qui est fait dans ce patch, que j’ai originellement récupéré sur le site http://sala.pri.ee/terminal-server-patch/

Pour que cela fonctionne, la machine ne doit pas être intégrée dans un domaine. A noter également que sur l’une des machines sur lesquelles j’ai fait le test cela a considérablement augmenté le temps de l’ouverture de session. Le problème n’était pas présent sur les autres machines.

Cette fonctionnalité est très intéressante, elle permet notamment dans un réseau local de recycler de vieux PC en client terminal server. Certe l’affichage ne permettra pas de regarder un DVD ou de jouer à un jeu en 3D, en revanche il devient tout à fait possible de faire tourner Office2007 sur un Pentium2. Accessoirement ça peut-être très pratique pour un méchant pirate.

Publié dans Windows | Laisser un commentaire

SQL et OCS Inventory

OCS Inventory (logiciel d’inventaire) fournit une interface pour effectuer des requêtes mais toutes ne sont pas réalisables depuis cette interface. Une collègue m’a demandé la listes des machines de la classe IP 10.127.0.0 /16 sur lesquelles est installé Firefox en version 2. Pour cela il est necessaire de passer par phpMyAdmin et de faire sur la table ocsweb la requête suivante :

SELECT hardware.name, hardware.userid, networks.ipaddress, softwares.name, softwares.version
FROM softwares, networks, hardware
WHERE softwares.name LIKE ‘%firefox%’
AND softwares.version LIKE ‘2.%’
AND networks.ipaddress LIKE ‘10.127%’
AND networks.HARDWARE_ID = softwares.HARDWARE_ID
AND networks.HARDWARE_ID = HARDWARE.ID
ORDER BY hardware.name ASC

Peut-être que ça pourra éclairer quelqu’un qui cherche à faire une requête du même genre et pour qui ses cours de SQL sont bien loin. En dépit de sa simplicité, je dois avouer que ça m’a pris du temps pour y parvenir…

Publié dans Scripting | Laisser un commentaire