Konfigurieren von Proxy in PowerShell

Bemerkungen: 0

PowerShell ist eine aufgabenorientierte Befehlszeilen-Shell und Skripting-Umgebung, die von Microsoft entwickelt wurde, um zahlreiche Aktivitäten auf Windows-Betriebssystemen zu steuern. Zu ihren wichtigsten Funktionen gehört die Möglichkeit, Proxy-Konfigurationen durchzuführen. Die Befehlszeile und ihre Fähigkeit, solche Aufgaben auszuführen, verbessert die Automatisierung und die Einfachheit der zentralen Verwaltung der Netzwerkeinstellungen von Geräten in der Domäne.

1.png

Der Hauptvorteil der Konfiguration eines Proxyservers mit PowerShell im Vergleich zu anderen gängigen Methoden besteht darin, dass keine grafische Oberfläche erforderlich ist, da die Einstellungen für die Internetverbindung direkt geändert werden. Diese Funktion ist besonders nützlich für Systemadministratoren, die Proxyserver-Einstellungen auf verschiedenen Geräten überwachen müssen, da sie die Einstellungen schnell ändern und in andere Skripte einfügen können, die bereits automatisiert sind, um die Effizienz zu erhöhen.

Schlüsselbefehle für die Proxy-Konfiguration in PowerShell

Es gibt zwei Hauptansätze für die systemweite Konfiguration von Proxyservern mit PowerShell: die Verwendung von netsh-Befehlen zur Steuerung des WinHTTP-Dienstes und die Bearbeitung von Registrierungsschlüsseln mit dem Befehl Set-ItemProperty. Dieser Abschnitt konzentriert sich speziell auf diese beiden Methoden und bietet einige praktische Beispiele für effektive Proxyeinstellungen für das gesamte System und seine Anwendungen. Dieser duale Ansatz ermöglicht es Administratoren, auf verschiedenen Ebenen effizienter mit Netzwerkeinstellungen zu arbeiten.

Verwenden des netsh-Befehls zum Einrichten eines Proxys

Der netsh-Befehl ist in das Windows-Betriebssystem eingebettet und dient einer Vielzahl von Zwecken. Eine der Funktionen, die mit diesem Befehl ausgeführt werden können, ist die Konfiguration von Proxy-Einstellungen in Bezug auf den WinHTTP-Dienst. Dadurch kann der Benutzer die Funktionsweise von Systemdiensten ändern, anstatt Proxys in Anwendungen oder Browsern zu ändern, die verschiedene Netzwerktypen unterstützen.

Es ist wichtig zu betonen, dass die Verwendung des netsh-Befehls in PowerShell auf Proxys beschränkt ist, die IP-Autorisierung verwenden, und nicht auf Proxys, die Anmeldeinformationen erfordern.

So können Sie Proxy-Einstellungen mit PowerShell konfigurieren:


netsh winhttp set proxy IP-address:port

So zeigen Sie die aktuellen Proxy-Einstellungen an, z. B. die Adresse und den verwendeten Port:


netsh winhttp show proxy

So entfernen Sie Proxy-Einstellungen:


netsh winhttp reset proxy

Einrichten eines Proxyservers auf Systemebene über PowerShell

Die Proxy-Einstellungen können zentral in PowerShell verwaltet werden, indem das Registrierungssystem manuell konfiguriert wird. Diese Methode wirkt sich auf alle Programme aus, die das Windows-System verwenden, um ihre Netzwerkeinstellungen zu verwalten, was fast alle Webbrowser einschließt.

Für das Hinzufügen von Proxy-Einstellungen, die keine Autorisierung erfordern, können Sie die folgenden PowerShell-Befehle anwenden:


Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyServer -Value "IP address:port"
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 1

Wenn Sie einen privaten Proxy verwenden, der Anmeldeinformationen benötigt, gehen Sie wie folgt vor:


$proxyAddress = "http://IP address:port"
# Hier geben wir die Adresse des gewünschten Proxyservers an
$credentials = Get-Credential
# Mit diesem Befehl werden Sie aufgefordert, den Benutzernamen und das Passwort einzugeben
[system.net.webrequest]::DefaultWebProxy = New-Object system.net.webproxy($proxyAddress)
# Erzeugt ein neues Proxy-Objekt mit der angegebenen Adresse
[system.net.webrequest]::DefaultWebProxy.Credentials = $credentials
# Übertragen Sie die zuvor eingegebenen Anmeldeinformationen auf den Proxy

Wenn Sie die Proxy-Einstellungen deaktivieren möchten, verwenden Sie den folgenden Befehl:


Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 0

Problembehandlung von Proxy-Problemen in PowerShell

Es gibt mehrere Maßnahmen, die bei Schwierigkeiten mit der Ausführung von Proxy-Einstellungen angewendet werden können. Nachstehend finden Sie die wichtigsten Befehle und Techniken zur Fehlerbehebung.

Ihre aktuellen Proxy-Einstellungen können Sie ganz einfach mit folgendem Befehl überprüfen:


Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" | Select-Object ProxyServer, ProxyEnable

Um festzustellen, ob der Proxy zufällig Ihre Netzwerkanfragen weiterleitet, kann der folgende Befehl verwendet werden, um eine bekannte Website, z. B. example.com, über einen Standard-HTTP-Port anzupingen.


Test-NetConnection -ComputerName "example.com" -Port 80

Bei Bedarf kann anstelle von "example.com" eine beliebige Website Ihrer Wahl angegeben werden.

Wenn Sie immer noch Probleme mit der Verbindung über einen Proxy haben, sollten Sie alle Einstellungen noch einmal überprüfen. Stellen Sie sicher, dass die Angaben Ihres Proxy-Anbieters korrekt sind und der Proxy selbst funktioniert.

Bemerkungen:

0 Bemerkungen