1. 为什么需要进程级代理?
在日常的网络调试和安全研究中,我们经常会遇到这样的场景:系统全局代理设置好了,但某些应用就是不走代理;或者需要让特定应用的流量单独走某个通道,而其他应用保持直连。这时候进程级代理就成了救命稻草。
我最早接触proxychains是在一次渗透测试项目中。当时目标网络限制了外部访问,只有特定IP才能连接内网资源。系统全局代理虽然能让我访问内网,但所有流量都走了代理,导致本地开发环境完全无法使用。这时候proxychains就派上用场了——它让我可以精确控制哪些程序走代理,哪些保持直连。
与系统全局代理相比,proxychains有三大优势:
- 精准控制:只为指定进程启用代理
- 协议灵活:支持socks5/http等多种代理协议
- 跨平台:Windows和Linux都能用
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. Kali Linux下的proxychains配置
2.1 环境检查与安装
大多数Kali Linux默认已经安装了proxychains4。你可以用这个命令检查:
bash复制which proxychains4
如果没安装,用apt一键搞定:
bash复制sudo apt update && sudo apt install proxychains4
2.2 配置文件详解
配置文件路径在/etc/proxychains4.conf,修改前记得加sudo。关键配置项有:
- strict_chain:严格按顺序使用代理链
- dynamic_chain:自动跳过失效代理
- proxy_dns:是否代理DNS查询
我建议新手用dynamic_chain模式,容错性更好。代理服务器配置格式如下:
code复制socks5 192.168.1.100 1080
http 10.0.0.1 8080
2.3 实战技巧
测试代理是否生效有个小技巧:
bash复制proxychains4 curl ifconfig.me
这个命令会显示代理服务器的出口IP。如果返回的是你的代理IP,说明配置成功了。
遇到程序卡死的情况,可能是底层协议问题。比如ping用的是ICMP协议,proxychains代理不了。这时候需要用tc
