文章列表 使用 COW 搭建 HTTP 代理服务器
Post
Cancel

使用 COW 搭建 HTTP 代理服务器

对我个人来说,使用代理服务器相对于 VPN 来说,最大的优点在于它的兼容性非常好,VPN 有时候会无法连接、自动断开等,但代理服务器不会出现这种情况。特别是升级到 Yosemite 或者 iOS 8 之后,有些路由器和系统的 VPN 服务有冲突,导致 VPN 无法使用,这时使用代理服务器就最好了。

搭建代理服务器需要用到两个开源库,COWshadowsocks。后者是可选的,其实完全可以只使用 COW 来搭建,但对于我来说更喜欢使用它一些。

我们使用 COW 运行在本地,使用 shadowsocks 做二级代理。

如果你只需要在你当前的系统中使用代理服务器,那么你只需要一台国外的服务器即可。

如果你需要将代理服务器分享给他人用,那么你还需要另一台服务器(最好是国内的)。

无论是自己使用还是要分享给他人使用,必须先在国外的服务器搭建好二级代理。具体步骤为:

首先登录你在国外的服务器,然后根据你的系统选择使用下面的命令安装 shadowsocks。

Debian / Ubuntu
1
2
apt-get install python-pip
pip install shadowsocks

如果你添加了 Debian sid 的源,可直接 apt-get install shadowsocks.

CentOS
1
2
3
yum install python-setuptools
easy_install pip
pip install shadowsocks
Windows

下载安装 OpenSSL for Windows。然后类似 Linux 通过 easy_install 或 pip 来安装。 如果你不清楚如何使用 easy_install,也可以直接下载,然后用 python shadowsocks/server.py 代替下文的 ssserver

配置 shadowsocks

创建配置文件:

1
sudo mkdir -p /etc/shadowsocks && vim /etc/shadowsocks/config.json

将下面的内容粘贴进去并保存退出(密码请自行更改):

1
2
3
4
5
6
7
8
9
10
11
{
      "server":"0.0.0.0",
      "server_port":8388,
      "local_address": "127.0.0.1",
      "local_port":1080,
      "password":"mypassword",
      "timeout":300,
      "method":"aes-256-cfb",
      "fast_open": false,
      "workers": 1
}

开始运行 shadowsocks

1
ssserver -c /etc/shadowsocks/config.json

如果没有错误的话,打开你电脑的终端,开始安装 COW。

OS X, Linux (x86, ARM): 执行以下命令

1
curl -L git.io/cow | bash

环境变量 COW_INSTALLDIR 可以指定安装的路径,若该环境变量不是目录则询问用户。

Windows: 点此下载 熟悉 Go 的用户可用 go get github.com/cyfdecyf/cow 从源码安装。

编辑 ~/.cow/rc (Linux,假设你安装在主目录) 或 rc.txt (Windows),使用下面的配置替换原有的内容并保存退出:

1
2
3
4
5
6
# 注意我将其他配置选项全部移除了,仅仅是为了更清晰,当你熟悉之后可以替换回默认的配置选项。
listen = https://127.0.0.1:7777

# 将 password 替换为你国外服务器上 shadowsocks 配置中的密码
# 将 1.2.3.4 替换为你国外服务器的公网 IP 地址
proxy = ss://aes-256-cfb:[email protected]:8388

现在启动 COW:

  • Unix 系统在命令行上执行 cow & (若 COW 不在 PATH 所在目录,请执行 ./cow &)
  • Windows
    • 双击 cow-taskbar.exe,隐藏到托盘执行
    • 双击 cow-hide.exe,隐藏为后台程序执行
    • 以上两者都会启动 cow.exe

现在你的代理服务器地址是 https://127.0.0.1:7777/pac,为浏览器设置代理服务器之后,测试可以访问被墙网站的话,返回到国外的服务器,安装 supervisor 以便让 shadowsocks 在后台运行。

本文采用 CC BY 4.0 授权。

-

iOS 应用如何检测用户截屏

Comments powered by Disqus.