Citation :
1.4.2 Le script Vplogon.bat et son problème
Nous avons modifié celui qui se trouve dans le dossier partagé \\172.17.0.7\VPLOGON
Citation :
@SET LANG=ENU
@SET FILE_SERVER=172.17.0.7
@ECHO OFF
REM *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
REM
REM VPLOGIN.BAT
REM Description: Client login script file for Windows NT Servers running REM Symantec AntiVirus Corporate Edition
REM REM *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=
REM *=*= OS Specific *=*=
if "%OS%" == "Windows_NT" goto WINNT_NBPSHPOP
REM *=*= Win9x *=*=
if not exist %0\..\NBPSHPOP.exe goto End
if "%FILE_SERVER%" == "" goto End
%0\..\NBPSHPOP +T: \\%FILE_SERVER%\vplogon
if exist T:\VP_LOG32.exe copy T:\VP_LOG32.exe %Temp%
if exist %Temp%\VP_Log32.exe %Temp%\VP_Log32 /p=T: if exist %0\..\NBPSHPOP.exe %0\..\NBPSHPOP -T:
goto END
REM *=*= WinNT and beyond *=*=
:WINNT_NBPSHPOP
if exist c:\WINDOWS\system32 copy \\%FILE_SERVER%\vplogon\NBPSHPOP.exe c:\WINDOWS\system32
if exist c:\WINNT\system32 copy \\%FILE_SERVER\vplogon\NBPSHPOP.exe c:\WINNT\system32
NBPSHPOP +X: \\%FILE_SERVER%\vplogon
X:\VP_Log32 /p=X: NBPSHPOP -X:
GOTO END
REM =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=
:END
|
Un problème se pose, il faut absolument être administrateur pour pouvoir copier le fichier NBPSHPOP.EXE dans le dossier system32 du client sous peine de ne pas pouvoir installer le client automatiquement. Il faut donc lancer le script avec la commande runas.
Un autre problème se pose, la commande runas ne permet pas de spécifier automatiquement le mot de passe administrateur, il faut le donner à chaque lancement du script ce qui savère totalement absurde. On va alors développer un script VBS.
1.4.3 Développement dun script VBS
Le script final est le suivant :
Citation :
'Debut du script
'RUNAS.VBS
'21 Mars 2006
'LPSIL
'USAGE: cscript|wscript RUNAS.VBS ' *********************************************************************************
On Error Resume Next
dim WshShell,FSO,sUser,sPass,sCmd
sUser="Administrateur@domaine" 'on definit le login
sPass="******"&VBCRLF 'on definit le mot de passe ainsi quun saut de ligne
sCmd=\\172.17.0.7\vplogon\vplogon.bat 'on definit le chemin à executer
set WshShell = CreateObject("WScript.Shell" )
set WshEnv = WshShell.Environment("Process" )
set FSO = CreateObject("Scripting.FileSystemObject" )
rc=WshShell.Run("runas /user:" & sUser & " " & CHR(34) & sCmd & CHR(34), 2, FALSE) 'on execute notre commande
Wscript.Sleep 30 ' on attend un peu
WshShell.SendKeys sPass 'envoie du mot de passe
set WshShell=Nothing
set oArgs=Nothing
set WshEnv=Nothing
set FSO=Nothing
wscript.quit
|
On l'encode ensuite en VBE grace à screnc
1.4.4 Déploiement du script sur le réseau
On écrit un nouveau script avec une extension en bat qui permettra de lancer le script VBE que lon aura déposé dans le dossier partagé de Symantec.
Citation :
@echo off
cscript | wscript \\172.17.0.7\VPLOGON\RUNAS.VBE
|
On crée alors une stratégie de groupe qui sappliquera sur les utilisateurs pour que le script puisse être lancé. Dans les scripts douverture de session, on ajoutera notre fichier ci-dessus. Il faut que le dossier VPLOGON ait les autorisations de partage en lecture et exécution sur les utilisateurs du domaine tout comme longlet sécurité.
|