Anda mungkin mendapatkan error Install-Module di PowerShell yang mengatakan Unable to Download from URI saat anda mencoba menghubungkan ke PowerShell Repository atau menjalankan cmdlet Install-Module untuk menginstall package di komputer Windows 10 atau Windows 11 anda. Jika deminikan, maka artikel ini memberikan solusi yang paling sesuai untuk mengatasi masalah ini.
Ketika error ini terjadi, anda akan mendapatkan output di sepanjang baris serupa seperti berikut ini.
WARNING: Unable to download from URI ‘https://go.microsoft.com/fwlink/?LinkID=627338&clcid=0x409’ to ”.
WARNING: Unable to download the list of available providers. Check your internet connection.
PackageManagement\Install-PackageProvider : No match was found for the specified search criteria for the provider ‘NuGet’. The package provider requires ‘PackageManagement’ and ‘Provider’ tags. Please check if the specified package has the tags.
NoMatchFoundForProvider,Microsoft.PowerShell.PackageManagement.Cmdlets.InstallPackageProvider
PackageManagement\Import-PackageProvider : No match was found for the specified search criteria and provider name ‘NuGet’. Try ‘Get-PackageProvider -ListAvailable’ to see if the provider exists on the system.
NoMatchFoundForCriteria,Microsoft.PowerShell.PackageManagement.Cmdlets.ImportPackageProvider
Masalah ini mungkin terjadi karena meskipun Azure dan Office 365 telah dipindahkan ke TLS 1.2, beberapa komponen lama lainnya secara default biasanya tidak menggunakan TLS 1.2. Jadi, ini adalah salah satu kasus dimana PowerShell menggunakan konfigurasi TLS yang salah.
Memperbaiki Install-Module PowerShell Error Unable to Download from URI
Masalah ini terjadi saat PowerShell mencoba terhubung ke repository NuGet menggunakan protokol TLS/SSL lama bukan TLS 1.2 saat ini atau TLS 1.3 yang lebih baru. Jadi, jika anda dihadapkan dengan error Install-Module PowerShell Unable to Download from URI, maka anda dapat mencoba beberapa solusi berikut di bawah ini untuk menyelesaikan masalah pada system Windows 10 atau Windows 11 anda.
1. Periksa dan Update Versi PowerShell
Untuk mengatasi error Install-Module PowerShell Unable to Download from URI dengan mudah dan cepat pada system Windows 10 atau Windows 11 anda, anda dapat terlebih dahulu memeriksa dan mengupdate versi PowerShell yang terinstall di komputer anda. Jika versi PowerShell anda adalah 5.1.14xx atau lebih lama, maka update PowerShell.
Secara default, versi PowerShell yang lebih lama menggunakan SSL 3.0 dan TLS 1.0 untuk membuat koneksi HTTPS yang aman ke repositoriy. Setelah anda mengupdate PowerShell dan anda menjalankan cmdlet Install-Module untuk menginstall package pada perangkat anda tetapi error muncul kembali, maka anda dapat melanjutkan ke saran berikutnya.
Untuk memeriksa versi PowerShell anda, jalankan perintah berikut ini di PowerShell.
$PSversionTable
Selain perintah di atas, anda juga dapat menggunakan salah satu dari dua perintah berikut ini untuk menemukan versi PowerShell anda.
get-host|Select-Object version
$host.version
PowerShell diupdate bersamaan dengan update Windows dan yang anda butuhkan hanyalah mengupdate Windows. Namun, jika anda sengaja untuk tidak mengupdate Windows anda karena alasan tertentu, maka anda juga dapat mendownload PowerShell versi terbaru langsung dari GitHub dengan mengikuti
link ini dan menginstallnya di komputer anda. Link untuk platform lain juga tersedia jika anda membutuhkannya.
2. Atur PowerShell untuk Menggunakan TLS 1.2
Sekarang setelah anda mengupdate PowerShell di system anda tetapi masih mendapatkan error, maka anda dapat memeriksa dan memastikan PowerShell diatur untuk menggunakan TLS 1.2 atau yang lebih baru. Ikuti langkah-langkah berikut ini untuk melakukannya.
- Di jendela PowerShell, masukan perintah di bawah ini dan tekan Enter untuk menampilkan daftar protokol yang digunakan untuk koneksi.
[Net.ServicePointManager]::SecurityProtocol
- Anda juga dapat memeriksanyadi Internet Options. Disana, alihkan ke tab Advanced dan periksa TLS TLS 1.2 diberi ceklist atau tidak.
- Seperti yang telah disebutkan, repository Microsoft memerlukan TLS 1.2 atau TLS 1.3 dari mesin client Windows 10 atau Windows 11, jadi jika output menunjukkan PowerShell menggunakan SSL lama 3.0, TLS 1.0, atau TLS 1.1, maka anda sekarang dapat menjalankan perintah dibawah ini untuk mengatur PowerShell agar menggunakan TLS1.2 atau yang lebih baru.
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
- Setelah selesai, anda dapat menginstall module PowerShell menggunakan Install-Module tanpa masalah.
Namun, cmdlet di atas adalah solusi sementara untuk sesi PowerShell tertentu. Jadi, untuk membuat pengaturan ini permanen agar tidak mengubah versi protokol koneksi HTTPS secara manual setiap kali, anda dapat mengatur TLS 1.2 sebagai protokol koneksi default di .NET Framework 4.5 dan yang lebih baru dengan menjalankan perintah berikut untuk mengedit registry (pastikan untuk
membackup registry atau
membuat system restore point terlebih dahulu).
- Untuk 64 bit .NET Framework versi 4 dan di atasnya
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\.NetFramework\v4.0.30319' -Name 'SchUseStrongCrypto' -Value '1' -Type DWord
- Untuk 32 bit .NET Framework versi 4 dan di atasnya
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\.NetFramework\v4.0.30319' -Name 'SchUseStrongCrypto' -Value '1' -Type DWord
Setelah selesai, restart PowerShell dan periksa protokol yang didukung. Sekarang TLS 1.2 akan selalu digunakan untuk koneksi PowerShell dan anda dapat menginstall module apapun dengan NuGet.
Sekian artikel saya kali ini, semoga bermanfaat dan membantu anda dalam memperbaiki Install-Module PowerShell error Unable to Download from URI di Windows 10 atau Windows 11 anda. Jangan lupa tinggalkan komentar anda dibawah ini untuk berbagi pemikiran serta pengalaman anda dalam mengikuti tutorial ini. Terimakasih dan GBU. BERSATU LAWAN COVID-19!!
Post a Comment for "Memperbaiki Install-Module PowerShell Error Unable to Download from URI"