如何使用终端在 Ubuntu Server 或 Minimal(CLI)版本中配置代理设置?
答案1
CLI Ubuntu/Server 中的系统范围代理必须设置为环境变量。
- 使用(或您喜欢的编辑器)打开该
/etc/environment
文件vi
。此文件存储在启动时初始化的系统范围变量。 添加以下几行,并进行适当修改。您必须同时使用大写和小写字母,因为(不幸的是)某些程序仅查找其中一种:
http_proxy="http://myproxy.server.com:8080/" https_proxy="http://myproxy.server.com:8080/" ftp_proxy="http://myproxy.server.com:8080/" no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com" HTTP_PROXY="http://myproxy.server.com:8080/" HTTPS_PROXY="http://myproxy.server.com:8080/" FTP_PROXY="http://myproxy.server.com:8080/" NO_PROXY="localhost,127.0.0.1,localaddress,.localdomain.com"
apt-get
、aptitude
等在与 正常使用时不会遵循环境变量。因此,请分别配置它们;在 中sudo
创建一个名为 的文件,并包含以下内容:95proxies
/etc/apt/apt.conf.d/
获取::http::proxy "http://myproxy.server.com:8080/"; 获取::ftp::proxy "ftp://myproxy.server.com:8080/"; 获取::https::proxy "https://myproxy.server.com:8080/";
最后,注销并重新启动以确保更改生效。
答案2
如果您有身份验证代理,则 URL 会有所不同。而不是:
"http://myproxy.server.com:8080/"
您将拥有:
"http://user_name:[email protected]:8080/"
请注意,这些仍然是 URL,因此密码(可能还有用户名)必须是URL 已编码。
例如,用户名muru
和密码)qv3TB3LBm7EkP}
如下:
"http://muru:)qv3TB3LBm7EkP%[email protected]:8080/"
可以通过多种方式实现:
- 有几个用于编码的网站:
- 程序化:
在紧急情况下,你可以使用man url
查看哪些字符需要编码:
An escaped octet is encoded as a character triplet,
consisting of the percent character "%" followed by
the two hexadecimal digits representing the octet code...
八位字节代码可在man ascii
。
答案3
Proxy Environment Variables:
http_proxy:HTTP 流量的代理服务器
https_proxy:HTTPS 流量的代理服务器
ftp_proxy:FTP 流量的代理服务器
no_proxy:不应使用代理的 IP 地址或域名模式
除 no_proxy 之外,每个代理设置的值都使用相同的模板。
proxy_http=username:password@proxy-host:port
临时设置代理:
export HTTP_PROXY=user:[email protected]:8080
持久代理设置:使用vim ~/.bash_profile
打开 bash 设置文件,然后将以下几行放入其中
export http_proxy=username:[email protected]:8080
export https_proxy=username:[email protected]:8081
export no_proxy=localhost, 127.0.0.1, *.my.lan
用于source ~/.bash_profile
应用更改