Linux 上的 Powershell Core 通过代理连接问题

Linux 上的 Powershell Core 通过代理连接问题

我无法让 Linux 上的 Powershell Core 6.1.0 成功访问代理。我们的公司代理使用基于 IP 的身份验证,而不是基于用户的身份验证。

因此,当我尝试 Invoke-WebRequest 一个错误的 URL 时,它将返回拒绝该 URL 的代理服务器的 HTML。当我尝试 iwr 一个真正允许的 URL(例如,我可以从 Ubuntu 服务器上的 Firefox 浏览的 URL)时。

这一切都是尝试从 Powershell Gallery 下载模块,同样可以从 VM 进行浏览,但即使知道使用代理,也无法从 powershell 访问图库。

我在 Invoke-WebRequests 上收到一个常见错误“没有这样的设备或地址”。

答案1

为了正确通过代理,我建议您从 Linux 层导出代理环境变量。这样:

export HTTP_PROXY=http://your-proxy:3128 
export HTTPS_PROXY=http://your-proxy:3128

请小心 uri,不要在代理的末尾放置尾随的 /(参见这个帖子

然后,您应该能够在 PowerShell 层上使用以下命令设置默认存储库:

Register-PSRepository -Default

此命令在我的 Windows 会话中不起作用,但在 Linux 的 PowerShell 控制台上起作用

最后你可以尝试最后一个命令这个话题我在 PowerShell 崩溃之前尝试过类似

如果要注册默认 PSRepository PSGallery,请使用 Register-PSRepository -Default

相关内容