background img

The New Stuff

Настройка параметров IE через системный реестр

Итак, Microsoft активно начинает стимулировать к переходу с Windows XP на более поздние версии и с IE 7,8 на более поздние версии...


Я столкнулся на днях с такой проблемой: у моих пользователей неожиданно стала отпадывать галочка использования прокси - пропадает и все тут.
Стал копать этот вопрос, оказалось, что из ГП напрочь пропали параметры настройки IE... - те, которые были в Конфигурация пользователя - Политики - Конфигурация Windows...
Надо было как-то решать эту проблему.
Итак, облазив гулю, яну и т. д., опираясь на собственный опыт, я пришел к следующему:
Были рекомендации подправить шаблон, но это мне успеха не принесло, я решил действовать через реестр.

Итак, основные параметры:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
"ProxyEnable"=dword:00000001 - указание идти в интернет через прокси
"ProxyServer"="proxy" - собственно, сами адреса прокси-серверов
"ProxyOverride"="hosts;" - список хостов, на которые надо идти в обход прокси.

Это еще не все...
Есть такие сайты, которые надо занести обязательно в определенную зону, например в зону надежных узлов - сайты банковских систем (не редко они сами этого просят).
Эти узлы добавляются через ГП. Путь для русской редакции Windows 2008:
Конфигурация пользователя - Административные шаблоны - Компоненты Windows - Internet Explorer - Панель управления браузером - Вкладка "Безопасность" - Список назначений зоны для веб-сайтов.
Добавить их централизованно можно тоже через реестр:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMapKey
"Сайт", REG_SZ:Zone
где "Сайт" - нужный сайт, REG_SZ - тип записи, Zone - номер зоны.

Дополнительную информацию по определению сайтов в зоны через реестр можно найти по адресу: http://support.microsoft.com/KB/182569

Информацию по добавлению сайтов в нужные зоны можно посмотреть по адресу: http://inkvizitor-windows.blogspot.ru/2012/06/group-policy-internet-explorer.html

В свойствах подключения IE часто по умолчанию установлен параметр "Автоматическое определение параметров" (Automatically detect settings)". Этот параметр можно отключить скриптом, который можно установить быть logon-скриптом:

'Option Explicit
On Error Resume Next
'Создаем константу для объекта HKEY_CURRENT_USER
Const HKCU = &H80000001
'Define variables
Dim strComputer
Dim strRegistryKey
Dim objRegistry
Dim strRegistryValue
DIm binValue
strComputer = "."
strRegistryKey = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections"
strRegistryValue = "DefaultConnectionSettings"
'Connect to the Registry
Set objRegistry = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
'Retrieve the current settings. 
objRegistry.GetBinaryValue HKCU, strRegistryKey, strRegistryValue, binValue
'Снять галку с 'Automatically detect settings'
binValue(8) = 05
'Раскомментировать строку ниже, чтобы выставить галку на 'Automatically detect settings'
'binValue(8) = 13
'Save the changes
objRegistry.SetBinaryValue HKCU, strRegistryKey, strRegistryValue, binValue

Скрипт взят тут: http://goo.gl/rJmf0f

Свои проблемы, в итоге, я решил написанием небольшого скрипта, часть которого составил скрипт, приведенный выше:
' VBScript.
'Скрипт настройки параметров 
Set Sh = CreateObject("WScript.Shell")
key =  "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\"
'Включаем прокси
Sh.RegWrite key & "ProxyEnable", 1, "REG_DWORD"
'Здесь указываем список хостов, на которые надо ходить НЕ через прокси. Параметр отвечает за установку галочки "Не использовать прокси-сервер для локальных адресов"
Sh.RegWrite key & "ProxyOverride", "192.168.*.*;", "REG_SZ"
'Указываем список своих прокси-серверов
Sh.RegWrite key & "ProxyServer", "http="proxy:3128;https=proxy:3128;ftp=proxy:3128;socks=proxy:1080", "REG_SZ"
Sh.RegWrite key & "MigrateProxy", 1, "REG_DWORD"
Sh.RegWrite key & "EnableHttp1_1", 1, "REG_DWORD"
Sh.RegWrite key & "WarnOnIntranet", 1, "REG_DWORD"
Sh.RegWrite key & "User Agent", "Mozilla/4.0 (compatible; MSIE 8.0; Win32)", "REG_SZ"
key =  "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\"
Sh.RegWrite key & "Start Page", "http://www.yandex.ru/", "REG_SZ"
Sh.RegWrite key & "Start Page Redirect Cache", "http://www.yandex.ru/", "REG_SZ"
Sh.RegWrite key & "Search Page", "http://www.yandex.ru", "REG_SZ"

'Убираем галку "Автоматическое определение параметров"
On Error Resume Next
'Создаем константу для объекта HKEY_CURRENT_USER
Const HKCU = &H80000001
'Define variables
Dim strComputer
Dim strRegistryKey
Dim objRegistry
Dim strRegistryValue
DIm binValue
strComputer = "."
strRegistryKey = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections"
strRegistryValue = "DefaultConnectionSettings"
'Connect to the Registry
Set objRegistry = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
'Retrieve the current settings. 
objRegistry.GetBinaryValue HKCU, strRegistryKey, strRegistryValue, binValue
'Снять галку с 'Automatically detect settings'
binValue(8) = 05
'Раскомментировать строку ниже, чтобы выставить галку на 'Automatically detect settings'
'binValue(8) = 13
'Save the changes

objRegistry.SetBinaryValue HKCU, strRegistryKey, strRegistryValue, binValue

Для этого скрипта я создал задание в планировщике. В качестве logon-скрипта он у меня отказался работать, а через планировщик отрабатывает нормально.

UPD:
После глубоких раскопок выяснилось следующее:

  1. Через общие параметры для IE политики нормально применяются только для Windows XP;
  2. Параметр ProxyServer лучше задавать единым - один прокси для всех протоколов, поскольку могут возникнуть проблемы с прокси из-за наличия параметров для протокола Gopher;
  3. При настройке параметров IE через консоль GPO - Конфигурация пользователя/Настройка/Параметры панели управления/Параметры обозревателя, файл настроек создается, но... параметры ProxyOverride, ProxyEnable, StartPage, несмотря на то, что необходимые значения им присвоены, они имеют статус disabled... Это справедливо для настроек IE 7 и IE 8. Вылечить это можно выяснив UID политики, зайти по нужному пути: ...\SYSVOL\sysvol\YourDomain\Policies\{UID политики, который выяснили чуть ранее}\User\Preferences\InternetSettings\ и поправить файл InternetSettings.xml у нужных параметров поменять disable с 1 на 0. Это можно сделать в обычном текстовом редакторе.
  4. Для того, чтоб параметры IE 8 применялись для IE 9 и выше, необходимо найти: min="8.0.0.0" max="9.0.0.0 и поменять 9 на, например, 20 или выше - политика станет применяться для IE 9-11.
  5. ProxyOverride применяется (во всяком случае у меня так) при отсутствии в адресах следующих символов: : / \ * (пробел здесь использован в качестве разделителя).
Итак, Microsoft активно начинает стимулировать к переходу с Windows XP на более поздние версии и с IE 7,8 на более поздние версии...


Я столкнулся на днях с такой проблемой: у моих пользователей неожиданно стала отпадывать галочка использования прокси - пропадает и все тут.
Стал копать этот вопрос, оказалось, что из ГП напрочь пропали параметры настройки IE... - те, которые были в Конфигурация пользователя - Политики - Конфигурация Windows...
Надо было как-то решать эту проблему.
Итак, облазив гулю, яну и т. д., опираясь на собственный опыт, я пришел к следующему:
Были рекомендации подправить шаблон, но это мне успеха не принесло, я решил действовать через реестр.

Итак, основные параметры:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
"ProxyEnable"=dword:00000001 - указание идти в интернет через прокси
"ProxyServer"="proxy" - собственно, сами адреса прокси-серверов
"ProxyOverride"="hosts;" - список хостов, на которые надо идти в обход прокси.

Это еще не все...
Есть такие сайты, которые надо занести обязательно в определенную зону, например в зону надежных узлов - сайты банковских систем (не редко они сами этого просят).
Эти узлы добавляются через ГП. Путь для русской редакции Windows 2008:
Конфигурация пользователя - Административные шаблоны - Компоненты Windows - Internet Explorer - Панель управления браузером - Вкладка "Безопасность" - Список назначений зоны для веб-сайтов.
Добавить их централизованно можно тоже через реестр:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMapKey
"Сайт", REG_SZ:Zone
где "Сайт" - нужный сайт, REG_SZ - тип записи, Zone - номер зоны.

Дополнительную информацию по определению сайтов в зоны через реестр можно найти по адресу: http://support.microsoft.com/KB/182569

Информацию по добавлению сайтов в нужные зоны можно посмотреть по адресу: http://inkvizitor-windows.blogspot.ru/2012/06/group-policy-internet-explorer.html

В свойствах подключения IE часто по умолчанию установлен параметр "Автоматическое определение параметров" (Automatically detect settings)". Этот параметр можно отключить скриптом, который можно установить быть logon-скриптом:

'Option Explicit
On Error Resume Next
'Создаем константу для объекта HKEY_CURRENT_USER
Const HKCU = &H80000001
'Define variables
Dim strComputer
Dim strRegistryKey
Dim objRegistry
Dim strRegistryValue
DIm binValue
strComputer = "."
strRegistryKey = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections"
strRegistryValue = "DefaultConnectionSettings"
'Connect to the Registry
Set objRegistry = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
'Retrieve the current settings. 
objRegistry.GetBinaryValue HKCU, strRegistryKey, strRegistryValue, binValue
'Снять галку с 'Automatically detect settings'
binValue(8) = 05
'Раскомментировать строку ниже, чтобы выставить галку на 'Automatically detect settings'
'binValue(8) = 13
'Save the changes
objRegistry.SetBinaryValue HKCU, strRegistryKey, strRegistryValue, binValue

Скрипт взят тут: http://goo.gl/rJmf0f

Свои проблемы, в итоге, я решил написанием небольшого скрипта, часть которого составил скрипт, приведенный выше:
' VBScript.
'Скрипт настройки параметров 
Set Sh = CreateObject("WScript.Shell")
key =  "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\"
'Включаем прокси
Sh.RegWrite key & "ProxyEnable", 1, "REG_DWORD"
'Здесь указываем список хостов, на которые надо ходить НЕ через прокси. Параметр отвечает за установку галочки "Не использовать прокси-сервер для локальных адресов"
Sh.RegWrite key & "ProxyOverride", "192.168.*.*;", "REG_SZ"
'Указываем список своих прокси-серверов
Sh.RegWrite key & "ProxyServer", "http="proxy:3128;https=proxy:3128;ftp=proxy:3128;socks=proxy:1080", "REG_SZ"
Sh.RegWrite key & "MigrateProxy", 1, "REG_DWORD"
Sh.RegWrite key & "EnableHttp1_1", 1, "REG_DWORD"
Sh.RegWrite key & "WarnOnIntranet", 1, "REG_DWORD"
Sh.RegWrite key & "User Agent", "Mozilla/4.0 (compatible; MSIE 8.0; Win32)", "REG_SZ"
key =  "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\"
Sh.RegWrite key & "Start Page", "http://www.yandex.ru/", "REG_SZ"
Sh.RegWrite key & "Start Page Redirect Cache", "http://www.yandex.ru/", "REG_SZ"
Sh.RegWrite key & "Search Page", "http://www.yandex.ru", "REG_SZ"

'Убираем галку "Автоматическое определение параметров"
On Error Resume Next
'Создаем константу для объекта HKEY_CURRENT_USER
Const HKCU = &H80000001
'Define variables
Dim strComputer
Dim strRegistryKey
Dim objRegistry
Dim strRegistryValue
DIm binValue
strComputer = "."
strRegistryKey = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections"
strRegistryValue = "DefaultConnectionSettings"
'Connect to the Registry
Set objRegistry = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
'Retrieve the current settings. 
objRegistry.GetBinaryValue HKCU, strRegistryKey, strRegistryValue, binValue
'Снять галку с 'Automatically detect settings'
binValue(8) = 05
'Раскомментировать строку ниже, чтобы выставить галку на 'Automatically detect settings'
'binValue(8) = 13
'Save the changes

objRegistry.SetBinaryValue HKCU, strRegistryKey, strRegistryValue, binValue

Для этого скрипта я создал задание в планировщике. В качестве logon-скрипта он у меня отказался работать, а через планировщик отрабатывает нормально.

UPD:
После глубоких раскопок выяснилось следующее:

  1. Через общие параметры для IE политики нормально применяются только для Windows XP;
  2. Параметр ProxyServer лучше задавать единым - один прокси для всех протоколов, поскольку могут возникнуть проблемы с прокси из-за наличия параметров для протокола Gopher;
  3. При настройке параметров IE через консоль GPO - Конфигурация пользователя/Настройка/Параметры панели управления/Параметры обозревателя, файл настроек создается, но... параметры ProxyOverride, ProxyEnable, StartPage, несмотря на то, что необходимые значения им присвоены, они имеют статус disabled... Это справедливо для настроек IE 7 и IE 8. Вылечить это можно выяснив UID политики, зайти по нужному пути: ...\SYSVOL\sysvol\YourDomain\Policies\{UID политики, который выяснили чуть ранее}\User\Preferences\InternetSettings\ и поправить файл InternetSettings.xml у нужных параметров поменять disable с 1 на 0. Это можно сделать в обычном текстовом редакторе.
  4. Для того, чтоб параметры IE 8 применялись для IE 9 и выше, необходимо найти: min="8.0.0.0" max="9.0.0.0 и поменять 9 на, например, 20 или выше - политика станет применяться для IE 9-11.
  5. ProxyOverride применяется (во всяком случае у меня так) при отсутствии в адресах следующих символов: : / \ * (пробел здесь использован в качестве разделителя).

0 коммент.:

Отправить комментарий

Popular Posts