LoginSignup
0
1

More than 3 years have passed since last update.

Windows で wget できないときの解決方法

Last updated at Posted at 2020-06-29

事象

Ansible で Windowsを管理するために、WindowsにWinRMの接続を受け付けるための初期設定スクリプトを
実行しようとwgetしようとしたら失敗したので、その解決方法をまとめました。

PS C:\Users\Administrator> wget https://github.com/ansible/ansible/raw/devel/examples/scripts/ConfigureRemotingForAnsi
wget : 要求は中止されました: SSL/TLS のセキュリティで保護されているチャネルを作成できませんでした
発生場所 :1 文字:1
+ wget https://github.com/ansible/ansible/raw/devel/examples/scripts/Co ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest]WebExc
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

エラー内容

wget : 要求は中止されました: SSL/TLS のセキュリティで保護されているチャネルを作成できませんでした

原因

TLS 1.2 には対応しておらず、エラーとなっていました。

PS C:\Users\Administrator> [Net.ServicePointManager]::SecurityProtocol
Ssl3, Tls
PS C:\Users\Administrator>

対策

下記を実行してTLS1.2に対応させる
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12;

PS C:\Users\Administrator> [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12;
PS C:\Users\Administrator> [Net.ServicePointManager]::SecurityProtocol
Tls12
PS C:\Users\Administrator>

おまけ

OSが対応しているSSL/TSLのバージョン確認

PS C:\Users\Administrator> [enum]::GetNames([Net.SecurityProtocolType])
Ssl3
Tls
Tls11
Tls12
PS C:\Users\Administrator>

TSL1.1とTSL1.2に対応させる場合は下記の様に実行

PS C:\Users\Administrator> [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls11 -bor [Net.SecurityProtocolType]::Tls12
PS C:\Users\Administrator> [Net.ServicePointManager]::SecurityProtocol
Tls11, Tls12
PS C:\Users\Administrator>
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1