UP | HOME

proxychains

Table of Contents

1 概述

proxychains-ng 是一个 UNIX 程序,它通过预加载的 DLL(dlsym(),LD_PRELOAD)hook 动态链接程序中与网络相关的 libc 函数,然后通过 SOCKS4a/5 或 HTTP 代理重定向连接。它仅支持 TCP(不支持 UDP/ICMP 等)。

它的工作方式基本上是 HACK;所以有可能无法适配您的程序,特别是脚本或启动许多进程的程序,例如后台守护程序或使用 dlopen()进行加载“模块”。

它应与简单的已编译(C/C++)动态链接程序一起使用。

如果您的程序不适用于代理链,请考虑使用 基于 iptables 的解决方案;这要强大得多。

支持的平台:Linux,BSD,Mac。

1.1 什么时候使用呢?

  • 当从局域网连接“外部”的唯一方法是通过代理服务器。
  • 从筛选出端口的限制性防火墙后面出来。
  • 要在链中使用两个(或多个)代理: 如:your_host <-> proxy1 <-> proxy2 <-> target_host
  • “代理”某些没有内置代理支持的程序(例如 telnet)
  • 通过代理从外部访问 Intranet。
  • 在代理后面使用 DNS。
  • 访问隐藏的洋葱服务。

1.2 一些很酷的功能:

  • 该程序可以在同一链中混合使用不同的代理类型如:your_host <-> socks5 <-> http <-> socks4 <-> target_host
  • 支持不同的链路选项
    • 随机顺序
    • 确切顺序
    • 动态顺序(智能从链中排除死代理)
  • 可以将其用于大多数 TCP 客户端应用程序,甚至可以用于网络扫描程序,只要它们使用标准的 libc 功能。基于 pcap 的扫描不起作用。
  • 可以将其与 squid,sendmail 等服务器一起使用。
  • 通过代理解析 DNS。

2 安装

2.1 源码

需要一个有效的 C 编译器,最好是 gcc

  ./configure --prefix=/usr --sysconfdir=/etc
  make && make install && make install-config (installs proxychains.conf)

如果不安装,则可以使用 build 目录中的 proxychains:

2.2 debian

apt install proxychains4

3 配置

proxychains 按以下顺序查找配置文件:

  1. 环境变量 PROXYCHAINS_CONF_FILE 中列出的文件或 作为-f 参数提供给 proxychains 脚本或二进制文件。
  2. ./proxychains.conf
  3. $(HOME)/.proxychains/proxychains.conf
  4. $(sysconfdir)/proxychains.conf ,通常是 /etc/proxychains.conf

4 使用

proxychains4 -f src/proxychains.conf telnet google.com 80
prxoychaing4 open -a "App"

Author: liushangliang

Email: phenix3443+github@gmail.com

Created: 2020-07-15 三 10:27