码农pilot的个人博客

0%

在macOS中安装shadowsocks-libev和simple-obfs

最近入手了一台MacBook,自然必备的工具是不能少的。安装过程也遇到了些新的问题,在此记录以备不时之需。

安装 HomeBrew

1
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装 Shadowsocks

1
brew install shadowsocks-libev

安装 simple-obfs

1
brew install simple-obfs

创建配置文件

1
2
cd /usr/local/etc
vim shadowsocks-libev.json

然后将以下内容复制到shadowsocks-libev.json,其中参数根据实际情况修改,plugin位置需要写绝对路径,路径可以通过 which simple-obfs 得到

1
2
3
4
5
6
7
8
9
10
11
12
{
"server":"SERVER_ADDRESS",
"server_port":3128,
"local_address":"0.0.0.0",
"local_port":1080,
"password":"PASSWORD",
"method":"chacha20-ietf-poly1305",
"fast_open":true,
"interface":"en0",
"plugin":"/usr/local/bin/obfs-local",
"plugin_opts":"obfs=http;obfs-host=cloudfront.net"
}

修改自启动配置文件

1
vim /usr/local/opt/shadowsocks-libev/homebrew.mxcl.shadowsocks-libev.plist

修改-c参数的值,将其设为配置文件所在的绝对路径,如/usr/local/etc/shadowsocks-libev.json

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?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.shadowsocks-libev</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/opt/shadowsocks-libev/bin/ss-local</string>
<string>-c</string>
<string>/usr/local/etc/shadowsocks-libev.json</string>
<string>-u</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
</dict>
</plist>

添加开机自启动

首先安装 brew services

1
brew services

然后启用 Shadowsocks 的自启动配置文件

1
brew services start shadowsocks-libev

至此在macOS X上安装Shadowsocks和simple-obfs结束,接下来就可以使用SOCKS或HTTP代理客户端使用该代理。如果要配置系统使用PAC,可以继续进行下列步骤。

安装 nginx

因为macOS的PAC仅接受HTTP位置,所以需要安装nginx来将本机作为一个HTTP服务器。

1
brew install nginx

使用 PAC 文件配置系统代理

使用 ProxyOmega 生成PAC脚本

使用Chrome插件SwitchyOmega生成PAC文件。同时,使用该插件配置Chrome浏览器的代理。

具体生成方法为:

  1. 进入SwitchyOmega中Shadowsocks的配置条目
  2. 在配置好协议、服务器地址、端口、以及Bypass List后,点击右上角的“生成PAC”(Export PAC)
  3. 将生成的 PAC 文件复制到nginx的html目录,如“html/pac/autoproxy.pac”

配置系统代理

将系统代理的代理自动配置(Automatic Proxy Configuration)启用,URL填写http://localhost:8080/pac/autoproxy.pac (此处的端口号需按照你实际的 nginx 配置填写,默认为 8080;服务器路径也需要按照 PAC 文件的实际位置修改,此处的位置与上一步的配置相对应。)

检查是否成功生效

打开Safari,访问一个测试站点,如Google,如能正常访问则说明配置成功。