Proxychains遇到问题,基本无法使用

用Shadowsocks用的很欢,却发现在Terminal里没有生效,即使开启里系统代理也不行。

那么使用proxychains4,但是总是失败。

这里找到一堆老外在讨论,大意是:

问题是由System Integrity Protection(SIP)机制产生的。

原理:SIP会保护 /usr/bin//System等目录下的程序,如果使用proxychains4执行的命令是在这些目录下的话,会被SIP拒绝。

有如下几个办法:

  1. 关闭SIP
  2. SIP运行在非debug模式下
  3. proxychains4执行的命令移到其他目录,例如用户目录~/xxx/

关掉SIP会有副作用:OS X升级会失败,必须再打开SIP才能升级成功。

所以最好是让SIP运行在非Debug模式下,步骤为:

  1. 重启Mac,按住Option键进入启动盘选择模式,再按⌘ + R进入Recovery模式。
  2. 实用工具(Utilities)-> 终端(Terminal)。
  3. 输入命令csrutil enable --without debug运行。
  4. 重启