How to script def updates?
Updated: 22 May 2010 | 4 comments
This issue has been solved. See solution.
I tried to search for this, but found too many to read...
I am installing SEP 11.5 on an XP SP3 machine that will be used at a Kiosk with Windows Steady State. Steady State does not recognize SEP, although it does recognize other AV vendors.
To update the defs, I can not use Live Update - I need to schedule a script to run to pull them down and install them. Is there such a thing already created, and if so, could you point me to where it is?
Thank you for the helP!
Discussion Filed Under:
Comments
This is helpful for
This is helpful for you?
How to Use a Third Party Tool for Content Deployment
Applying rapid release definitions to a Symantec Endpoint Protection (SEP) client
Please don't forget to mark your thread solved with whatever answer helped you : ) Thanks & Regards Aravind
Thank you for the thought,
Thank you for the thought, but no, this didn't help. I did find a post "SEP11 and Windows SteadyState" that has a script and information that I think will help, I'm testing it now to see if it will do what I need. Thank you for the info!
Script for Live Update on XP SteadyState that WORKS! :)
The post copied below by ctosompoy WORKS. This is great!
ctosompoy
Add the below text to SoftwareUpdates.XML above the statement "</softwareupdates>" at the bottom of the file. You can find this file in XML directory for steadystate 2.5.
<software
id="SymantecEP11"
name="Symantec Endpoint Protection 11"
detectionPath="SOFTWARE\Symantec\InstalledApps"
detectionName="SAV Install Directory"
append="SescLU.exe"
script="SCTSymantecEndpointUpdate.vbs"
category="Anti-Virus" />
Then create this script file named "SCTSymantecEndpointUpdate.vbs" with the text below and save in the scripts dirctory for steadystate. Restart your machine after doing this and you will see Endpoint listed as a security program in SteadyState.
' ~~~ Force variables to be declared
' ~~~
Option Explicit
' ~~~
' ~~~ Turn on error handling
' ~~~
On Error Resume Next
' ~~~
' ~~~ Declare global variables
' ~~~
Dim sNortonPath, oShell, strComputer, oWMIService, ColProcesses
' ~~~ Create objects
Set oShell = CreateObject("WScript.Shell")
' ~~~ Set application path
sNortonPath = oshell.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\LUALL.EXE\")
'~~~ Download Virus Signature
call oShell.Run("""" & sNortonPath & """" & " -s", 0, True)
' ~~~ Wait 5 minutes
WScript.Sleep (300000)
You can just grab the defs
Once you have third party management configured, you can just grab the defs using a modified xdbdown script.
Change the target directory to wherever you installed your SEP:
Non-Vista
C:\Documents and Settings\All Users\Application Data\Symantec\Symantec Endpoint Protection\inbox
Vista
C:\Program Data\Symantec\Symantec Endpoint Protection\inbox\
Change rapid release to 0 or 1 depending which defs you want.
You will need to allow ftp access to ftp.symantec.com
This can't be set to an IP address as ftp.symantec.com is hosted with Akamai and changes depending on the web farm it resolves to.
Create a batch file from the following:
@Set COPY_jdb_TO="C:\Documents and Settings\All Users\Application Data\Symantec\Symantec Endpoint Protection\inbox"
@set RAPIDRELEASE=0
@set jdbTEMP=%temp%
@rem ==============================================================================================
@rem Set RAPIDRELEASE=1 to download repidrelease definitions, RAPIDRELEASE=0 for fully QA'd definitions (standard).
@rem Change COPY_jdb_TO= to point to the SEP server directory (or where you want the jdb file copied)
@rem you can also run the script directly from the SEP incoming folder and it will copy the definitions there.
@rem jdbTEMP is the temp folder the script will use while downloading definitions, set to %temp% to use system default
@rem ==============================================================================================
@rem Script for downloading virus and spyware definition updates for
@rem Symantec Endpoint Protection version 11.xx
@rem ==============================================================================================
@echo off
rem ========= check that OS is win2k or better ============
rem if not "%OS%" == "Windows_NT" goto BADOS
rem if "%APPDATA%" == "" goto BADOS
rem ========= make sure to be in script directory ============
if exist rtvscan.exe set COPY_jdb_TO=%CD%
for %%i in (%0) do @%%~di
for %%i in (%0) do @cd %%~pi
if exist rtvscan.exe set COPY_jdb_TO=%CD%
rem =========== get name/size of last file from "jdbdown.lastfile" ============
if not exist jdbdown.lastfile goto NOLAST
for /f "tokens=1" %%f in (jdbdown.lastfile) do set lastfile=%%f
for /f "tokens=2" %%f in (jdbdown.lastfile) do set lastsize=%%f
:NOLAST
rem ========= jump to temp dir ============
if not exist "%jdbTEMP%\jdbtmp" md "%jdbTEMP%\jdbtmp"
if exist "%jdbTEMP%\jdbtmp\*.jdb" del "%jdbTEMP%\jdbtmp\*.jdb"
pushd "%jdbTEMP%\jdbtmp"
rem =========== make ftp script for checking jdb directory on ftp ===========
echo open ftp.symantec.com> check.txt
echo anonymous>> check.txt
echo email@address.com>> check.txt
set jdbfolder=jdb
if "%RAPIDRELEASE%" == "1" set jdbfolder=rapidrelease
echo cd /public/english_us_canada/antivirus_definitions/symantec_antivirus_corp/%jdbfolder%>> check.txt
echo dir *.jdb chk.lst>> check.txt
echo bye>> check.txt
rem =========== get filename and size from ftp ============
if exist chk.lst del chk.lst
ftp -s:check.txt
if not exist chk.lst goto ERROR
for /f "tokens=9" %%f in (chk.lst) do set jdbfile=%%f
for /f "tokens=5" %%f in (chk.lst) do set jdbsize=%%f
if "%jdbfile%" == "" goto ERROR
if "%jdbsize%" == "" goto ERROR
rem =========== compare ftp name/size to local ============
if not "%jdbfile%" == "%lastfile%" goto DOWNLOAD
if not "%jdbsize%" == "%lastsize%" goto DOWNLOAD
popd
echo.
echo Already downloaded latest %jdbfolder% file: %jdbfile% - size %jdbsize%
echo %date% %time% Already downloaded latest %jdbfolder% file: %jdbfile% - size %jdbsize% >> jdbdown.log
goto END
:DOWNLOAD
rem ========= make ftp script for downloading new jdb file =========
echo open ftp.symantec.com> down.txt
echo anonymous>> down.txt
echo email@address.com>> down.txt
echo cd public/english_us_canada/antivirus_definitions/norton_antivirus/%jdbfolder%>> down.txt
echo bin>> down.txt
echo hash>> down.txt
echo get %jdbfile%>> down.txt
echo bye>> down.txt
rem ============= download new file =================
ftp -s:down.txt
for %%i in (%jdbfile%) do @set newsize=%%~zi
if not "%newsize%" == "%jdbsize%" goto ERROR
move %jdbfile% %COPY_jdb_TO%
if exist %jdbfile% goto ERRORMOVE
popd
echo.
echo %jdbfile% %jdbsize% > jdbdown.lastfile
echo Downloaded new %jdbfolder% file: %jdbfile% - size %jdbsize%
echo %date% %time% Downloaded new %jdbfolder% file: %jdbfile% - size %jdbsize% >> jdbdown.log
goto END
:ERROR
popd
echo.
echo ERROR: problem downloading %jdbfolder% definition file. jdbfile=%jdbfile% jdbsize=%jdbsize% newsize=%newsize% (lastfile=%lastfile% lastsize=%lastsize%).
echo %date% %time% ERROR: problem downloading %jdbfolder% definition file. jdbfile=%jdbfile% jdbsize=%jdbsize% newsize=%newsize% (lastfile=%lastfile% lastsize=%lastsize%). >> jdbdown.log
type "%jdbTEMP%\jdbtmp\chk.lst" >> jdbdown.log
echo. >> jdbdown.log
goto END
:ERRORMOVE
popd
echo.
echo ERROR: problem moving definition file to SAV folder. COPY_jdb_TO=%COPY_jdb_TO% newsize=%newsize% (lastfile=%lastfile% lastsize=%lastsize%).
echo %date% %time% ERROR: problem moving definition file to SAV folder. COPY_jdb_TO=%COPY_jdb_TO% newsize=%newsize% (lastfile=%lastfile% lastsize=%lastsize%). >> jdbdown.log
goto END
:BADOS
echo.
echo ERROR: this script needs Windows 2000 or better.
echo %date% %time% ERROR: this script needs Windows 2000 or better. >> jdbdown.log
goto END
:END
if exist "%jdbTEMP%\jdbtmp\check.txt" del "%jdbTEMP%\jdbtmp\check.txt"
if exist "%jdbTEMP%\jdbtmp\down.txt" del "%jdbTEMP%\jdbtmp\down.txt"
if exist "%jdbTEMP%\jdbtmp\chk.lst" del "%jdbTEMP%\jdbtmp\chk.lst"
rd "%jdbTEMP%\jdbtmp"
set COPY_jdb_TO=
set RAPIDRELEASE=
set lastsize=
set lastfile=
set newsize=
set jdbsize=
set jdbfile=
set jdbfolder=
set jdbtemp=
Would you like to reply?
Login or Register to post your comment.