今天跟大家分享的是如何使用阿里云服务器搭建科学上网,笔者已经使用了几个月,一直没有出过什么问题,非常稳定,速度也很快,比之前一直在使用的【Zionladder:梯子 来自巴黎的稳定快速安全ShadowsocksR梯子】好用了很多,所以写这个教程推荐给大家,只要跟着操作就可以了,很简单。(对于不想折腾的朋友,也推荐上面zionladder梯子,笔者用了两年总体也不错)
主要使用到的工具包括:香港地区的阿里云服务器 + FinalShell + V2Ray 。
由于笔者演示使用的MacOS系统,Win系统的朋友也是同样的思路,可能有一些不一样的地方,在安装的过程中遇到问题请大家善用谷歌。
准备工作
阿里云+FinalShell
首先,需要购买一个香港地区的阿里云服务器(24元/月),购买绑定域名以及下载使用远程连接工具FinalShell,请查看笔者之前的文章:【超详细:如何从零搭建个人网站】阿里云服务器+LNMP+WordPress,在文章的第2部分进行了详细说明。
注意:阿里云VPN搭建支持的操作系统 (CentOS 7+、Ubuntu 16+、Debian 8+),操作流程是一样的。只是在申请SSL证书的时候,请输入对应系统的Linux命令,其他都是一样的。
解析域名
购买了服务器后,可以在阿里云的控制台中看到自己的公网IP,复制自己的公网IP,然后在搜索框中搜索 云解析 DNS,进入到域名解析页面。
找到自己的域名,点击解析设置。
点击添加记录。主机记录随便输入,记录值输入刚刚复制的公网IP,其他都默认,不用修改。然后点击确认,需要几分钟完成解析。
解析成功后就可以在列表中看到如下信息:
V2Ray介绍
要实现墙内和墙外的网络通信,还需要借助V2Ray这个工具,这是ProjectV的一个核心工具,主要负责网络协议和功能的实现。(详见:官方文档)
我们使用的是V2Ray的单服务器模式,其工作机制如下图所示:
和其它的网络代理工具一样,在一台服务器上配置 V2Ray, 然后在自己的设备上安装 V2Ray 客户端,这样即可实现科学上网,而且一个 V2Ray 服务器可同时支持多台设备(通过使用不同的代理协议实现访问)。
开启防火墙
需要注意的是,V2Ray 对于时间有比较严格的要求,要求服务器和客户端时间差绝对值不能超过 2 分钟,所以一定要保证设备的时间足够准确,不然后面很容易找不到哪里出错。
接着,由上面V2Ray的工作机制可以看到阿里云服务器需要开启防火墙,逐条输入以下命令;
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F
apt-get purge netfilter-persistent
完成防火墙开启之后,在终端输入reboot
,重启服务器。
申请SSL证书
安装socat
首先需要安装socat(一个多功能的网络工具),因为后面安装X-UI后使用v2或者trojan的ssl加密时需要ssl证书,这个时候需要Acme配合NGINX/SOCAT申请证书。
安装方法,如果是安装笔者的教程购买的是Ubantu系统,则使用apt命令;如果是CentOS系统,则使用yum命令。根据不同系统,逐条输入:
apt update -y # Debian/Ubuntu 命令
apt install -y curl # Debian/Ubuntu 命令
apt install -y socat # Debian/Ubuntu 命令
-----
yum update -y #CentOS 命令
yum install -y curl #CentOS 命令
yum install -y socat #CentOS 命令
安装并使用 Acme免费申请Https证书
这一步的原理可以查看这篇文章,讲的很清晰:使用 acme.sh 免费申请 HTTPS 证书
安装Acme
curl https://get.acme.sh | sh
申请证书
需要准备一个邮箱(非必须,只要是真实的邮箱就可以,笔者这里是1359453864@qq.com)以及将域名(前面解析的域名,笔者这里是www.ferryxie.com)解析到服务器的IP(⚠️:这里需要替换成你自己的邮箱和域名,看到输出一串绿色的提示就说明成功了)
~/.acme.sh/acme.sh --register-account -m 1359453864@qq.com
~/.acme.sh/acme.sh --issue -d www.ferryxie.com --standalone
更改证书存放位置(⚠️:这里需要替换成你自己的域名),此步完成后会在VPS root目录下看到证书公钥/root/cert.crt及验证文件/root/private.key。
~/.acme.sh/acme.sh --installcert -d www.ferryxie.com --key-file /root/private.key --fullchain-file /root/cert.crt
安装X-UI面板
使用X-UI面板来搭建代理服务端,好处在于:由于拥有UI界面,信息展示相当直观,更便于新手操作(无需命令行)。X-UI的github项目地址
在命令行中通过以下一键脚本就可以完成安装
bash <(curl -Ls https://raw.githubusercontent.com/vaxilu/x-ui/master/install.sh)
安装完成后默认是通过 域名:54321
(比如笔者就可以通过:www.ferryxie.com:54321)访问面板。
默认用户名和密码都是admin,默认密码不安全,请到面板后台更改用户名和密码(在服务器命令行中输入x-ui即可进入x-ui后台进行设置)。
登录界面如下:
进入后通过 入站列表 — 增加入站节点(左上角的加号),进行节点设置。这里使用trojan协议开启TLS,域名填写刚刚申请了ssl的域名,公钥位置是 /root/cert.crt ,密钥位置是 /root/private.key。
端口选择443(默认也可以),注意由于x-ui没有域名回落,所以我们搭建在同一个端口上的节点只能有一个。
点击添加,完成添加节点。
安装V2Ray客户端
添加节点后,即可在入站列表中看到节点。
点击查看,即可看到节点的各项信息(用于电脑端配置);点击操作-二维码即可看到节点的二维码(用于手机端配置)。
关于各个平台(MacOS、Win、IOS、Android)的客户端代理可以查看这篇文章:Skicat使用指南
电脑端
笔者使用的是MacOS系统,使用的客户端代理软件是ClashX(小猫咪)(Github下载地址)
下载安装后,打开配置文件夹
然后下载这个配置模板[aliyun.yaml] ,下载后保存到上面的配置文件夹中,然后用VScode或者其他编辑器打开,根据自己的配置修改以下参数:
修改保存后,在小猫咪就可以在启动代理,科学上网了。
手机端
手机端笔者是IOS,使用的客户端是Shadowrocket(小火箭)。
由于目前 Shadowrocket 已经被政府要求从中国大陆区的 App Store 移除。请切换至非中国大陆地区(如美国、香港、日本地区),再购买下载(笔者是在Gakki25元购买的)。有需要也可以联系笔者免费分享~
购买完美区账号,并且下载了Shadowrocket后,打开站点二维码就添加站点成功了,点击连接就可以科学上网了。
结语
整个搭建过程看着很麻烦,但其次自己一步一步操作下来会发现其实不难。笔者使用了几个月,特别稳定,流量够用,也很快,YouTube上的4K视频都是秒开,体验很好,真心推荐这么实用的工具。
不危险吗,用阿里
还好,做了CDN,主要用来搜索资料,不做啥,
折腾一上午搭好了代理,手机和Windows端也都能运行了,就是ubuntu server服务器不知道咋搭?
没用过linux界面上的连接工具,可以搜一下
如果IOS没有小火箭的话,能用系统VPN添加使用嘛
你的问题解决了吗
之前搭建的x-ui服务器过期了,想把数据全部迁到另一台怎么迁移
twitter.com / facebook.com 是不是访问不了的呢? 谷歌是可以的
是吗,telegram这些可以用吗
楼主,为什么Google,YouTube进不去,但是有的网站又可以进去呢(成功了,配置错了(╯‵□′)╯︵┴─┴)
成功
为什么我用域名:54321 访问的时候他要求我做备案?