--- title: "Ubuntu Server科学上网" type: source tags: [ubuntu, 科学上网, v2rayn, proxychains, docker, 代理] date: 2025-09-15 --- ## Source File - [[raw/Home Office/Ubuntu Server科学上网.md]] ## Summary - 核心主题:在 Ubuntu Server 上配置科学上网,实现 Docker/Git/终端命令通过代理访问外网 - 问题域:服务器层面科学上网配置 - 方法/机制:V2RayN 提供本地 SOCKS5 代理,ProxyChains 劫持任意命令,Docker Daemon 通过 systemd 代理配置 - 结论/价值:系统级代理配置覆盖所有场景 ## Key Claims - 终端命令走代理:`proxychains4 `,需修改 /etc/proxychains4.conf 添加 socks5 127.0.0.1 10808 - Git 全局代理:`git config --global http.proxy 'socks5://127.0.0.1:10808'` - Docker Daemon 代理:修改 /etc/systemd/system/docker.service.d/http-proxy.conf,重载 systemd - Docker 容器内代理:通过 docker-compose.yml 的 environment 或 ~/.docker/config.json 全局配置 - 代理验证:`curl -x socks5h://127.0.0.1:10808 -v https://www.google.com` ## Key Quotes > "socks5h://(注意加 h)表示让代理服务器去解析域名,防止本地 DNS 污染" — SOCKS5 代理的关键参数 ## Key Concepts - [[ProxyChains]]:劫持 Linux 动态链接器,强制任意命令走代理 - [[SOCKS5]]:支持认证的代理协议 - [[Docker Daemon]]:Docker 守护进程的代理配置机制 - [[V2RayN]]:SOCKS5 代理提供者 ## Key Entities - [[Ubuntu]]:服务器操作系统 ## Connections - [[V2RayN]] ← provides ← [[SOCKS5]] - [[ProxyChains]] ← intercepts ← [[SOCKS5]] - [[Docker Daemon]] ← uses ← [[SOCKS5]] ## Contradictions - 无