четверг, 10 июля 2014 г.

Как найти и сменить прокси для системной службы

Интересный квест поимел на днях. Поставили на сервер свой софт, проверили, отправили заказчику. Стали запускать у заказчика - облом, системная служба не хочет опрашивать железяки по http, запрос отваливается по таймауту - нет ответа. Железяки живые, из браузера с того же сервера замечательно опрашиваются.

Служба запускается под системной учёткой



Брандмауер винды конечно первым делом покрутил - дело не в нём. Запустил Microsoft Network Monitor, от службы вообще никаких запросов не видно, ОК, смотрю, а кудаж она пытается соединиться



Опа, а адресок-то знакомый - этож наш конторский прокси. Ага, сказали суровые сибирские мужики и набрали

netsh.exe winhttp show proxy

Фигвам, сказала netsh.exe



Пришлось обратиться к всемирному разуму, разум сказал, что надо настраивать прокси для системной учётки, для этого взять PsExec от Sysinternals и сделать так

psexec -i 0 -s "C:\Program Files\Internet Explorer\iexplore.exe"

-i - Запускаемая программа получает доступ к рабочему столу указанного сеанса
-s - Процесс запускается из системной учетной записи.

Появляется запрос



давим Просмотреть сообщение, видим Internet Explorer, запущенный под системной учёткой, а в его настройках - таки да, забит конторский прокси. После чистки порчу со службы как рукой сняло.

Остался правда вопрос как оно туда попало, что-то я не помню, чтоб при установке софта занимался вызовом системного призрака IE и задания в нем адреса прокси.

Комментариев нет:

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