v2ray+nginx科学上网教程

00x1

首先要有一台国外VPS和一个域名。vps开启80,443端口,域名正确解析到服务器。

00x2 安装nginx

登录服务器,这里以系统Ubuntu16.04为例。

更新apt

sudo apt-get update

安装nginx

sudo apt-get install nginx

到/etc/nginx/conf.d/目录下,新建v2ray.conf文件,并输入以下内容。“你的域名”处填写域名。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
server {
listen 80;
root /var/www/html/;
index index.html index.htm;
server_name 你的域名;
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 443 ssl;
root /var/www/html/;
index index.html index.htm;
server_name 你的域名;
ssl_certificate ;
ssl_certificate_key ;
ssl_protocols TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE;
location /abc {
proxy_redirect off;
proxy_pass http://127.0.0.1:60001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
access_log off;
}
}

00x3 安装BBR加速内核

BBR是Google推出的一套拥塞控制算法,集成在最新的Linux内核中。BBR应用在VPS服务器上,可以明显改善服务器的网络传输速度,减少丢包。

一键脚本安装

1
wget --no-check-certificate -O tcp.sh https://github.com/cx9208/Linux-NetSpeed/raw/master/tcp.sh && chmod +x tcp.sh && ./tcp.sh

运行tcp.sh
首先选择2,安装BBRplus版内核,Ubuntu16.04自带内核版本不支持bbr所以先要升级。一键安装内核并重启之后,再运行脚本则会显示当前状态:已安装BBRplus。然后再选择7,使用BBRplus版加速。会显示BBRplus启动成功。

可用 lsmod | grep bbr 命令验证是否启动成功。如果有连接数,即启动成功

00x4 安装v2ray

一键脚本安装

bash <(curl -s -L https://install.direct/go.sh)

修改配置文件 /etc/v2ray/config.json,修改为以下内容。其中id参数可由客户端生成,也可用网上其他方式生成,只要服务端和客户端保持一致即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
{
"log" : {
"access": "/var/log/v2ray/access.log",
"error": "/var/log/v2ray/error.log",
"loglevel": "warning"
},
"inbound": {
"port": 60001, //(此端口与nginx配置相关)
"listen": "127.0.0.1",
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "xxxx",
"level": 1,
"alterId": 64 一致
}
]
},
"streamSettings":{
"network": "ws",
"wsSettings": {
"path": "/abc"
}
}
},
"outbound": {
"protocol": "freedom",
"settings": {}
},
"outboundDetour": [
{
"protocol": "blackhole",
"settings": {},
"tag": "blocked"
}
]
}

保存之后之后重启v2ray。

service v2ray restart

00x5 安装ssl证书

安装之前先把nginx服务停掉。
service nginx stop

新建一个文件夹,并下载安装脚本

1
2
3
4
mkdir certauto
cd /certauto
wget https://dl.eff.org/certbot-auto
chmod +x ./certbot-auto

执行安装命令,邮箱和域名填写自己的。

1
./certbot-auto certonly --email XXX@163.com -d www.xxx.cn

安装过程,这里选2,启动一个临时web服务器

后面的就选同意

没问题就会显示安装成功。有问题可能是端口占用问题,起临时web服务器需要使用80端口。

图中两个pem文件就是证书文件,把完整链接复制到/etc/nginx/conf.d/v2ray.conf文件中如图位置。保存文件。

重启nginx和v2ray,然后再去访问你的域名,看到如下页面证明前面的都安装成功。

00x6 客户端配置

客户端下载:
https://github.com/2dust/v2rayN/releases

客户端配置:
选择,服务器->添加VMess服务器。地址填写域名、用户id可以自动生成,并将id填写到/etc/v2ray/config.json文件id参数处、额外id填64、传输协议选ws、路径填/abc,与v2ray.conf文件中location处参数一致即可、其他的可照图片配置。点确定后即可自动启动。如果配置都没问题即可在信息处看到访问记录信息。