Spybot - Search & Destroy V1.3 repacked with InstallShield Repackager.
With a little bit of fine tuning, Spybot can be packaged up real nice into an msi for GPO deployment. Use the "Installation Monitoring" method.
Run the setup and after it completes, run the program. Do an on-line update to get the new definitions. Configure all of the settings as you'd like them to be. Consider your target audience when doing this as Spybot has a lot of automation and silent features.
My preference is to set the program to download updates, autoscan, autofix, autoinnoculate, and then autoclose when the program is run. Make sure the options for using System Restore are disabled (as you should really disable System Restore anyway). After you finish making your settings, close Spybot. Open the file Configuration.ini found at the path \Documents and Settings\All Users\Application Data\Spybot - Search & Destroy. These are the settings you just made. If you would like to have these settings apply to new users, transfer the appropriate entries to the file Default configuration.ini found at the path \Program Files\Spybot - Search & Destroy.
In your repack directory, edit the file Updated.isr. There should be a significant amount of registry entries. If any of them are complete SIDs (ie actual users), delete them. Make sure to keep the entries for HKEY_USERS\.DEFAULT, HKEY_USERS\S-1-5-19, HKEY_USERS\S-1-5-20. These will "innoculate" the Default user and system accounts.
Finally, in the repack directory, edit your .inc file. You will need to modify the .ini file section to reflect the settings discussed above. Now you can build.
If you would like to schedule Spybot to run on all of your computers after the GPO deployment, you can use this as a startup script or plug it into an existing startup script.
Option Explicit Dim strComputer, objWMIService, colScheduledJobs strComputer = "." Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colScheduledJobs = objWMIService.ExecQuery("Select * FROM Win32_ScheduledJob")
'********************************************************************** '** Subroutine; Spybot Scheduling Routine ** '********************************************************************** Sub SchedSpybot Dim objService, objNewJob, SpybotRun, JobID Set objService = GetObject("winmgmts:\\" & strComputer) Set objNewJob = objService.Get("Win32_ScheduledJob") SpybotRun = """C:\Program Files\Spybot - Search & Destroy\SpybotSD.exe "" & /taskbarhide /autoupdate /autoimmunize /autocheck /autofix /autoclose" objNewJob.Create SpybotRun, "********003000.000000-240", True , 1 OR 2 OR 4 OR 8 OR 16 OR 32 Or 64, , , JobID objNewJob.Create SpybotRun, "********011000.000000-240", True , 1 OR 2 OR 4 OR 8 OR 16 OR 32 Or 64, , , JobID objNewJob.Create SpybotRun, "********017000.000000-240", True , 1 OR 2 OR 4 OR 8 OR 16 OR 32 Or 64, , , JobID End Sub
'********************************************************************** '** Schedule Spybot ** '********************************************************************** If colScheduledJobs.Count = 0 Then SchedSpybot
I've been using this with some clients for some time now and it works beautifully. The scheduling of Spybot in this fashion is especially nice since Spybot will run under the credentials of the System, eliminating any problems with non-administrators being logged in. |