Logo
Настройка прокси-сервера в PowerShell
Инструкции

Настройка прокси-сервера в PowerShell

Для настройки прокси-сервера в PowerShell есть несколько ключевых команд и подходов — они позволяют гибко управлять подключениями как на уровне всей системы, так и для отдельных приложений.

1. Настройка системного прокси через netsh (WinHTTP)

Установить прокси для WinHTTP:
powershell
netsh winhttp set proxy IP-адрес:порт

Например:
powershell
netsh winhttp set proxy 192.168.0.14:3128

Посмотреть текущие настройки:
powershell
netsh winhttp show proxy

Сбросить настройки прокси:
powershell
netsh winhttp reset proxy

Добавить список исключений (адреса, которые будут обходить прокси):
powershell
netsh winhttp set proxy "192.168.0.14:3128" bypass-list="10.*,172.*,192.168.*,*.corp.local"

Такой способ подходит для прокси без авторизации или с авторизацией по IP1 2 3 .

2. Настройка прокси через реестр (Internet Settings)

Включить прокси и задать адрес:
powershell
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyServer -Value "IP-адрес:порт"
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 1

Отключить прокси:
powershell
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 0

Проверить текущие параметры:
powershell
Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" | Select-Object ProxyServer, ProxyEnable

Этот метод влияет на большинство браузеров и приложений Windows3 .

3. Использование переменных окружения (PowerShell Core, Linux)

Задать переменные для HTTP/HTTPS прокси:
powershell
$ENV:HTTP_PROXY = "http://IP:PORT"
$ENV:HTTPS_PROXY = "http://IP:PORT"

Для прокси с авторизацией:
powershell
$ENV:HTTP_PROXY = "http://username:password@IP:PORT"
$ENV:HTTPS_PROXY = "http://username:password@IP:PORT"

Проверить переменные:
powershell
dir env:

Такой способ особенно актуален для PowerShell 7.x и выше, а также для Linux2 5 .

4. Прокси с авторизацией в PowerShell Core

Для командлетов типа Invoke-WebRequest:
powershell
Invoke-WebRequest -Proxy "http://username:password@IP:PORT" -Uri "http://example.com"

Или для SOCKS5:
powershell
Invoke-WebRequest -Proxy "socks5://IP:PORT" -Uri "http://example.com"

В PowerShell 7.x поддерживаются схемы http, https, socks4, socks4a, socks55 .

5. Проверка работы прокси

Проверить, используется ли прокси для конкретного адреса:
powershell
([System.Net.WebRequest]::GetSystemWebproxy()).IsBypassed("https://example.com")

Если результат False — запрос пойдет через прокси2 .
Проверить соединение через прокси:
powershell
Test-NetConnection -ComputerName "example.com" -Port 80

Эти команды позволяют гибко настраивать прокси для работы в интернете, обеспечивать анонимность в сети, обходить блокировки и использовать надежные прокси для работы с корпоративными или частными ресурсами.

Настройка прокси-сервера в PowerShell | Proxy Soxy