Windows Proxy für Dienste

Aus MyWiki
Zur Navigation springen Zur Suche springen

Proxy Einstellungen per GPO greifen nicht für den Dienstbenutzer, bzw. generell nicht für Dienste, selbst wenn diese unter einem AD-Benutzer laufen. Dienste können auf den WinHTTP Proxy zurückgreifen. In Fällen, in denen das nicht möglich ist, z.B. bei Verwendung der Crypto API zum Prüfen von Zertifikaten und deren Sperrlisten (CRL), werden die User-Proxy Einstellungen benötigt.

Die User-Proxy Einstellungen befinden sich in der Registry zwar unter HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings (ProxyServer, ProxyEnable), werden aber von der Crypto API (und Powershell Invoke-WebRequest) nicht verwendet. Stattdessen wird die REG_BINARY Einstellung von HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Connections\DefaultConnectionSettings genutzt. Normalerweise wird diese beim ersten Start vom Internet Explorer gesetzt, was bei einem Dienst natürlich nicht vorkommt.

Um die Proxy Einstellungen nun für einen Dienst-User zu setzen, muss der Registry Wert von einen Benutzer mit den korrekten Einstellungen exportiert und im Service-User importiert werden. Dazu entweder eine Commandline als Service User öffnen und dort die .reg-Datei importieren oder die entsprechende SID des Users verwenden

Mit bitsadmin kann man die Proxy Einstellungen für LOCALSYSTEM und NETWORKSERVICE und LOCALSERVICE setzen:

bitsadmin /util /setieproxy localsystem MANUAL_PROXY proxy1:80

https://docs.microsoft.com/de-de/windows-server/administration/windows-commands/bitsadmin-util-and-setieproxy