根据计算机名称绕过或禁用代理

我们正在尝试使用MDT2010和MDT2012部署一些新的Windows 7(和一些旧的XP)机器。

由于IE设置为“自动检测代理设置”,因此它从DHCP服务器中定义的proxy.pac / wpad.dat中获取设置。

问题是,在部署过程中,机器不在域中,所以WebMarshal服务器的身份validation是不可能的,因此除非有人“动手”填写身份validation对话框,否则所有基于Internet的操作都将失败。

我怎样才能做到以下一种?

  1. 在应用程序安装开始之前,禁用XP的自动代理configuration
  2. 让proxy.pac / wpad.dat文件绕过基于机器上可识别的东西的代理(主机名可以,但PAC不可用的iirc,但是我可以从MDT设置的其他variables也可以)
  3. configurationWebMarshal以绕过特定计算机名称的身份validation

这是我使用的(我发现的一个vbs):

DIM sKey,sValue,binaryVal Dim oReg Dim status Set oReg=GetObject( "winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv") 'For registry operations througout Const HKCU=&H80000001 status = "off" sKey = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections" sValue = "DefaultConnectionSettings" oReg.GetBinaryValue HKCU, sKey, sValue, binaryVal select case lcase(status) case "on" binaryVal(8) = binaryVal(8) OR 8 'Force Autodetect on case "off" binaryVal(8) = binaryVal(8) XOR 8 'Force Autodetect off case "show" wscript.echo "Automatically detect is set to " & ((binaryVal(8) and 8) = 8) case else wscript.echo "Invalid parameter - IEautomaticallydetect on, off or show" end select if lcase(status)="on" or lcase(status)="off" then oReg.SetBinaryValue HKCU, sKey, sValue, binaryVal 

对我来说完美无瑕,我从.cmd中调用它

假设你有没有代理出站互联网访问,那么你可以禁用“自动检测设置”,并采取以下注册码的副本:

DefaultConnectionSettings

HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Internet Settings \ Connections \

然后根据生产需要进行configuration并进行另一个导出。 然后,您可以在适当的时候使用脚本来切换它们。

请记住,大多数代理相关configuration都存储在各种密钥中

HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Internet Settings \

这包括实际的代理本身,和例外等

另一个select,假设webmarshal支持它,不是validation你需要部署的域,这应该是足够的,不足以代表安全问题。