---
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 <command>`，需修改 /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
- 无
