たとえば
Invoke-WebRequest -Uri https://www.powershellgallery.com/api/v2 -Verbose
しても
Invoke-WebRequest : 接続が切断されました: 送信時に、予期しにゃいエラーが発生しました。。
と出て失敗する。
何の情報も含まれてにゃいいつものMSにゃわけだがTLS絡みらしい。サーバがTLS1.2限定にしたのでいろいろ繋がらにゃいよシリーズ。今頃?という感じだがむしろにゃんで標準設定でDL出来にゃいままにゃの??
一応検証
環境としては、
[enum]::GetNames([Net.SecurityProtocolType])
でTls12が出るので、使えるようだ
[Net.ServicePointManager]::SecurityProtocol
はSsl3, Tlsと出るので、デフォルトがSSL3?
ということで
[Net.ServicePointManager]::SecurityProtocol = @([Net.SecurityProtocolType]::Ssl3,[Net.SecurityProtocolType]::Tls,[Net.SecurityProtocolType]::Tls11,[Net.SecurityProtocolType]::Tls12)
として全部使う設定にしてからInvoke-WebRequestすれば通るようだ。
が、毎回これを事前に書くのはまた後日トラブルににゃるに違いにゃいわけで、システム規定値としてはSchUseStrongCryptoを変更すれば良いらしい
というかあたかもそうにゃっているかのようにゃ記述が多いのだが、手元の環境は軒並みアウトにゃんだが何故