How to: configurar valores de proxy usando powershell
En muchos casos se necesita configurar los valores del proxy según donde estemos conectados, escenario muy típico en el trabajo o cuando visitamos clientes con distintas políticas de acceso a internet.
Vivido este escenario, decidí crear un pequeño script en powershell el cual pueda ejecutar para configurar todos los valores necesarios de forma rápida.
Cuando configuramos estos valores manualmente, lo hacemos por la ventana de conexiones de nuestro navegador, algo como:
Estos valores que estamos ajustando son guardados en el Registro del sistema en la ruta HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settings y corresponden a las siguientes llaves de esta ruta:
1 – ProxyEnable (Valores posibles: 0|1)
2 – ProxyServer (Valor: rutaproxy:puerto)
Si actualizamos estos valores desde powershell, pudiesemos tener una función inicial como la siguiente:
cd HKCU:"SoftwareMicrosoftWindowsCurrentVersionInternet Settings" set-itemproperty . ProxyEnable 1 set-itemproperty . ProxyServer "rutaproxy:puerto"
Para el caso cuando tenemos configuraciones avanzadas, las ajustamos a través de la siguiente ventana :

Estos valores son ajustables utilizando las siguientes llaves del registro del sistema:
set-itemproperty . ProxyServer "http=mihttp:80;https=misecure:80;ftp=miftp:80;socks=misocks" set-itemproperty . ProxyOverride "http://miserverinterno1;http://miserverinterno2"
Si colocamos todo junto en una función tendríamos algo como:
function set-proxy{
cd HKCU:"SoftwareMicrosoftWindowsCurrentVersionInternet Settings"
set-itemproperty . ProxyEnable 1
set-itemproperty . ProxyServer "http=mihttp:80;https=misecure:80;ftp=miftp:80;socks=misocks"
set-itemproperty . ProxyOverride "http://miserverinterno1;http://miserverinterno2"
Write-Host "Proxy settings actualizado!"
}
Esta función puede expandirse validando los casos de uso y pasándole un parámetro que defina los valores a configurar.
Nos leemos.



Powershell es una tecnología para la administración de Windows diseñada para ser usada de forma fácil tanto por desarrolladores como administradores de sistemas. Powershell versión 2 (V2) está disponible tanto en Windows Server 2008 R2 como en Windows 7 y vía descarga para versiones anteriores.



