🙌

PowerShellのProxy設定(認証あり)

2022/03/12に公開

プロキシ時のPowershell運用

プロキシのある社内環境でネットをアクセスする時、プロキシを設定する必要があります。

Profileをセットして、自動反映

  1. Profileの場所確認

    $ Write-Host $PROFILE
    C:\Users\liu\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
    

    $PROFILE変数

    [説明] 名前
    現在のユーザー、現在のホスト $PROFILE
    現在のユーザー、現在のホスト $PROFILE.CurrentUserCurrentHost
    現在のユーザー、すべてのホスト $PROFILE.CurrentUserAllHosts
    すべてのユーザー、現在のホスト $PROFILE.AllUsersCurrentHost
    すべてのユーザー、すべてのホスト $PROFILE.AllUsersAllHosts
  2. Profileプロファイル処理

    Microsoft.PowerShell_profile.ps1
    # 個別の認証情報
    $proxyUser = "<USERNAME>"
    $proxyPassword = "<PASSWORD>"
    $proxyhost = "<HOSTNAME>:<PORTNUMBER>"
    
    # 環境変数
    $proxyAddressWithAuthenticattion = "http://$($proxyUser):$($proxy$password)@$($proxyhost)"
    $env:http_proxy = $proxyAddressWithAuthenticattion
    $env:https_proxy = $proxyAddressWithAuthenticattion
    $env:ftp_proxy = $proxyAddressWithAuthenticattion
    
    # クレデンシャル設定
    $passwordSecure = ConvertTo-SecureString $proxyPassword -AsPlainText -Force
    $creds = New-Object System.Management.Automation.PSCredential $proxyUser, $passwordSecure
    $proxy = New-Object System.Net.WebProxy "http://$($proxyhost)/"
    $proxy.Credentials = $creds
    [System.Net.WebRequest]::DefaultWebProxy = $proxy
    

参照

  1. About Profiles

Discussion