windows系统做linux apt更新代理

1. 遇到的问题:

使用的windows电脑具有双网卡,可以连接外网和内网,linux服务器部署在内网,不能够连接外网;linux离线安装nginx包,非常非常他娘的费劲,折腾了好久仍未完成,于是想window是否可以做linux上网的代理这个方法。没想到,过程出奇的顺利,费的离线安装的劲,真他娘的白费了。

2. 配置方法

设linux 为服务器A, windows为B(貌似又回到了设未知数的五年级)

2.1. 在Linux A上执行:

上建立动态隧道​:

ssh -D 1080 -N user@B_IP  # -D 开启本地 SOCKS5 代理

#1080​​:表示在 A 的本地监听代理端口
​​#user@B_IP​​:通过 SSH 连接到 B,建立隧道

配置 APT 使用 SOCKS 代理​

# 创建代理配置文件
sudo vi /etc/apt/apt.conf.d/99socks

# 添加以下内容
Acquire::http::Proxy "socks5h://127.0.0.1:1080";
Acquire::https::Proxy "socks5h://127.0.0.1:1080";
2.2. 在windows B上开启ssh服务

如何在Windows电脑上启动并配置SSH服务

3. 如何验证

在 Ubuntu A 上测试 HTTP 访问
curl -x socks5h://127.0.0.1:1080 http://archive.ubuntu.com/ubuntu/dists/noble/Release
测试 SSL 连接

正常此处可以获取签名

curl -x socks5h://127.0.0.1:1080 https://security.ubuntu.com/ubuntu/dists/noble-security/Release.gpg

4. 让 modelscope 命令走代理的通用方法

安装依赖:PySocks

modelscope CLI 底层依赖 Python 的 requests 库来发起 HTTPS 请求,而要让 requests 支持 SOCKS5h,需要安装 PySocks:

pip install --upgrade pysocks
设置环境变量

在同一个终端会话里,导出以下环境变量,让所有 HTTP 和 HTTPS 请求都走代理(包括 DNS 查询):

export ALL_PROXY="socks5h://127.0.0.1:1080"
export HTTP_PROXY="socks5h://127.0.0.1:1080"
export HTTPS_PROXY="socks5h://127.0.0.1:1080"
posted @ 2025-04-08 11:42  左青虫右白鼠  阅读(145)  评论(0)    收藏  举报