Mac设置Shadowsocks代理

什么是Shadowsocks



  Shadowsocks使用Socks5代理,用于保护网络流量。在中国大陆被广泛用于突破防火长城(GFW),以浏览被封锁的内容。在ss之前,通过SSH隧道的方式进行翻墙,但是GFW能够检测到,然后被墙。简单的说通过ss,就能不被GFW墙掉。

  下面ss的安装等教程就不再展示了,google一下都能够搜索到。本文主要讲一下Mac终端中使用ss代理。

安装polipo


$ brew install polipo

如果没有安装homebrew,自行查看官网文档

修改plist文件


$ ln -sfv /usr/local/opt/polipo/*.plist ~/Library/LaunchAgents

设置每次启动登录polipo

$ vim ~/Library/LaunchAgents/homebrew.mxcl.polipo.plist

设置socksParentProxy,如下是已经编辑好的plist文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>homebrew.mxcl.polipo</string>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/local/opt/polipo/bin/polipo</string>
<string>socksParentProxy=localhost:1080</string>
</array>
<!-- Set `ulimit -n 65536`. The default OS X limit is 256, that's
not enough for Polipo (displays 'too many files open' errors).
It seems like you have no reason to lower this limit
(and unlikely will want to raise it). -->
<key>SoftResourceLimits</key>
<dict>
<key>NumberOfFiles</key>
<integer>65536</integer>
</dict>
</dict>
</plist>

启动polipo


$ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.polipo.plist
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.polipo.plist

验证是否配置成功


$ curl ip.gs 当前 IP:xx.xx.xx.xx 来自:中国浙江杭州 电信
$ http_proxy=http://localhost:8123 curl ip.gs 当前 IP:160.16.206.181 来自:日本东京都东京

简化配置(设置别名)



  将下面命令保存到 ~/.bash_profile 文件中;如果使用Oh My Zsh,保存在 ~/.zshrc 文件中。 然后source一把即可。

$ alias hp="http_proxy=http://localhost:8123"

  此后可以通过别名操作。

$ hp curl ip.gs 当前 IP:160.16.206.181 来自:日本东京都东京

Git设置Proxy



是不是发现下载github的比较慢?那就为git设置ss代理吧。