跨多个应用程序自动配置代理,无需明文密码

跨多个应用程序自动配置代理,无需明文密码

比这里描述的帖子更普遍:在 rc 文件中使用 bash 功能

我想为所有/多个应用程序设置适当的代理配置,包括但不限于:snap/apt/cpan/pip/wget/curl。此外,我想避免我的代理密码以纯文本形式显示在任何地方。如何/可能实现这一目标?

这个帖子意味着每个系统进程都将通过/etc/environment.我还没有取得这样的成功(请参阅编辑),因此我目前假设所有代理配置都必须针对每个应用程序进行。关于链接帖子,以及 的使用secret-tool,在我看来,这假设定义代理配置的文件可以计算 bash 表达式(这不是我使用.curlrc/.wgetrc文件的经验)。

编辑:

其内容etc/environment等于:

http_proxy=http://user:[email protected]:80
https_proxy=http://user:[email protected]:80

我的文件的内容.curlrc等于:

proxy=http://user:[email protected]:80

我可以跑:

curl https://unix.stackexchange.com/posts/752654/edit --output test.html
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 70115    0 70115    0     0    99k      0 --:--:-- --:--:-- --:--:--   99k

其生成test.html符合预期。

如果不更改文件内容/etc/environment和删除.curlrc文件,下载将无限期挂起:

curl https://unix.stackexchange.com/posts/752654/edit --output test.html
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:25 --:--:--     0

我在 WSL 上使用 RHEL。

相关内容