Linux proxy 设置

本文详细介绍了如何在Ubuntu、CentOS、Docker客户端和守护进程级别设置全局代理,包括修改环境变量、apt源、yum配置、pip代理以及Docker配置文件,确保软件包下载和网络请求通过代理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

全局proxy

更新 /etc/environment

http_proxy=http://10.0.0.1:8080
https_proxy=http://10.0.0.1:8080
ftp_proxy=http://10.0.0.1:8080
no_proxy="127.0.0.1,localhost"

也可以更新 /etc/profile, /etc/environment是设置整个系统的环境,而/etc/profile是设置所有用户的环境,前者与登录用户无关,后者与登录用户有关。
但profile 中写法不一样

export http_proxy=http://10.0.0.1:8080
export https_proxy=http://10.0.0.1:8080
export ftp_proxy=http://10.0.0.1:8080
export no_proxy="127.0.0.1,localhost"

ubuntu apt repo proxy

更新 /etc/apt/apt.conf

Acquire::http::proxy "http://10.0.0.1:8080/";
Acquire::ftp::proxy "http://10.0.0.1:8080/";
Acquire::https::proxy "http://10.0.0.1:8080/";
## 访问这个IP 不走proxy,直接访问,相当于no_proxy
Acquire::http::proxy::192.168.34.77 DIRECT; 

centos yum repo proxy

update /etc/yum.conf

proxy=10.0.0.1:8080
# 如果要认证
proxy=10.0.0.1:8080
proxy_username=aaa
proxy_password=bbb

pip proxy

可以直接读取系统的代理设置。
如果没有设置,可以用下面的方法手工设置一下

export https_proxy=https://username:password@proxyserver:port

然后就可以安装了

pip install somepackage

也可以直接在命令行中直接指定proxy

pip install --proxy=https://[username:password@]proxyserver:port somepackage

current bash shell

export http_proxy=xxxxxx

Docker proxy

User level

On the Docker client, create or edit the file ~/.docker/config.json in the home directory of the user which starts containers.

{
 "proxies":
 {
   "default":
   {
     "httpProxy": "http://127.0.0.1:3001",
     "httpsProxy": "http://127.0.0.1:3001",
     "noProxy": "*.test.example.com,.example2.com"
   }
 }
}

Docker daemon level

  1. Create a systemd drop-in directory for the docker service:
sudo mkdir -p /etc/systemd/system/docker.service.d
  1. Create a file named /etc/systemd/system/docker.service.d/http-proxy.conf that adds the HTTP_PROXY environment variable:
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:80"
Environment="HTTPS_PROXY=https://proxy.example.com:443"
Environment="NO_PROXY=localhost,127.0.0.1,docker-registry.example.com,.corp"
  1. Flush changes and restart Docker
sudo systemctl daemon-reload
sudo systemctl restart docker
  1. Verify that the configuration has been loaded and matches the changes you made, for example:
sudo systemctl show --property=Environment docker
Environment=HTTP_PROXY=http://proxy.example.com:80 HTTPS_PROXY=https://proxy.example.com:443 NO_PROXY=localhost,127.0.0.1,docker-registry.example.com,.corp
代码是工作之余写的,代码分为转发服务器和代理服务器 先说转发服务器 转发服务器其实也可以说成是重定向服务器,比如转发服务器监听80端口,如果有浏览器用户访问服务器IP(浏览器默认请求80端口),转发服务器接收到浏览器用户的请求后,便把浏览器用户的请求重定向到本机的其它端口或者处于同一网段其它机器的指定端口 再说一下代理服务器 先说明一下,我这个代理服务器只能代理指定的网站或其它可以代理的客户,比如建在内网的SVN服务或者有些地方不能访问的外网网站。 代理服务器分为服务器端和客户端,服务器端需要运行在客户端和大家都能访问的外网上,客户端需要放在能访问到需要代理的客户的网络上,也可以放在客户的本机上。 用法: 解压proxy.tar.gz 进入proxy目录,然后make,会生成三个我们需要的程序,transmit(转发服务器)、manager(代理服务器端)、client(代理客户端) 服务器端用法: ./transmit [端口](比如80) ./manager [端口](随便指定) 客户端用法: ./client -i [代理服务器IP]:[端口] -t [客户IP]:[端口] -d [客户域名] 举例: 假如我的外网服务器IP为1.2.3.4,代理的客户为网易(网易域名:www.163.com,IP:202.108.9.33) 服务器端如下运行 ./transmit 80 ./mananger 8000 客户端如下运行 ./client -i 1.2.3.4:8000 -t 202.108.9.33 -d www.163.com 或 ./client -i 1.2.3.4:8000 -t 202.108.9.33:80 -d www.163.com 然后在本机hosts文件(windows是c:windowssystem32driversetchosts linux是/etc/hosts)填加如下一行 1.2.3.4 www.163.com 这时在浏览器里敲www.163.com就可以通过代理服务器访问网易了 当然如果客户是自己申请域名,就可以直接把自己的域名指向1.2.3.4,而不用修改本机hosts文件了
要在 Linux 系统中设置 https_proxy 环境变量,可以按照以下步骤操作: 1. 打开终端,输入以下命令: ``` export https_proxy=your_proxy_address:your_proxy_port ``` 将 your_proxy_address 替换为你的代理服务器地址,your_proxy_port 替换为代理服务器端口号。 例如,如果你的代理服务器地址为 192.168.1.100,端口号为 1080,则命令应该为: ``` export https_proxy=192.168.1.100:1080 ``` 2. 如果你的代理服务器需要用户名和密码进行验证,可以将用户名和密码添加到 https_proxy 环境变量中: ``` export https_proxy=username:password@your_proxy_address:your_proxy_port ``` 将 username 和 password 替换为你的代理服务器用户名和密码,your_proxy_address 和 your_proxy_port 替换为代理服务器地址和端口号。 例如,如果你的代理服务器地址为 192.168.1.100,端口号为 1080,用户名为 user,密码为 pass,则命令应该为: ``` export https_proxy=user:pass@192.168.1.100:1080 ``` 3. 如果你希望设置 https_proxy 环境变量永久生效,可以将上述命令添加到 ~/.bashrc 文件中: ``` echo "export https_proxy=your_proxy_address:your_proxy_port" >> ~/.bashrc ``` 或者,如果你需要用户名和密码进行验证: ``` echo "export https_proxy=username:password@your_proxy_address:your_proxy_port" >> ~/.bashrc ``` 保存文件并关闭。 4. 重新打开终端,使配置生效。 注意:在某些情况下,可能还需要设置 http_proxy 环境变量以确保所有 HTTP 请求也通过代理服务器发送。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值