PowerShell
3件のコメント

Office365へのPowerShell接続時にはWinHttpを使用しています。

かなり久しぶりに自宅に仕事を持ち帰ってしまいました。Office365のExchange Online周りのトラブル対応のスクリプトを書いたり動作確認したりするためにRemote PowerShellで接続しようとした所エラーが…。

New-PSSession : [ps.outlook.com] リモート サーバー ps.outlook.com への接続に失敗し、次のエラー メッセージが返されました
: WinRM は処理を完了できません。 指定したコンピューター名が有効であること、コンピューターにネットワーク経由でアクセスで
きること、および WinRM サービスのファイアウォールの例外が有効になっていてこのコンピューターからアクセスできることを確認
してください。 既定では、パブリック プロファイルの WinRM ファイウォールの例外によって、同一のローカル サブネット内のリ
モート コンピューターへのアクセスは制限されます。詳細については、about_Remote_Troubleshooting のヘルプ トピックを参照し
てください。
発生場所 行:1 文字:16
+ $O365Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUr …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : OpenError: (System.Manageme….RemoteRunspace:RemoteRunspace) [New-PSSession], PSRemotin
gTransportException
+ FullyQualifiedErrorId : WinRMOperationTimeout,PSSessionOpenFailed

 

ネットワーク的にはきちんとInternetに接続できてますし、IEでもきちんと外部サイトが見られる状態。Proxyは無し。Windowsファイアウォールも無効の状態でした。なぜなのかわからずTwitterでつぶやいていたら@genkiwさんにポイントを教えてもらえました。ありがとうございました!

結局、WinHttpの設定がproxyを使用する設定のままになっており、proxyが無い環境なのでps.outlook.comに到達できない状態でした。

Vista以降ではコマンドプロンプトにて「netsh winhttp show proxy」にて現在の設定の表示、「netsh winhttp import proxy ie」にてIEからの設定の取り込みが可能です。これできちんと接続できるようになりました。接続方法はこちら。

何でも屋: Windows PowerShell を使用して Office 365 を管理する

winhttpの存在自体はしっていて、よくWindowsUpdateの時にトラブルがある・・・という知識は会ったのですが、RemotePowerShellでwinhttpを使っているとは思っておらず、気がつけませんでした。修行が足りませんね・・・。

子供3人。家族優先。都内SIer勤務。Windows系中心のインフラよりの何でも屋。脱原発。 Microsoft MVP for Cloud and Datacenter Management.

3件のコメント

  1. 基本的なことですが、ついつい見落としがちな点ですね。。。

コメントを残す

メールアドレスが公開されることはありません。