Linux代理程序使用指南
方案1:goproxy (推荐)
快速安装
# 下载并安装
wget https://github.com/snail007/goproxy/releases/download/v13.3/proxy-linux-amd64.tar.gz
tar -xzf proxy-linux-amd64.tar.gz
sudo mv proxy /usr/local/bin/
sudo chmod +x /usr/local/bin/proxy
基础使用
# 启动代理服务
proxy http -t tcp -p "0.0.0.0:80" --forever
# 带内容替换的代理
proxy http -t tcp -p "0.0.0.0:80" --forever \
--replace "andys-dandy-site-4c8fd6.webflow.io" "pog.cxhy.cn"
后台运行
# 使用nohup
nohup proxy http -t tcp -p "0.0.0.0:80" --forever > proxy.log 2>&1 &
# 使用screen
screen -S proxy
proxy http -t tcp -p "0.0.0.0:80" --forever
# Ctrl+A+D 退出screen
方案2:mitmproxy
安装
wget https://snapshots.mitmproxy.org/9.0.1/mitmproxy-9.0.1-linux.tar.gz
tar -xzf mitmproxy-9.0.1-linux.tar.gz
sudo mv mitmproxy /usr/local/bin/
使用
# 基础代理
mitmproxy -p 8080
# 透明代理
mitmproxy --mode transparent -p 8080
方案3:使用Docker (最简单)
创建docker-compose.yml
version: '3'
services:
proxy:
image: nginx:alpine
ports:
- "80:80"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf
restart: always
创建nginx.conf
events {
worker_connections 1024;
}
http {
upstream backend {
server andys-dandy-site-4c8fd6.webflow.io:443;
}
server {
listen 80;
server_name pog.cxhy.cn;
location / {
proxy_pass https://backend;
proxy_set_header Host andys-dandy-site-4c8fd6.webflow.io;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
sub_filter 'andys-dandy-site-4c8fd6.webflow.io' 'pog.cxhy.cn';
sub_filter_once off;
}
}
}
启动
docker-compose up -d
方案4:一键安装脚本
使用自动安装脚本
# 下载脚本
wget https://raw.githubusercontent.com/your-repo/setup_proxy.sh
chmod +x setup_proxy.sh
sudo ./setup_proxy.sh
常见问题解决
1. 端口被占用
# 查看端口占用
netstat -tlnp | grep :80
# 杀死占用进程
sudo kill -9 <PID>
2. 权限问题
# 给执行权限
sudo chmod +x /usr/local/bin/proxy
# 检查防火墙
sudo ufw status
sudo ufw allow 80
3. 服务无法启动
# 查看日志
sudo journalctl -u goproxy -f
# 手动测试
proxy http -t tcp -p "0.0.0.0:80" --forever
监控和管理
查看服务状态
# 检查进程
ps aux | grep proxy
# 查看端口
netstat -tlnp | grep :80
# 查看日志
tail -f proxy.log
停止服务
# 停止goproxy
sudo systemctl stop goproxy
# 或者杀死进程
pkill -f proxy
性能优化
1. 添加缓存
proxy http -t tcp -p "0.0.0.0:80" --forever --cache
2. 限制连接数
proxy http -t tcp -p "0.0.0.0:80" --forever --max-conn 1000
3. 启用压缩
proxy http -t tcp -p "0.0.0.0:80" --forever --gzip
安全建议
- 使用非root用户运行
- 配置防火墙规则
- 定期更新程序版本
- 监控访问日志
- 备份配置文件
故障排除
检查网络连接
# 测试目标网站
curl -I https://andys-dandy-site-4c8fd6.webflow.io
# 测试代理
curl -I http://pog.cxhy.cn
查看详细日志
# 启用调试模式
proxy http -t tcp -p "0.0.0.0:80" --forever --debug