Danted/Socks5_代理服务_多IP_多出口的配置_3proxy


Danted/Socks5 代理服务_多IP_多出口的配置_3proxy

转载注明来源: 本文链接 来自osnosn的博客,写于 2020-03-01.

danted 的配置文件为 /etc/danted.conf
查看,man danted.conf 中关于 external.rotation 的说明。

比如你有三个网口 eth0, eth1, eth2

  • 让danted监听所有网口的1080
internal: 0.0.0.0 port = 1080 
  • 把三个网口都加入danted的出口。并指定由"系统路由"决定出口。
#external: 0.0.0.0   #这行0.0.0.0的写法不支持
external: eth0
external: eth1
external: eth2
external.rotation: route

  • CentOS 没有dante-server这个包,可以考虑从源码编译安装。或者使用3proxy这个包(在epel中)。
    • 3proxy (github), 3proxy.cfg(3) - Linux man page
    • 在win8.1上用3proxy搭建socks4/4.5/5代理
    • 3proxy.cfg 中,可以开启多个服务,比如 dns代理,http代理,socks5代理,pop3代理。
      每个代理服务的定义通常由语句: auth, flush 开始。
      auth定义新的一种认证方式, flush清除之前的ACL规则(即allow和deny规则)。
    • 3proxy 直接定义多条external, 会自动根据系统route表选取出口。也可以直接写 external 0.0.0.0

  • debian 10 中找不到3proxy的包,可以从源码编译。
    • 从【github_3proxy-archive】, release中下载最新的源码tar.gz, 目前是0.8.13.
    • 解压,ln -s Makefile.Linux Makefile, apt install make gcc, make, make install
      • 出现gcc: error: unrecognized command line option '-mthreads'; did you mean '-pthread',
        则需安装 apt install libpthread-stubs0-dev
    • init.d 脚本为 源码目录的 script/rc.d/proxy.sh (需要修改,有bug) , 需要killall指令支持。apt install psmisc
      如果不是WSL1的系统,可以用systemd的启动脚本。
# /lib/systemd/system/3proxy.service
[Unit]
Description=3proxy Proxy Server
After=syslog.target network.target

[Service]
Type=forking
ExecStart=/usr/local/bin/3proxy /usr/local/etc/3proxy/3proxy.cfg

[Install]
WantedBy=multi-user.target
# 3proxy.cfg 例子
nscache 65536
timeouts 1 5 30 60 180 1800 15 60
users uuu:CL:uupwd
daemon
log /var/log/3proxy.log
logformat "- +_L%t.%.  %N.%p %E %U %C:%c %R:%r %O %I %h %T"
archiver gz /bin/gzip %F
rotate 30
auth iponly
external 0.0.0.0
internal 0.0.0.0
auth strong
flush
#allow uuu * 10.22.33.0/24 *
#parent 1000 socks5+ 10.33.44.55 1080 sss sspwd
allow uuu * * * *
proxy -n -p88
auth strong
flush
#allow uuu * 10.22.33.0/24 *
#parent 1000 socks5 10.33.44.55 1080 sss sspwd
#parent 1000 socks5+ 10.66.77.88 1080 sss sspwd
#多级socks5级联,除最后一个代理外,中间级要用socks5,中间级不能用socks5+
allow uuu
maxconn 20
socks
socks -p1081
  • 3proxy】 的 GitHub 已经是0.9.3, 对于Debian,已经有.deb包下载。
  • deb安装的 3proxy 如果要使用小于1024的端口会失败。
    使用 setcap 'cap_net_raw,cap_net_bind_service+ep' /bin/3proxy 也不行。
    需要修改 /etc/3proxy/3proxy.cfgchroot /usr/local/3proxy proxy proxy 改为 chroot /usr/local/3proxy

  • debian 10 中 tinyproxy 的 upstream 配置,比起 3proxy来说差太多。
    • tinyproxy 1.10.0 支持 upstream socks5 user:pwd@ip:port "xxx.xxx"
      文档中说支持 10.0.0.0/8 的格式。socks5时,实际上并不支持ip段,只支持域名。
      所以要把 IP 当域名配置 如 "10.1.1.1" , "192.168.5.22", 非常不好用。
    • upstream none "10.0.0.0/8" 是支持ip段,和 域名的。

转载注明来源: 本文链接 来自osnosn的博客.


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM