VPS搭建代理完全指南:从HTTP到SOCKS5的手把手教程

moduo320
2026-06-25 / 0 评论 / 0 阅读 / 正在检测是否收录...

最近总有人问我:"我在VPS上搭了代理,但速度很慢,是不是哪里没配好?"

代理这个东西,看似简单——装个软件、跑起来就能用——但实际上里面的门道不少。协议选择、性能优化、安全配置,每一个环节都能影响最终体验。

我玩VPS代理玩了七八年,从早期的 Squid 到现在的各种协议,都折腾过。今天就把这些经验整理出来,给大家一份完整的 VPS 代理搭建指南。

目录

什么时候需要用VPS做代理?

先搞清楚场景。用VPS做代理,通常就这几个原因:

  1. 科学上网 — 最常见的需求,不多解释
  2. API代理中转 — 绕过某些API的地区限制或速率限制
  3. 爬虫代理池 — 用多个VPS做代理轮换,防止被封IP
  4. 内网穿透 — 通过VPS代理访问内网服务
  5. CDN加速 — 用VPS做反向代理加速网站访问

不同场景需要的配置和方案完全不同。搞清楚你要做什么,再选择方案。

服务器机柜与设备

常见的代理方案对比

方案 协议 配置难度 速度 安全性 推荐场景
Squid HTTP/HTTPS ⭐⭐ ⭐⭐⭐ ⭐⭐ 网页加速、缓存代理
Dante SOCKS5 ⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐ 科学上网、通用代理
Nginx HTTP/HTTPS ⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐⭐ 反向代理、API中转
HAProxy TCP/HTTP ⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐ 负载均衡、高性能代理
Shadowsocks 自定义 ⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐⭐ 科学上网(需要客户端)

我的建议: 如果不是有特殊需求,SOCKS5(Dante)是最通用的选择。它支持TCP和UDP,几乎所有软件都能配置使用。

方案一:HTTP代理(Squid)

Squid 是最老牌的HTTP代理软件,优点是稳定、功能强大,而且支持缓存。

安装和配置

# 安装 Squid
apt install squid -y

# 备份原始配置
cp /etc/squid/squid.conf /etc/squid/squid.conf.bak

编辑配置文件 /etc/squid/squid.conf

# 监听端口(修改默认的3128为自定义端口)
http_port 8888

# 允许的网段(按需修改)
acl localnet src 0.0.0.0/0

# 允许所有通过
http_access allow localnet
http_access deny all

# 关闭缓存(如果是做代理而非缓存)
cache deny all

启动并验证:

systemctl restart squid
systemctl enable squid

# 验证端口是否监听
netstat -tlnp | grep 8888

优点: 配置简单,支持缓存,兼容性好
缺点: 只支持HTTP协议,不支持UDP,不适合游戏和视频通话

方案二:SOCKS5代理(Dante)

Dante 是目前最流行的SOCKS5代理软件,配置相对简单,功能强大。

安装和配置

# 安装 Dante
apt install dante-server -y

编辑配置文件 /etc/danted.conf

logoutput: /var/log/danted.log

# 监听端口
internal: 0.0.0.0 port = 1080

# 出口网卡
external: eth0

# 认证方式(无认证,配合防火墙IP白名单使用)
socksmethod: none
clientmethod: none

# 允许的客户端
client pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
}

# SOCKS5 规则
socks pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
    protocol: tcp udp
}

启动:

systemctl restart danted
systemctl enable danted

# 检查端口
netstat -tlnp | grep 1080

安全提醒: 默认配置是没有任何认证的,任何人知道你的IP和端口都能使用。必须配合防火墙限制IP访问。

配置防火墙

# 只允许特定IP访问1080端口
iptables -A INPUT -p tcp --dport 1080 -s 你的家庭公网IP -j ACCEPT
iptables -A INPUT -p tcp --dport 1080 -j DROP

或者使用密码认证(需要编译安装额外模块),但最简单的做法就是防火墙IP白名单。

方案三:Nginx反向代理

Nginx 反向代理适合做API中转、网站加速等场景。

配置示例

# 安装 Nginx
apt install nginx -y

编辑配置文件 /etc/nginx/sites-available/proxy

server {
    listen 8080;

    location / {
        # 代理到目标服务器
        proxy_pass https://目标API地址;

        # 传递请求头
        proxy_set_header Host $proxy_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        # 超时设置
        proxy_connect_timeout 30s;
        proxy_read_timeout 60s;
        proxy_send_timeout 60s;
    }
}

优点: 功能强大,支持HTTPS、负载均衡、流量控制
缺点: 配置相对复杂,需要一定的Nginx基础

代理性能优化指南

不管你用哪种方案,下面的优化都能显著提升代理性能:

1. 开启BBR

这个我之前说过,BBR对网络传输的提升非常明显:

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p

2. 调整系统参数

# 在 /etc/sysctl.conf 中添加
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
net.core.somaxconn = 4096

# 生效
sysctl -p

3. 选择最优的机房

这个很关键。代理的速度,70% 取决于线路,30% 取决于配置。

  • 面向国内用户:选 CN2 GIA 线路的VPS
  • 面向海外用户:选离目标地区近的机房

安全注意事项

代理服务器直接暴露在公网上,是黑客的重点关注对象。以下安全措施一定要做好:

1. 防火墙是底线

不管是哪种代理方案,一定配合防火墙使用。只允许可信的IP访问代理端口。

2. 不使用默认端口

把端口改成非标准端口(如 1080 改成 10080-65535 之间的随机端口),能挡住大量自动扫描。

3. 启用认证

如果代理需要长期使用,最好启用用户名密码认证。Dante 需要配合 libpam 使用,Nginx 可以配置 basic auth。

4. 监控异常流量

定期检查代理的日志文件,看有没有异常的大流量或者异常的连接IP:

# 查看连接最多的IP
netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head -10

5. 及时更新软件

定期更新 Squid、Dante、Nginx 等软件到最新版本,修补已知漏洞。

总结

最后,给不同需求的用户一个简单直接的建议:

  • 想要通用代理、兼容各种软件 → Dante SOCKS5,配合防火墙IP白名单
  • 需要缓存加速、浏览网页 → Squid HTTP代理
  • 做API中转或网站加速 → Nginx 反向代理
  • 追求兼容性和加密 → Shadowsocks(需要客户端配合)

不管你选择哪种方案,记住三点:

数据安全与网络

  1. 安全第一 — 防火墙是必须的,代理端口不能对所有人开放
  2. 线路决定体验 — 再好的配置也弥补不了垃圾线路
  3. 做好监控 — 定期检查日志,及时发现异常

代理这个东西,配置起来不难,但要配得好、用得稳,还是需要一些心思的。

希望对你有帮助。

(全文完)

0

评论 (0)

取消