跳至主要内容

Socat 中继(流量中转教程)

通过Socat一键脚本进行端口转发

Socat:
优点:支持 TCP/UDP 转发。缺点:不支持端口段(多个端口需要开启多个转发)
HaProxy:
优点:支持 TCP 转发,支持 端口段 转发。缺点:不支持 UDP 转发。
iptables:
优点:支持 TCP/UDP 转发,支持 端口段 转发。缺点:配置麻烦,容易出错。

系统要求

Debian / Ubuntu 14.04 +

下载并运行一键脚本:
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/socat.sh && chmod +x socat.sh && bash socat.sh运行脚本:
./socat.sh
选择3. 新增 SoCat后,会提示你依次输入 本地监听端口、欲转发IP、欲转发端口、转发类型
确认之后即可完成中转设置。

安装目录

socat是通过 yum/apt 软件包安装的,所以我就单独搞了一个log日志文件的目录。
日志文件:/etc/socat/socat.log

其他说明

提示wget: unknown host “raw.githubusercontent.com” 之类的错误

这是无法解析我的域名,多半是DNS的问题,请更换DNS为谷歌DNS。
  1. echo "nameserver 8.8.8.8" > /etc/resolv.conf
  2. echo "nameserver 8.8.4.4" >> /etc/resolv.conf

提示 wget: command not found 的错误

这是你的系统精简的太干净了,wget都没有安装,所以需要安装wget。
  1. # Centos系统:
  2. yum install -y wget
  3.  
  4. # Debian/Ubuntu系统:
  5. apt-get install -y wget

更换 apt源,解决安装错误:[错误] Socat安装失败 等等

一些VPS的 apt源太老旧,导致无法安装socat,所以我这里写上如何更换 apt源。所以我只针对这两个系统,Centos的自己去谷歌yum镜像源。
依次输入就可以更换apt源了,下面的代码是以 us美国 为例,你可以自己去这里选一个近一些合适的,然后替换下面代码中 us.sources.list 的 us 。
  1. wget -N --no-check-certificate -P /etc/apt https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/sources/us.sources.list
  2. rm -rf /etc/apt/sources.list
  3. cp /etc/apt/us.sources.list /etc/apt/sources.list

评论