...pudding - diary


2019-01-22

_ [Software] PowerShell で proxy 越え

PowerShellはネットワーク上のリソースにアクセスする機能がいっぱい含まれていてとても便利に使えます。

たとえば、PowerShellヘルプを更新してみよう。

Update-Help

たとえば、外部WEBページにアクセスしてみよう

Invoke-WebRequest http://www.example.com

ところがこれらコマンドが動かない場合、WEBブラウザでのブラウジングは平気なのにコマンドは動かないという場合、proxy の設定が絡んでいることが考えられます。

PowerShellのプロキシ設定はWEBブラウザのプロキシ設定とリンクしていません。PowerShell用に設定しなければいけません。

その方法がとてもわかりやすく書いてあるサイトがこちら↓

Using PowerShell Behind a Proxy | Windows OS Hub

proxy の設定がPACファイルによるものの場合、認証Proxyによるものの場合、こちらの手法がピタリと当てはまります。

認証がAD認証の場合、以下設定だけで PowerShell からProxy経由で接続できるようになります。

$Wcl = new-object System.Net.WebClient
$Wcl.Headers.Add(“user-agent”, “PowerShell Script”)
$Wcl.Proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials

認証情報は手動で設定するんだという場合は追加で以下設定を。

$Wcl=New-Object System.Net.WebClient
$Creds=Get-Credentialbr
$Wcl.Proxy.Credentials=$Creds

途中認証を求める画面が出るのでそこで入力すれば良いです。

メンドクサイ構成のネットワークでもどうにかやっていこう。


2019年
1月
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Twitter : @moriya_jp