Fork me on GitHub

自己搭建翻墙服务器

本文不提供翻墙服务,只作为技术交流教程!

2019-6-16更新:今年 6 月初,搬瓦工大面积瘫痪被墙,最近一直在测试其他方法,本文也有点臃肿了,因此,新的服务说明写在新的博客页上:https://jiyiren.github.io/2019/06/16/justmysocks/ 希望能帮到大家。

下面为旧文:

作为程序员,访问谷歌搜索引擎以及 StackOverFlow 还有很多技术站点是常事!

之前一直用 免费XXNet 翻墙,但最近还是网络不稳定,有些国外网站并不能访问。于是于是今天想自己搭建属于自己的翻墙服务器。

2019-5-30更新:鉴于搬瓦工越来越贵,操作还越来越不方便。我同学用了另外一个翻墙服务的,他说用的还不错,价格如下图。官网网址:https://www.ysscloud.co.uk, 订购过程我就不讲了,这个网站订购简单,注册账号就可以购买,并且账号自动给你。另外可以更换 IP。(如果有新的网址我再更新上来,希望能帮到大家)。

一、服务器选择


2019-4-28更新:现在最新搬瓦工里购买的服务,即使通过 问题解决里的 后台控制界面没有 Shadowsocks Server 选项? 解决方法也找不到一键安装 Shadowsocks 服务的页面了。但是假如自己的账号以前是可以的,那么现在依旧可以看到,但最新购买的服务则是没有的了。这种情况只能自己手动安装 Shadowsocks 服务了。这个需要具有一些计算机方面的基础才较好操作。

  1. 首先要知道服务器 SSH 协议端口和密码,这个是远程连接输入指令的连接方式,Windows 大家可以选择 XShell 工具,MacOS 或 Linux 系统,则直接利用 ssh 命令即可。下面为找到自己服务器的 IP,端口,密码 方式(懂得人自动跳过)。

  2. 然后就是连接服务器了,这里我用 MacOS 的 ssh 命令连接示例(XShell 的使用自行百度):

    1
    2
    3
    # 在终端里输入
    $ ssh root@ip -p 12345
    # 然后输入自己的密码
  3. 安装 Shadowsocks:

    1
    2
    3
    yum update
    yum install python-setuptools && easy_install pip
    pip install shadowsocks
  4. 先安装 vim (vim 不会的也请自学吧) 再编辑配置文件:

    1
    2
    yum install vim
    vim /etc/shadowsocks.json
  5. 配置文件 /etc/shadowsocks.json 默认不存在,输入如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    {
    "server":"your_server_ip",
    "server_port":"your_ss_port",
    "password":"yourpassword",
    "timeout":300,
    "method":"aes-256-cfb",
    "fast_open":false,
    "workers": 1
    }

    your_server_ip : 改为你服务器的 ip;
    your_ss_port : 为你的 Shadowsocks 分配端口,不要与 SSH 端口重复,最好大一点(如:29463);
    yourpassword : 为你的 Shadowsocks 分配密码, 其他可默认就行了。

  6. 启动 Shadowsocks,如下命令,即可用 Shadowsocks 工具连接自己的服务了。

    1
    2
    3
    4
    5
    $ ssserver -c /etc/shadowsocks.json -d start
    INFO: loading config from /etc/shadowsocks.json
    2017-01-10 22:38:12 WARNING warning: your timeout 60 seems too short
    2017-01-10 22:38:12 INFO loading libcrypto from libcrypto.so.10
    started
  7. 加入开机自启(非必须)

    1
    2
    3
    4
    5
    $ vim  /etc/rc.d/rc.local
    ## 加入
    /usr/bin/ssserver -c /etc/shadowsocks.json -d start
    ## 加入可执行权限
    chmod +x /etc/rc.d/rc.local

Shadowsocks 各个平台的连接工具见正文部分。

2019-4-19更新:我见评论有人 ip 没有被封,但是一直代理不上,这个问题我也遇到,主要就是更换代理端口的。更改代理端口可以查看 2019-3-2 更新条目。这里主要给出一些如何查找问题的一些方法:

1、给下如何判断自己代理的可用情况。我们用 shadowsocks 工具时,(Windows)右击状态栏上图标,会显示菜单列表,大家通过选择 显示日志 来查看当前服务器 ip 和端口是否可用。如下图 ① 表示显示日志菜单。显示界面如整体图。在开启代理时,如果当前代理不可用,一般一直显示 timeout,大家如果一直是 timeout 则说明代理有问题了(要么是 ip 被封,要么是端口不行,建议测试换下)。而正常情况如 ③ 所示,表示代理服务开启成功。此外也可以从 ④ 看到有流量折线图显示,表示当前你有代理流量从此代理服务器流过。希望对大家有帮助。

2、如何判断当前是 全局代理 还是 自动代理。全局代理浏览器中的所有流量都走代理,包括国内的网站。自动代理(可以通过 shadowsocks 自带的自动代理或者 SwitchyOmega 中的自动切换实现) 则是国内网站不走代理,只有访问不上的才走代理。检测方法就是通过浏览器查看 ip,只要大家访问 http://www.ip138.com/ 会自动检测出 ip。显示为国外的 IP,说明是全局代理,而如果就是你当地的地址则用的就是自动代理。总的来说自动代理相对较好点。

2019-3-2更新:我见到有人的服务器 ip 不能用了,一直连接显示 timeout,这个就是由于 ip 被墙掉了,我的一个服务器 ip 也被墙了,搬瓦工提供检测和更换 ip 功能的:

  • 检测地址:https://kiwivm.64clouds.com/main-exec.php?mode=blacklistcheck 点击 Test Main IP(注意:这个是搬瓦工里的链接地址,所以需要大家登录到搬瓦工的,并且要点击 Service 中我的服务,登录到 KiviVM 管理界面,然后点上面的链接就自动把你账户里的 IP 显示出来并可检测):

  • 出现如下的则是没有被墙的,那如果 ip 还是不能代理,那就是 端口被墙了,把端口改的稍大一点,但不能超过 65535,也不要和 shell 端口重了就行。

  • 出现下面的则是被墙的,显示红色 IP BLOCKED,由于当时没有截图,这里搜了网上的,图片出处见水印。被墙时,下面会提供 Replace Main IP,点击进行 ip 更换,更换完后,大家可以重新安装下 Shadowsocks/ShadowsocksR 服务,然后再重新测试是否通畅,还不通畅,更换端口再尝试下。

2018-12-13更新:目前搬瓦工服务器取消了原来 20美元/年 的配置,如下图所示(可对照文中以前的图),只有 49.99美元/年 的最低配置了,但是在购买的时候,可以选择按半年付款,半年是 25.99美元/半年。另外,大家在购买时可以用搜索引擎搜索 搬瓦工的优惠券,看看能不能减去些费用。假如之前已经购买了 20美元/年 的,现在续费仍然是 20美元/年的,续费情况大家不用担心的。

2018-7-2更新:解决搬瓦工没有 Shadowsocks Server 选项问题,翻到最后 问题解决板块

2018-6-15更新:添加 国内外两个搬瓦工 网站说明,以及 购买流程图文 说明。

2017-10-6更新腾讯云 也支持国外服务器购买了。

下面为正文:

如果大家不能购买国外的服务器,那可以选择国内的服务器提供商(比如上面的腾讯云),但是也需要服务器 所在地区在国外 才能搭建梯子的,因为翻墙实际上就是利用将你本地流量 通过服务器来传递 出去或者传递进来的,这也就是 梯子 由来。

但毕竟国内服务器提供商提供的服务器都很贵的,就上面腾讯云新加坡的服务器要 90 元/月 的,这还是相当贵的。因此很多人还是愿意选择较低费用的国外服务器的。

对于国外服务器供应商,网上大多数人选择 搬瓦工,搬瓦工网址有两个的,一个是国内无法访问的:https://bandwagonhost.com/,另外一个国内可访问的:https://www.bwh8.net/https://www.bwh1.net/(注:这两个地址不定时的会挂掉一个,大家尝试都访问下两个网址,看哪个能访问就用哪个,大家若发现还不能访问,直接用搜索引擎搜索吧),但不管它官网能不能访问,在上面购买的服务器都可以作为梯子用的,因为服务器 IP 在国内都可访问的。个人在国外和国内这两个地址上都买了服务器测试了,目前均是可用的。

上面两个网站都是可以用的,[2016年可以包月] 它它最低的价格为 2.99$/月,大概是 20元RMB/月。并且支持支付宝支付,因此既实惠又便捷。目前 [ 2018.6.15 ] 两个网站都取消了包月了,我截下两个网站的 VPS Hosting 标签页,也就是购买页面给大家看下:

VPS Hosting 标签就在网站标题下面那个:

国内可访问的:https://www.bwh8.net/https://www.bwh1.net/ 购买页面截图 ( 2018.6.15 截图 )

国内无法访问的网站:https://bandwagonhost.com/ 购买页面截图 ( 2018.6.15 截图 )

我们可以看到两个购买页面完全相同的,这里只是为了说明大家可以放心尝试搭建,我之前购买的是国外那个网站,当时是包月的现在就一直在用。而之后我实验室一个师弟也要搭建一个,他就直接买了国内可访问的页面包年的,现在还一直在用的,作为程序员稳定的 Google 真的比什么都重要的!!

目前最低价格是 19.9美元/年(2018-12-13),我当时是 2.99美元/月 ,核算起来我那时可包月的年费是 35.88美元/年,现在的竟然比我那个时候还便宜 😟 ( 我有时间也该换了 ) 。

(2018-12-13)这确实还是很值的,按照现在价格一年也就是 127.752元/年,大概一月 10.646元/月,这个应该对任何人都能够接受的了。相比其他直接 购买翻墙账号 的方式,这种购买服务器自己搭建梯子还是有很多好处的。假如你通过购买翻墙账号来爬梯,你也不知道卖账号的人把那账号给了多少个人用,并且账号管理的主动权一直是在别人手里的。而这种买 VPS,自己搭建翻墙所有资源都是自己享用 (当然你可以选择分享给别人),并且 VPS 也是一个 Linux 服务器,自己还可以把玩下 Linux ,何乐而不为?

(2019-3-2)大家还是关注官网上的价格吧,我那个时候写的价格有的没有了的,大家看价格自己能否接受,另外就是网上有些优惠券的,直接搜索引擎搜 搬瓦工优惠券,看看能否能减一定的价格,希望对大家有帮助。下面的购买流程则基本不会变,供大家参考。

二、服务器购买


注册账号

点击右上角的 Register, 页面如下,按要求填入一些信息,手机号 是不能为空的,记得 勾选那个协议。在选择 State/Region 时没有中国地区,大家可以先选择 Country 那个然后那个 State/Region 就变为可以填写的了:

购买服务器

点击 VPS Hosting 标签,然后出现如下页面:

这个就是服务器产品展示页面,最关键的就是三点,就如上面图片红色字体标注的文字所示:

  1. 带宽流量
  2. 价格
  3. 虚拟化方式

那购买到底是选择 Order KVM 还是 Order OVZ, 这两者的区别就是虚拟化方式的不一样,大家看那截图的底部文字 KVM or OpenVZ ?, 这个就是说明两者的区别的,我截个完整的图如下:

我大概翻译下:

OpenVZ 优势:

  • 支持 IPV6;
  • 更好的 CPU 性能;

KVM 优势:

  • 完全虚拟化;
  • 支持自定义化内核;
  • 支持 Docker;
  • 更好的隔离性;
  • 更好的网络吞吐量;

这要具体选择哪个看你个人需求了,如果你 只是想作一个梯子服务器, 那随便选都是可以的,如果你要用这个服务器做一些特殊的实验或者任务,则看它对应支持的你就选择哪一个就可以了,但 OpenVZ 我没有尝试过,KVM 尝试过了是确定自动化安装时没问题的,因此我推荐大家选择 KVM, 但两个都是可以通过命令安装服务完成翻墙的!

2018.7.2更新本人为了测试那个没有 Shadowsocks Server 选项问题,新买了台服务器,选的是 OpenVZ ,最终也完美实现翻墙

本文讲的是直接用后台提供的菜单按钮来安装,那这里我就选择 Order KVM 了,出现的界面如下,主要显示了 价格 以及 服务器的地区,这里地区正好都是国外的,所以可以默认就行,当然你也可以自己选择自己想要的地区:

然后点击 Add Cart, 也就是 加入购物车 的意思,出现如下界面,这个界面就是 购物车里面 的情况,确认下信息就可以了:

没有问题就点击 Checkout, 也就是 结算付款 的意思,出现如下界面,这里主要是选择 支付方式,我们选择 Alipay 也就是支付宝,然后要 勾选协议,就可以了:

然后点击 Complete Order 也就是 完成交易,出现如下界面,这里可以重新选择支付方式的( 假如自己前面选错方式了的 ),然后点击 Pay now 就可以了:

购买完成 后就可以使用服务器了!

下面主要讲述下 搬瓦工 服务提供商的服务器的配置过程,以达到访问国外被墙网站的功能。

搬瓦工服务器配置

管理服务器:购买完成后,就可以管理自己的服务器了,点击首页左侧标题栏下面的 Client Area

Client_Area

然后点击 Services 菜单下的 My Services,然后点击 KiwiVM Control Panel

Control_Panel

然后就会跳转到服务器管理界面 ( 如下图 ),在这个界面,有各种管理参数说明,以及最重要的服务器 root 密码重置,大家根据自己需要修改配置。说实话这些配置都 不需要看都行,也无需配置 root 密码,因为该管理界面给了 自动安装 shadowsocks 的快捷方式。

Panel

三、安装 shadowsocks 服务


在控制面板中,翻到最下面扩展工具出,点击 Shadowsocks Server, 再点击 安装,执行过程很快,然后会提示安装成功.

Shadowsocks Server

你再次点击 Shadowsocks Server 就会变为如下界面,如果状态显示 Running 则表示 Shadowsocks 服务在运行,否则点击 start 按钮让其运行。这样翻墙服务器就搭建成功了

Shadowsocks Server

四、安装shadowsocks客户端


shadowsocks官网,但可能被墙,可以访问 github 上的项目。

客户端官网截图

shadowsocks客户端github项目,不同客户端版本在对应的项目下。

  • windows 客户端
  • Android shadowsocks 客户端
  • Android shadowsocksR 客户端:我推荐这个,这个图标是粉红色的,并且无广告,这个也是我最近用到的。[2018.12.25 更]
  • Mac下客户端
  • iOS 手机或平板:这个苹果官方已经禁用大陆各种代理软件了,而苹果的强制性从 App Store 下载,导致国内无法下载代理软件。而 ios 越狱也不是普通用户所能接受的,通常的做法是用一个国外的 App Store 账号登录 App Store,然后再搜索如:SuperWingy、ShadowRocket、ShadowLink、SRocket、FastSocks、Sockswitch 等各个应用就可以下载使用了。
    • 注意1: 千万不能将国外账号登录 iCloud 只能登录 App Store,否则那个国外账号有可能被别人从 web 端登录 iCloud 锁定你的设备,这样手机或平板就变砖了
    • 注意2:假如自己有国外账号,那自己充值自己账号没问题,但如果自己找的是共享账号,那么尽量不要下载付费的,不然冲的是别人的账号,自己的银行卡信息也会泄露。建议只下载免费的代理客户端。
    • 说了这么多还没给个找国外账号的方法,我自己测试的(没有打广告),只是提供一个方式,是一个微信公众号的文章,地址,微信的地址有可能会变,我截个图,自己要需要,自己关注取吧(当时我使用的是加拿大的 AppId,使用有效,密码可能随时会变,大家自己关注取吧,做个厚道的人,完全免费的)。
    • 还有一个可用的:用 ios 设备打开连接,按提示操作 https://ss.itren.org/
    • 还有一个相似的:记住千万不要等了 iCloud 就行 https://xn–yets78bbhi.ink/
  • Ubuntu 客户端 安装指南。这里给下我之前网上用的安装命令如下,支持 Ubuntu 14.04 以及以上,安装完后在搜索里搜索 Shadowsocks 就可以打开客户端了:

    1
    2
    3
    sudo add-apt-repository ppa:hzwhuang/ss-qt5
    sudo apt-get update
    sudo apt-get install shadowsocks-qt5

这里我们下载 mac下客户端,下载安装后:

shadowsocks界面

输入第二步中安装 Shadowsocks Server 中的配置结果信息就可以了。然后点击图标栏

Shadowsocks Server配置

勾选自己 配置的服务器,然后选择 自动代理模式 或者 全局代理模式,然后再点击 打开shadowsocks,这样你的电脑上所有软件都可以访问外网了,这里的两个模式讲一下:


1.自动代理模式 : 这个模式表示代理工具仅仅在本地开启一个代理服务,端口在 1080 端口,默认电脑的网络不通过此代理,用户如果想让某个软件上外网,则此软件应该需要有代理接口,比如 Chrom 浏览器要上外网,需要用 代理插件 ( 如: SwitchyOmega ) 选择系统代理或者自己新建一个通过 1080 端口的代理选项,然后选择此代理,就可以上外网了,其他的的软件默认都不通过代理上网的。

2.全局模式 : 这个模式代表直接将本机联网的网卡接口直接代理上我们的翻墙服务了,本机的 所有流量都会通过代理走一下,包括浏览器访问一些国内网站,因此我不建议直接用这个模式的,除非自己的代理服务器不限流量,并且网速还很快。


  • 对于我个人来讲,我还是强烈建议用 1.自动代理模式,因为我们绝大部分都是访问 国内网址,只有少数情况下才要访问国外网站,这时选择浏览器代理那选项就可以了,没必要所有流量都经过代理的。

  • 2.全局模式 可用于个人刚搭好代理服务器后的测试方式,假如用户的浏览器一开始并没有代理插件,那么最简单的检测代理服务器是否可用就是直接用 2.全局模式,浏览器直接 google 就可测试完毕了。

  • 对于代理插件 SwitchyOmega,直接安装这个插件,使用 系统代理选项 就可以代理 1.自动代理模式 了。但这种方式代理上后也是浏览器的所有流量直接通过代理了,如果用户忘记关闭代理了,那么很多流量也白白耗费了。

  • 因此还是有很多人希望 代理插件可以自动判断 要访问的网站是国内可达还是需要翻墙的网站,这样我们就可以一直让浏览器代理上翻墙的服务了,并且还不用怕流量超出。因此,这里借 XX-Net 的官方安装 SwitchyOmega 教程给大家参考,我上面的 SwitchyOmega 仓库里的插件就是从 XX-Net 中拷贝过去的,以便于大家直接下载此插件和插件的恢复文件,使用SwitchyOmega 可自动判断的教程在这:SwitchyOmega自动判断代理。如果实在清楚,大家可以查看官方 shadowsocks配置帮助

浏览器代理配置

五、最终翻墙成功效果:


Facebook: https://www.facebook.com

facebook

Google: https://www.google.com

google

Youtube: https://www.youtube.com

youtube

Facebook客户端:

android_facebook

Instagram客户端:

android_instagram

六、总结

  • 搬瓦工里的服务器还可以自动安装 VPN服务,大家可以自己尝试;
  • 自动代理模式 是根据 PAC 文件,国内的域名不通过代理访问,而国外无法访问的才通过代理访问( 推荐 );
  • 全局代理模式 是所有网络流量全部通过代理服务器访问,这个有时通过自动代理无法连接的网络可以尝试该模式;
  • 手机端下载相应的软件代理软件(安卓的叫 影梭 ),相同配置即可翻墙。

七、问题解决

2018.7.2 更新

后台控制界面没有 Shadowsocks Server 选项?

这个我自己在 [ 2018.7.2 ] 新买了台试试,确实是没有了 Shadowsocks Server 选项了,但我看我以前的老的账户里的那台主机后台管理里,还是有 Shadowsocks Server 选项的:

因此我想,搬瓦工一定是将此功能隐藏了,但是功能页面还在,只是没有提供入口。因此,我就将我旧账户的主机 url 复制出来,拼接在新账号管理界面的后面,然后就确实出来 Shadowsocks Server 界面了。下面是详细说明:

这是没有选项的界面,它的 urlhttps://kiwivm.64clouds.com/main.php

然后我自己拼接的地址和显示界面如下:

Shadowsocks Server 界面,其 urlhttps://kiwivm.64clouds.com/main-exec.php?mode=extras_shadowsocks

ShadowsocksR Server 界面,其 urlhttps://kiwivm.64clouds.com/main-exec.php?mode=extras_shadowsocksr

上面的 ShadowsocksShadowsocksR 是两种服务,我们现在主要用第一个,点击那个 Install Shaodowsocks Server 等待几分钟就安装好了!使用和上面教程介绍的一样。然后 刷新 该界面,就会显示你的 翻墙密码 了,这个界面大家只要第一次把密码记住就行了,以后几乎不再需要这个页面了。当然大家可以把这个 url 收藏,以后要改密码就可以在上面修改翻墙密码了!

刷新成功页面:

参考:

苟且一下