V2Ray翻墙完全教程(WS+TLS+Web)【请更新V2Ray客户端至4.23.2以上】
本文是搭建V2Ray服务器(ws+tls+web)的完整教程。除了搭建V2Ray+ws+tls+web的过程,还包括配置CDN隐藏IP,打开BBR加速,以及简单配置防火墙防探测。最近(2020年初开始)防火墙加大了封杀VPN的力度,很多SS,SSR,纯VMess都开始间歇掉线,有些代理甚至直接被封IP。如果你打算自己搭建翻墙服务,强烈推荐V2Ray+ws+tls+web(CDN可选)一步到位。
本文面向小白,你只要会购买虚拟主机,会使用SSH连接服务器,那么看懂本教程就毫无压力。当然如果有搭建SS/SSR的经验,就更容易看懂了。建议能看懂本教程的,尽量购买VPS自建翻墙服务。按照本文搭建实在有困难的用户,可以考虑迷雾通或其它外资VPN。
不推荐使用一键脚本,很多一键脚本都存在安全隐患,轻则屏蔽掉几个网站,重则把你的服务器变成“肉鸡”(即黑客攻击别人电脑的跳板)。另外,就算用脚本搭建服务器,本文中的大部分操作,比如购买域名,配置域名解析等等,脚本无法自动完成。你恐怕还要亲自购买域名,亲自配置域名解析,亲自登录VPS执行脚本。本文中的方法只比一键脚本多出几步,但是可以大大降低安全风险。
自建V2Ray服务器首先要购买VPS(虚拟主机),为避免广告嫌疑,正文中不推荐VPS,我会在评论中补充一些常见的外资VPS。一般而言,自建服务的成本远远低于机场,大多数VPS每个月花费20-30元左右,流量1TB/月,有些外资VPS价格低到10-20元,甚至每月不到10元。如果愿意折腾,还可以用免费的谷歌云。此外,自建服务没有客户端数量限制,如果多人分摊成本,价格就更便宜了。
V2Ray+ws+tls+web是目前最稳定的翻墙技术之一,即使在六四、十一也稳如泰山。和SSR的流量混淆不同,V2Ray+ws+tls用真正的https流量翻墙,没有必要做任何混淆。在防火长城看来,你的流量和不计其数的https流量没有任何区别。但是,如果有好事者主动访问你的代理服务器,就会发现一些不对劲:

尽管流量没有任何明显的特征,但是如果墙主动访问代理服务器,会发现流量的目的地没有真正的网站,从而识破https流量的目的。使用https流量不做掩护,反而增大了IP被墙的概率。因此你需要在V2Ray服务外面加一层真网站做掩护。

这就是V2Ray+ws+tls再加上web的原理。在配置了真实网站之后,只有你自己知道是个代理,在别人看来是个网站(包括墙)。反过来说,V2Ray+ws+tls+web也可以看作是自建了一个网站,然后利用这个网站来翻墙。因此,如果你读完本文,不仅能学会V2Ray翻墙,还能学到一点建网站的流程。
上面“https流量”的正确叫法是“tls流量”,这东西就是你平时浏览网页发出的流量。这里为了方便新手理解,叫做“https流量”。
安全提示:
如果服务器之前运行过SS,SSR,V2Ray(非TLS)等服务,请确保先停止原来的代理服务,再安装V2Ray。如果不知道怎么停止,请重装VPS(在网页控制面板上点reinstall,不到一分钟就搞定)。翻墙的隐蔽性取决于最薄弱的一环,如果服务器上同时运行其它代理软件,这些代理软件依然会被墙探测到,这种情况下V2Ray+ws+tls+web并不能保证隐蔽性。
自建网站看上去很复杂,其实很简单,只要按照以下步骤:
- 购买域名&配置域名解析:V2Ray需要域名伪装成真正的网站,因此你需要购买一个域名,并把域名绑定到服务器的IP地址上。
- 一键填写配置文件:本文已经写好了配置文件,只要把域名,UUID等信息填进去就行了。
- 一键安装v2ray+nginx
- 上传配置文件&一键运行
- 配置客户端
成功翻墙以后,还可以做以下事情进一步强化:
- 可选1. 加固服务器
- 可选2. 配置CDN隐藏IP
- 可选3. 使用BBR加速
- 可选4. 自行编译Nginx
下面按照以上顺序讲解配置。
这里从域名注册商GoDaddy购买域名,用Cloudflare提供域名解析。GoDaddy本身也提供域名解析服务,这里用Cloudflare是为了配置CDN方便。如果遇到墙加高,或者IP被墙等极端情况,只要简单的配置就可以切换成v2ray+ws+tls+web+cdn。CDN翻墙速度较慢,但是稳定性极高。
可能不少新手没听说过GoDaddy和Cloudflare,这里介绍一下,GoDaddy是世界上最大的域名提供商,占据市场30%的份额。Cloudflare是世界上最大的CDN提供商,全球半数的网站都在使用Cloudflare。注册不用担心隐私泄露或钓鱼风险。
注册GoDaddy和CloudFlare需要邮箱。特别注意,购买域名之后,域名服务商会公开邮箱地址。建议至少使用gmail注册,如果对隐私有较高要求,可以用Protonmail等匿名邮箱注册。
点击这里进入GoDaddy的新加坡官网,全过程都有中文界面。出于安全考虑,选择邮箱注册。

GoDaddy和淘宝的用法完全一样。注册完成以后,回到GoDaddy首页。点击搜索框,输入一个你想要的域名,查询价格。GoDaddy会根据域名包含的词汇定价,为了降低成本,域名尽量选得随机一些,其中不要包含任何单词,我这里头滚键盘输入hrw1rdzqa7c5a8u3ibkn。

可以看到不同后缀的域名价格差别很大,通常.com .net这类域名比较昂贵.website,.site,

接下来进入购物车,隐私保护不用选。

点进入购物车,进入结算页面。GoDaddy默认选购买2年,我们的域名只用来翻墙,选1年就可以了,到时候再换。
GoDaddy支持支付宝或信用卡付款。第一次购买域名,GoDaddy会要求你填写个人信息,这里姓名和手机号随便填一个假的就行。

购买完成,刚买到的域名不会马上在域名列表里出现,一般会有一两分钟的延迟。
接下来注册Cloudflare。GoDaddy的页面暂时不要关,一会还要回来配置域名服务器。
打开Cloudflare官网,用邮箱注册,如图。注册页面入口https://dash.cloudflare.com/sign-up

接下来输入刚才购买的域名,注意这里输入的是【二级域名】。所谓二级域名,可以理解为网址去掉www。
比如我的网站的网址是www.hrw1rdzqa7c5a8u3ibkn.website,那么这里应该输入hrw1rdzqa7c5a8u3ibkn.website,如图:

点【Add Site】,把域名交给Cloudflare托管。
接下来选择套餐,这里选择FREE套餐。

点【Confirm Plan】,进入管理页面,不要关掉页面,接下来配置域名解析。
配置域名解析分两步:
- 配置域名服务器记录(也叫name server,NS记录)
- 配置地址解析记录(也叫address,A记录)
NS记录用来表明由哪台服务器对域名进行解析。从GoDaddy买到域名后,域名是由Godaddy的服务器进行解析的。我们这里把Godaddy的服务器换成Cloudflare的服务器。
如图是Cloudflare的管理界面,如果你的域名之前有配置域名解析,管理界面会显示之前的记录。暂时不用管这些。
点Continue,修改域名服务器。
点【Continue with default】

接下来Cloudflare会提示你变更域名服务器,并给出了方法。

画红框的部分就是Cloudflare提供的两个域名服务器,我这里是ns90.domaincontrol.com和ns91.domaincontrol.com,
你看到的的可能和我不一样。
回到GoDaddy,点击屏幕右上角的用户名,选择【我的产品】。

这里可以看到你拥有的域名,点击域名旁边的【DNS】,进入DNS管理页面。

在DNS管理界面向下拉,找到域名服务器。如图所示,这里可以看到GoDaddy提供的两个域名服务器,点击【更改】。

选择【输入我自己的域名服务器】

输入刚才Cloudflare提供的两个域名服务器,我这里是fccp.ns.cloudflare.com和xjp.ns.cloudflare.com,
点击【保存】。

注意不要有多余的域名服务器,不是CloudFlare提供的就要删除,否则可能会出问题。
接下来转移域名服务器可能需要几分钟,转移完成后会收到Cloudflare的邮件,可以先等一阵子。
配置地址解析(A记录)
转移域名服务器完成后,进入cloudflare的首页,点击右上角的【log in】,进入你的账户,如图:

点击买来的域名,进入下一步,如图:

点击【DNS】按钮,进入Cloudflare的DNS管理页面,如下图:

点击【Add record】,一次可以添加一条解析记录.
这里简单讲解一下,如果不想了解原理,可以跳过这一部分。
每条域名解析有四个部分:Type,Name,Address,TTL
Type是域名解析的类型,常见的几种有
- A记录:即地址(Address)记录,用来指定域名的IPv4地址。如果需要将域名指向一个IP地址,就需要添加A记录。举个例子,我们要把域名www.hrw1rdzqa7c5a8u3ibkn.website指向VPS的IP地址218.30.118.6,就要添加A记录。
- AAAA记录,指定域名的IPv6地址。
- CNAME:即规范名字(Canonical Name)记录,俗称“别名”。如果需要把域名指向另一个域名,就要添加CNAME记录。
- NS:域名服务器记录,如果要把域名交给其他DNS服务器解析,就需要添加NS记录。我们刚才修改的就是NS记录。
接下来说明每个选项应该填什么,以及为什么这么填:
Name
对于A记录,这里介绍三种填法
- www:表示解析带www的域名,即www.hrw1rdzqa7c5a8u3ibkn.website
- @:直接解析裸域名,即hrw1rdzqa7c5a8u3ibkn.website
- *:表示泛解析,即匹配其他所有域名 *.hrw1rdzqa7c5a8u3ibkn.website
Address
这里填VPS的IP地址,我这里是218.30.118.6
TTL
即 Time To Live,缓存的生存时间。指本地dns缓存解析记录的时间,缓存失效后会再次获取记录。在Cloudflare里,如果配置了CDN,则这里填Auto即可;如果没有配置CDN,可以选择Auto,也可以选择一个大于1小时的值。
理解了上面的内容以后,接下来添加两条A记录(如果VPS只有IPv6地址则添加AAAA记录)
点一下云朵,确保云是灰色的(DNS only)。橘色云朵表示此解析记录使用CDN,灰色云朵表示不使用 CDN,点击云朵可以切换。这里不要使用CDN,否则接下来的配置会出问题。
- 第一条A记录,name填www,address填服务器IP地址,TTL选择1小时。(表示解析带www的地址)
- 第二条A记录,name填@,address填服务器IP地址,TTL选择1小时。(表示解析不带www的裸域名)
填好之后的正确结果如图:

注意云一定是灰色的。
检查是否配置成功:
配置完成后点【save】就大功告成了,可以打开windows的powershell,输入
ping www.hrw1rdzqa7c5a8u3ibkn.website
(替换成你的域名)
Ping一下你的域名,如果能Ping通,就说明域名解析没问题。
V2Ray和Nginx的配置文件这里已经写好。你需要做的就是填表格,把配置中标出的地方换成自己的内容。
编辑配置文件可以用Windows记事本,不过推荐使用Notepad++。
下载地址:
网页链接,直接下载链接(7.8.4)
V2Ray配置文件如下:
{
"inbound": {
"protocol": "vmess",
"listen": "127.0.0.1",
"port": 8964,
"settings": {"clients": [
{"id": "◆◆◆◆◆◆◆◆◆◆◆◆"}
]},
"streamSettings": {
"network": "ws",
"wsSettings": {"path": "/★★★★★★★★★★★★"}
}
},
"outbound": {"protocol": "freedom"}
}是不是很短?接下来把标了符号的地方换成你自己的信息。
(1)
◆◆◆◆◆◆◆◆◆◆◆◆:标“◆”的地方填写UUID。
UUID可以从这个网站生成:https://www.uuidgenerator.net/。只要打开或者刷新这个网页就可以得到一个UUID。
举个例子,我生成的UUID是:
63c0042a-4a85-4d03-a488-3ba3aa002461
(2)
★★★★★★★★★★★★:标“★”的地方填写一个随机字符串。注意不要删掉前面的斜杠。
“随机字符串”就是你在键盘上胡乱敲打出来的东西,比如dsfhsdjfhref。推荐用这个网站生成一个,只要打开或刷新网页就可以得到一个随机字符串。
我用这个网站随机生成的字符串是mL7Gg8K
这个随机字符串就是WebSocket路径,不要抄我这里的例子,去自己生成一个!否则会被墙探测出来。建议WebSocket路径取得长一些(5个字符以上),过于简单,过于常见的路径(比如/ray,/v2,/v2ray之类的名称),很容易被墙探测出来。
填好之后的配置如下图:

最后,把V2Ray的配置文件另存为config.json
Nginx配置文件如下:
server {
### 1:
server_name ●●●●●●●●●●●●;
listen 80 reuseport fastopen=10;
rewrite ^(.*) https://$server_name$1 permanent;
if ($request_method !~ ^(POST|GET)$) { return 501; }
autoindex off;
server_tokens off;
}
server {
### 2:
ssl_certificate /etc/letsencrypt/live/●●●●●●●●●●●●/fullchain.pem;
### 3:
ssl_certificate_key /etc/letsencrypt/live/●●●●●●●●●●●●/privkey.pem;
### 4:
location /★★★★★★★★★★★★
{
proxy_pass http://127.0.0.1:8964;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_requests 10000;
keepalive_timeout 2h;
proxy_buffering off;
}
listen 443 ssl reuseport fastopen=10;
server_name $server_name;
charset utf-8;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_requests 10000;
keepalive_timeout 2h;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_ecdh_curve secp384r1;
ssl_prefer_server_ciphers off;
ssl_session_cache shared:SSL:60m;
ssl_session_timeout 1d;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 10s;
if ($request_method !~ ^(POST|GET)$) { return 501; }
add_header X-Frame-Options DENY;
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options nosniff;
add_header Strict-Transport-Security max-age=31536000 always;
autoindex off;
server_tokens off;
index index.html index.htm index.php;
location ~ .*\.(js|jpg|JPG|jpeg|JPEG|css|bmp|gif|GIF|png)$ { access_log off; }
location / { index index.html; }
}
看上去很长,实际上只有四处需要填写,配置文件里用#1,#2,#3,#4标出了位置,把标符号的地方换成你自己的信息。
●●●●●●●●●●●●:标注“●”的地方填写域名,注意这里的域名带www
这个域名就是前面购买的域名,本文中是www.hrw1rdzqa7c5a8u3ibkn.website,一共有三处需要填,都以“●”标出:
(1) server_name ●●●●●●●●●●●●; 注意域名和前面的server_name保持一个空格,后面的分号“;”不要删掉。
填好之后:(注意带www,以下皆相同)
server_name www.hrw1rdzqa7c5a8u3ibkn.website;
(2) ssl_certificate /etc/letsencrypt/live/●●●●●●●●●●●●/fullchain.pem; 两边的斜杠“/”不要删掉。
填好之后:
ssl_certificate /etc/letsencrypt/live/www.hrw1rdzqa7c5a8u3ibkn.website/fullchain.pem;
(3) ssl_certificate /etc/letsencrypt/live/●●●●●●●●●●●●/fullchain.pem; 一样,两边的斜杠“/”不要删掉
填好之后:
ssl_certificate /etc/letsencrypt/live/www.hrw1rdzqa7c5a8u3ibkn.website/fullchain.pem;
(4) ★★★★★★★★★★★★:标注“★”的地方填写一个随机字符串,这个随机字符串必须和V2Ray配置中的一样,不然无法工作。注意不要删掉前面的斜杠。
这个例子里,此处填mL7Gg8K。
填好之后的配置如下图:

最后,把Nginx的配置文件另存为default.conf(注意扩展名就是.conf)
很多新手在买到VPS之后不知所措,其实VPS和游戏账号是一样的,买游戏账号付款之后,店家会私信告诉你两件东西:
用户名,密码
买VPS付款之后,VPS提供商会给你发邮件,告诉你四件东西:
IP地址,密码,登录账号,端口
IP地址和密码一定会有,登录账号如果没说,默认是root。端口如果没说,默认填22.
拿到登录信息之后,就可以登录服务器了。这里推荐Bitvise SSH,轻量级,但是功能强大。
下载链接:https://www.bitvise.com/ssh-client-download
直接下载链接:https://dl.bitvise.com/BvSshClient-Inst.exe
安装好之后的界面如下图,点红框圈起的下拉菜单,【Initial method】下拉菜单里面选【password】,在【Store encrypted password in profile】选项上打勾。

这里假定我们的IP地址是218.30.118.6,密码是12345,登录账号和密码分别是root和22. 如图:
- 【Host】:这里填IP地址
- 【Port】:这里填端口,如果没说就是22
- 【Username】:这里填用户名,如果没说就是root
- 【Password】:登录密码。
填好之后如下图,点【Log in】就可以登录了。

第一次登录服务器会弹出窗口,问是否要保存密钥,点【Accept and save】继续。
成功登录之后会弹出两个窗口。


一个是文件浏览窗口,使用方法和Windows资源管理器一样,这里可以浏览服务器上的文件。把电脑中的文件拖拽到这里,就可以把文件上传到服务器。
另一个黑色的窗口是命令窗口。在电脑上复制一段文字,在这个窗口上右键,就可以把文字粘贴到命令窗口。
为了用真正的https流量翻墙,我们的网站必须有合法的SSL证书。可以用自动化工具Certbot申请证书,只要把以下命令复制到命令窗口,依次执行即可。
这里说的“证书”,实际指的是“数字证书”。当然申请完全是免费的,申请时需要邮箱地址。如有必要,可以使用匿名邮箱。
(1) 安装Certbot:
yum install -y python36 && pip3 install certbot
运行这条命令后,如果显示:
Successfully installed xxxx, xxxx, xxxx (各种软件包名字)
就表示成功。
(2) 停止防火墙
systemctl stop firewalld && systemctl disable firewalld
注意,在CentOS7版本以上,默认开启防火墙,不关闭防火墙将无法申请证书。某些系统上没有安装firewalld防火墙,执行这一步命令会报错,但是不影响后面的操作。
运行这条命令后,如果显示:
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
就表示成功
(3) 申请SSL证书
这一步做个填空题,把这条命令里的域名和邮箱,换成你自己的信息。
certbot certonly --standalone --agree-tos -n -d www.●●●●●● -d ●●●●●● -m ▲▲▲@▲▲▲.▲▲▲
第一个-d加一个带www的域名,第二个-d加一个不带www的域名,-m后面加你的电子邮箱。
注意前后要带空格。
例子:(域名:www.hrw1rdzqa7c5a8u3ibkn.website,邮箱:xijinping@protonmail.com)
certbot certonly --standalone --agree-tos -n -d www.hrw1rdzqa7c5a8u3ibkn.website -d hrw1rdzqa7c5a8u3ibkn.website -m xijinping@protonmail.com
运行这条命令后,如果显示:
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/www.hrw1rdzqa7c5a8u3ibkn.website/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/www.hrw1rdzqa7c5a8u3ibkn.website/privkey.pem
Your cert will expire on 2020-06-04. To obtain a new or tweaked
version of this certificate in the future, simply run certbot
again. To non-interactively renew *all* of your certificates, run
"certbot renew"
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org
就表示成功。
注意:这一步比较容易出错,常见的问题有:
- 其它代理占用了80,443端口。解决方法:停止其它代理软件,或重装VPS。
- 没有正确配置域名解析。解决方法:ping一下域名,看看能不能正确解析到IP。注意不要打开CDN(云朵点灰)。
- 没有关闭防火墙。解决方法:回到(2),关闭防火墙。
(4) 配置证书自动更新
echo "0 0 1 */2 * service nginx stop; certbot renew; service nginx start;" | crontab
运行这条命令后,如果没有任何信息输出,就表示成功。
我们申请的证书只有三个月期限,上面的命令表示每隔两个月,证书就自动续命一次,从而保证可以一直用下去。
3.3 安装V2Ray和Nginx
(1) 一键安装
V2Ray和Nginx可以一键安装,把下列命令复制粘贴到控制台,运行即可。
yum install -y nginx && yum install -y curl && bash -c "$(curl -L -s https://install.direct/go.sh)"
运行这条命令后,如果最后一行显示:
V2Ray v4.x.x is installed.
就表示成功。(如果V2Ray安装成功,那么Nginx也一定安装成功)
(2) 关闭SELinux
在某些系统上,需要关闭SELinux,否则Nginx无法正常将流量转发给V2Ray,输入
setsebool -P httpd_can_network_connect 1 && setenforce 0
关闭SELinux,没有提示就表示成功。
安装好V2Ray和Nginx后,我们终于来到了最后一步。在启动V2Ray之前,需要把之前的配置文件上传
这一步把第(2)步编辑好的配置文件上传就可以了。
首先上传V2Ray的配置文件,V2Ray的配置文件存储在
/etc/v2ray
目录下,把上面这个路径,复制到文件管理器的路径栏,回车,即可跳转到该目录下。如图:

可以看到这里已经有一个config.json文件了,这是V2Ray安装时自动生成的。接下来的操作和Windows一样,把你编辑好的config.json拖拽到这里,就可以上传了。
文件管理器会提示你存在同名文件,选择【Overwrite】覆盖原来的文件即可。

上传完成好以后,最好再验证一下,输入
/usr/bin/v2ray/v2ray -test -config=/etc/v2ray/config.json
如果显示:
V2Ray 4.x.x (V2Fly, a community-driven edition of V2Ray.)
A unified platform for anti-censorship.
Configuration OK.
说明配置没有问题。
然后按同样的步骤上传nginx配置文件,Nginx的配置文件存储在
/etc/nginx/conf.d
目录下,转到这个目录,拖拽上传你编辑的default.conf文件即可。
再验证一下Nginx配置是否正确,输入:
nginx -t
如果显示:
nginx: the configuration file /etc/nginx/ngin短网址nf syntax is ok
nginx: configuration file /etc/nginx/ngin短网址nf test is successful
说明配置没有问题。
V2Ray和Nginx都是守护进程,可以认为是Windows上的“后台服务”。把V2Ray和Nginx配置成守护进程以后,这两个程序就可以在服务器上持续运行了。Linux服务器的稳定性非常高,可以连续不重启运行一年,甚至更长。我们接下来就让V2Ray和Nginx在服务器上运行一年。
在Linux上启动一个守护进程很简单,输入以下两条命令就可以启动V2Ray和Nginx:
service v2ray start
service nginx start
有启动,也有其它操作,这里列出所有有用的命令,方便管理后台:
启动V2Ray:
service v2ray start
重启V2Ray:
service v2ray restart
注:这一条是常用命令,每次修改配置文件后,都要重启一下V2Ray。
查看V2Ray状态:
service v2ray status
停止V2Ray:
service v2ray stop
查看V2Ray版本:
/usr/bin/v2ray/v2ray -version
测试V2Ray配置文件:
/usr/bin/v2ray/v2ray -test -config=/etc/v2ray/config.json
注:常用命令,每次修改配置文件后,最好检查一下配置文件是否正确。
配置文件位置:
/etc/v2ray/config.json
Nginx:
启动Nginx:
service nginx start
重启Nginx:
service nginx restart
查看Nginx状态:
service nginx status
停止Nginx:
service nginx stop
测试Nginx配置文件:
nginx -t
配置文件位置:
/etc/nginx/conf.d/default.conf
配置完成后,可以在浏览器里输入网址,如果显示Nginx的红色欢迎页面,就说明网址配置成功了!
接下来要做的是上传一个网页模板,这样别人访问你的服务器就会看到一个真的网站。

去Google上搜“website template”可以找到很多提供网页模板的网站,这里随便找一家,例如https://colorlib.com/wp/templates/
网页模板强烈建议用纯英文模板,其中不要包含任何中文内容,否则(可能)会增加网站被墙的概率。
下载好以后,解压压缩文件,一路点开,如图,可以看到里面有一个index.html文件(有些是index.htm或index.php)

把这个文件夹里的所有东西,包括index.html,blog.html,以及css,fonts,img,js几个文件夹,全部上传到
/usr/share/nginx/html/
目录下面。上传方法前面已有介绍,打开Bitvise SSH,拖动到文件管理窗口即可上传。
接下来打开网址,这时候可以看到一个真正的网站。(提示:不同系统的Nginx欢迎页面可能不同,只要这里可以显示网页,就说明Nginx工作正常)
Windows客户端推荐V2RayN,V2RayN是开源软件,下载地址:
https://github.com/2dust/v2rayN/releases
可以看到有一个v2rayN-Core.zip和一个v2rayN.zip,这里下载v2rayN-Core.zip(GUI界面+V2Ray内核)。
安装好V2RayN之后,如图

点【服务器】按钮,选择【添加VMess】服务器。
- 地址:你的VPS的IP地址,这里我的IP是218.30.118.6。
- 端口:443
- 用户ID:就是2.1节中,V2Ray配置文件里的UUID,本文中是63c0042a-4a85-4d03-a488-3ba3aa002461
- 额外ID:0(保持默认值)
- 加密方式:随便选。
- 传输协议:选ws,即WebSocket
- 别名:随便填。
- 伪装类型:none(保持默认值)
- 伪装域名:绑定到服务器的域名,我的是www.hrw1rdzqa7c5a8u3ibkn.website
- 路径:即前面的随机字符串,注意前面必须要加上斜杠“/”,这里的例子是/mL7Gg8K
- 底层传输安全:选tls
配置完成后如下图:

安卓客户端推荐V2RayNG,配置和V2RayN可以互通。下载地址:
https://github.com/2dust/v2rayNG/releases
分享配置很简单,在Windows的V2RayN客户端里,点击服务器列表,勾选右边的“显示分享内容”,可以显示配置的二维码。安卓端选择“扫描二维码”导入配置即可。
iOS客户端全部要收费,常用有Shadowrocket(小火箭)等。配置方法略。
其它平台客户端(Mac OS,Linux)可以查看V2Ray官网的客户端列表:神一样的工具们
到这一步结束,整个V2Ray翻墙的搭建就结束了。接下来是一些可选配置,可以加强你的服务器的隐蔽性和安全性。
CDN相当于在服务器前又加了一层代理,墙只知道你的域名和CDN的IP,无法得知代理服务器的真实IP。如果伪装网站开启了DoH+ESNI,甚至连域名都可以隐藏。因此v2ray+ws+tls+web+CDN相当于事实上的双重代理,它的隐蔽性和安全性非常高。缺点是Cloudflare 会让访问延迟变高一些。除非遇到IP被墙,或者六四前后等墙加高等极端情况,如果平时翻墙很稳定,就没有必要打开CDN。
因为前面已经注册了Cloudflare解析,所以使用CDN非常简单,只要两步即可。
(1) 登录Cloudflare账号,点击【DNS】按钮,进入Cloudflare的管理页面,如图:

点一下灰色的云,让颜色变成橙色即可。
点击切换后,域名不会马上解析到CDN的地址,一般会有几分钟的延迟。可以ping一下你的服务器的域名,如果返回地址是CDN的IP,就说明切换完成。
(2.1) 使用自动选择的CDN IP地址
接下来配置客户端。客户端切换成CDN很简单,配置的其它地方不用改动,只要把地址一栏换成域名即可,如图

手机端配置方法类似,把IP换成网址即可。
(2.2) 手动指定CDN IP地址
(2.1)节介绍的方法可以满足大多数人的需要,事实上要连接的CDN节点也可以手动指定。手动指定CDN节点地址,可以免费使用不同运行商的线路和不同国家的入口节点。如果自动分配的CDN节点速度不理想,可以尝试手动指定入口节点。
配置方法也非常简单:在第(1)节把云朵点成橙色之后,在V2RayN的【地址】一栏里,不填入网址,而是填入CDN的IP地址。
举例如下:
- 电信线路+美国旧金山节点:172.64.0.8
- 联通线路+日本节点:104.20.157.84
- 移动线路+新加坡节点:104.28.14.8
上述IP是属于Cloudflare的公共地址,所以不会被封。Cloudflare提供了非常多的地区+线路组合,具体可参加网友@marxist 的贴子:
《关于国产输入法的隐私问题以及如何选择合适的cloudflare IP地址?》
原贴见:https://ofvps.com/201907510
如果VPS上没有其它服务,建议打开防火墙。服务器对外只暴露80,443,SSH端口,可以降低代理服务器被探测的风险。
前面的步骤中禁用了防火墙firewalld,不是所有的机器都安装了firewalld,我们这里使用ufw防火墙作为替代。
安装ufw:
yum install -y epel-release && yum install -y ufw
打开SSH,HTTP,HTTPS端口,运行:
ufw disable && ufw allow ssh && ufw allow http && ufw allow https && ufw enable
如果ssh端口不是22,那么需要将ssh改为端口号。例如ssh端口为14320,则:
ufw disable && ufw allow 14320 && ufw allow http && ufw allow https && ufw enable
ufw和firewalld的底层实现都是一样的,都调用了linux iptables,本质并无太大区别。
BBR是谷歌开发的拥塞控制算法,可以降低延迟,加快访问速度。启用BBR需要4.10以上版本Linux内核,现在大多数VPS都满足这一条件,输入uname(空格)-a可以查看内核版本.
如果内核版本大于4.10就可以用BBR了,把以下三条命令复制到命令窗口执行:
bash -c 'echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf'
bash -c 'echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf'
sysctl -p
然后运行以下命令,查看BBR是否启动成功:
sysctl net.ipv4.tcp_congestion_control
如果提示
net.ipv4.tcp_congestion_control = bbr
就表示成功启动了BBR加速。
**本节内容需要有一定Linux基础**
某些系统上,通过yum安装的Nginx不支持TLS1.3,需要自行编译。启用TLS1.3可以明显降低VMess+WS+TLS的延迟(握手1-RTT,恢复会话0-RTT)。此外,TLS1.3第一个RTT之后的握手包均被加密,(可能)会降低TLS协议的指纹特征。
Caddy(另一个HTTP反向代理软件)也支持TLS1.3,但自行配置和编译的Nginx可以通过调整多种参数,达到更高的性能。自行编译Nginx也可以启用一些其它反向代理中的特征,例如HTTP/2等。
Nginx编译安装步骤:
更新所有软件及系统内核(用时较长,可选):
yum -y update
安装依赖软件和库:
yum -y install wget gcc make perl pcre pcre-devel zlib zlib-devel
下载OpenSSL 1.1.1g(截至2020年4月21日的最新版)
wget https://github.com/openssl/openssl/archive/OpenSSL_1_1_1g.zip
unzip OpenSSL_1_1_1g.zip
rm OpenSSL_1_1_1g.zip && mv openssl-OpenSSL_1_1_1g openssl
下载Nginx 1.18.0(截至2020年4月21日的最新版)
wget https://nginx.org/download/nginx-1.18.0.tar.gz
tar -xzvf nginx-1.18.0.tar.gz
cd nginx-1.18.0
配置编译选项
./configure --with-openssl=../openssl --with-openssl-opt='enable-tls1_3' --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module
这一步是Nginx启用TLS1.3的关键,--with-openssl-opt='enable-tls1_3'表示启用TLS1.3,--with-http_v2_module表示启用HTTP/2
编译&安装
make && make install
编译完成的Nginx二进制文件位置在/usr/local/nginx/sbin/nginx,可用以下命令进行测试:
/usr/local/nginx/sbin/nginx -V
与此对应的,Nginx配置文件目录和网页文件目录分别在:
/usr/local/nginx/conf
/usr/local/nginx/html
为了把Nginx配置成系统服务,还需要配置systemd文件:
[Unit]
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
最后把上述文件命名为nginx.service,放在/etc/systemd/system下,就完成了Nginx的编译安装。
--
到这里,整个V2Ray翻墙教程就结束了,过程总结:
- 购买域名 & 配置域名解析
- 安装Nginx和V2Ray
- 上传配置文件
可选步骤:
- CDN隐藏IP
- 打开防火墙
- BBR加速
- 编译Nginx
436 个评论
已隐藏
感谢分享,看不懂
我也不知道到底是什么错误,你可以发一下错误提示信息。估计是没有conf.d目录或者权限不够?试一下这...
这两个命令提示说mkdir: cannot create directory ‘/etc/nginx/conf.d’: No such file or directory chmod: cannot access ‘/etc/nginx/conf.d’: No such file or directory
路径栏里输入/etc/nginx/conf.d回车之后提示 change remote folder error changing current remote folder to '/etc/nginx/conf.d' failed opendir request has failed with sftp error nosuchfile:No such file see log for more information
这两个命令提示说mkdir: cannot create directory ‘/etc/nginx...
你这个前一步有问题,可能是nginx没安装上。
再试试yum -y install nginx
运行完以后输入nginx -v 如果返回:nginx version: nginx/1.xx.x 就说明安装成功。
顺便再运行/usr/bin/v2ray/v2ray -version 看看v2ray有没有安装上
有能下载的PDF版吗?翻一次墙出来真不容易,能提供下载的手册最好了。
大佬你好,v2ray脚本那遇到了困难,请问怎么解决
yum install -y nginx && yum install -y curl && bash -c "$(curl -L -s https://install.direct/go.sh)"
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.hostdupletwitter.com
* extras: repos.lax.layerhost.com
* updates: repos.lax.layerhost.com
No package nginx available.
yum install -y nginx && yum install -y curl && bash -c "$(curl -L -s https://install.direct/go.sh)"
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.hostdupletwitter.com
* extras: repos.lax.layerhost.com
* updates: repos.lax.layerhost.com
No package nginx available.
谢谢大佬,已通过看回复解决,nginx安装源问题。
然而那个v2ray233 的脚本就有传什么东西,在GitHub上被人看出来了后来他删了,不过到现在还...
不过那并不危害安全性,影响使用而已,所以脚本在国内也是十分方便审查的
同到这步就nginx 404 没有红色界面,请大佬解答!
@这是小怪兽呀
可能是版本问题。因为你没有上传任何网页模版,所以返回404是正常的,说明Nginx已经可以正常工作了。
可能是版本问题。因为你没有上传任何网页模版,所以返回404是正常的,说明Nginx已经可以正常工作了...
感谢!!
参照这个教程自建V2ray,以前的一键脚本怎么办?还会起作用吗?如果还有作用,怎么删除?
请问大神啊,我按攻略一步步搭建好了,win下的v2rayN可以正常使用,但是iOS下Shadowrocket怎么设置都不行呢,里面服务器和端口填的是vps的,UUID不用说了,就那一长串,算法auto,TLS选中,允许不安全选中,Peer名称写的是网站域名,混淆里面名称选websocket,服务器填的是www的全域名,路径写的是配置文件里的path/后面的字符串,带了斜杠,但是不能使用,不知道哪里错了
学习了,以后有需要再看,多谢!
這樣上網 網速可以嗎?
修改下配置就可以了。把配置文件里面最后三行:index index.html index.htm i...
感谢!
你们有配置成功的吗,速度怎么样,我速度下降很多 没开cdn
到DNS管理这一步,显示如下记录我们无法显示您的 DNS 信息,因为您的域名服务器不是由我们管理的。...
这说明你的域名服务器已经迁移到其它服务商了。看一下是不是已经配置过域名解析了?
如果你之前在godaddy买了域名,又把域名服务器迁移到了cloudflare,再打开godaddy,就会显示这条信息。
------
fig1.4.1不是很重要的一张图,简单来说,如果还没配置域名解析,你打开cloudflare的主界面,底下会有一个很大的蓝色按钮,点【continue】就行了。
你们有配置成功的吗,速度怎么样,我速度下降很多 没开cdn
是延迟比较高还是下载速度不行?
没问题了,是我配置文件写错了
这说明你的域名服务器已经迁移到其它服务商了。看一下是不是已经配置过域名解析了?如果你之前在godad...
好的,谢谢,我照着您的教程一步步练习,反正域名也不贵,错了就当练手了,多练习几遍估计就好了。现在是godaddy注册时邮箱填错有点头大
好的,谢谢,我照着您的教程一步步练习,反正域名也不贵,错了就当练手了,多练习几遍估计就好了。现在是g...
嗯,配置好域名以后,可以ping一下,如果能解析到你服务器的IP,就可以进行下一步了。
我vps用的谷歌云,在Bitvise SSH这一步失败了,总是显示Authentication aborted.Reason: No Authentication methods available。不知道什么原因,好像当初没有密码,求帮助。谢谢了
n内核版本不足4.1,如何升级
是延迟比较高还是下载速度不行?
装之前是 15.19 Mbit/s 42.78 Mbit/s 205.57 ms
装之后是 6.62 Mbit/s 29.79 Mbit/s 158.255 ms
感谢大佬的分享,按照你的步骤来弄,已经可以用了
大佬,我的nginx -t 显示配置没问题,但是访问网址显示404,nginx日志里显示如下
请问这是什么原因?
2020/03/04 20:11:25 [error] 15672#0: *132 open() "/usr/share/nginx/html/fullchain.pem" failed (2: No such file or directory)
请问这是什么原因?
大佬,我的nginx -t 显示配置没问题,但是访问网址显示404,nginx日志里显示如下请问这是...
配置文件填错了(证书路径填错,ngnix -t不会报错,但是无法访问网络)
不同意自建服务的成本远远低于机场,
如果是小流量用户还是机场更好吧,我这边机场都是年付100左右就可以了,节点充沛,抗不稳定性强,
如果是小流量用户还是机场更好吧,我这边机场都是年付100左右就可以了,节点充沛,抗不稳定性强,
连接后出现这个是什么问题呀?
2020/03/05 12:31:32 [Warning] failed to handler mux client connection > v2ray.com/core/proxy/vmess/outbound: failed to find an available destination > v2ray.com/core/common/retry: [v2ray.com/core/transport/internet/websocket: failed to dial WebSocket > v2ray.com/core/transport/internet/websocket: failed to dial to (wss://www.chanelforzyt.xyz/kFBKFKl): 502 Bad Gateway > websocket: bad handshake] > v2ray.com/core/common/retry: all retry attempts failed
2020/03/05 12:31:32 [Warning] failed to handler mux client connection > v2ray.com/core/proxy/vmess/outbound: failed to find an available destination > v2ray.com/core/common/retry: [v2ray.com/core/transport/internet/websocket: failed to dial WebSocket > v2ray.com/core/transport/internet/websocket: failed to dial to (wss://www.chanelforzyt.xyz/kFBKFKl): 502 Bad Gateway > websocket: bad handshake] > v2ray.com/core/common/retry: all retry attempts failed
谢谢分享,目前用的一键v2ray,后面按照这个教程试试。
感谢大佬分享,不是技术控有点看不懂,但是照做还是连上了。
配置文件填错了(证书路径填错,ngnix -t不会报错,但是无法访问网络)
弄好了,不是配置文件的问题,把配置文件名字default.conf改成ngin短网址nf就好了,不太清楚是为什么。我的nginx版本是1.10.3,vps的系统是centos6.5。
弄好了,不是配置文件的问题,把配置文件名字default.conf改成ngin短网址nf就好了,不...
你前面自动配置证书用的是certbot吗?为什么证书会在网页路径下?
usr/share/nginx/html/fullchain.pem
到DNS管理这一步,显示如下记录我们无法显示您的 DNS 信息,因为您的域名服务器不是由我们管理的。...
要去域名登記商那裡把Domain Name Servers改成Cloudflare的
请问:fig1.4.11中的IP4地址,是自己随意填写,还是需要到哪里查询?
学习了
大佬你好,请问我安装完naginx并且上传了配置文件直接检查也成功了,但是打开网站并没有出现Nginx的红色欢迎页面,而是显示改网站将您重定向的次数过多。尝试清除 Cookie.ERR_TOO_MANY_REDIRECTS
感謝樓主了,如果是穩定連接的話那還真是便宜了不少,還不限速。
我有幾個疑問,比如我還是不放心的話,V2ray可以切換線路嗎?
還有就是平常出來透氣之外我也經常下一些視頻,要是這麼著用的話v2ray可以嗎?
我有幾個疑問,比如我還是不放心的話,V2ray可以切換線路嗎?
還有就是平常出來透氣之外我也經常下一些視頻,要是這麼著用的話v2ray可以嗎?
建好了,能翻出去,但速度感人......(已开bbr)(日本直连VPS)
您好!请问:fig1.4.11中的IP4地址,是自己随意填写,还是需要到哪里查询?
请问大佬,按照教程成功后可以出墙,但是youtube的app一直转圈圈不显示视频,我有打开cfn。请问怎么解决呢?
您好!请问:fig1.4.11中的IP4地址,是自己随意填写,还是需要到哪里查询?
这个是你的VPS地址,一般买来VPS以后商家会告诉你IP和登录密码
请问大佬,按照教程成功后可以出墙,但是youtube的app一直转圈圈不显示视频,我有打开cfn。请...
不是有特别需求,建议关掉CDN(cloudflare云朵点灰,配置里面填IP地址)
macOS版本的v2ray我用的是官方的:https://v2ray.com/chapter_00/...
嗯,我也用的是这个。我上面评论给的链接是有GUI界面的,这个是命令行的,不太适合小白😂
首先感谢分享这么详细的教程!
我先想装在自己的树莓派上(因为现在在国外,以后回国要用),跟教程稍微有点不一样的是我用的是 ipv6 地址,其他一切正常,但最后在客户端测试失败,后来查了下 nginx 的 status,发现是 failed (但 nginx -t 是成功的),有可能是我以前用树莓派跑过 ss,也装过 nginx,出现了什么问题。
于是又准备在 vultr 的 vps 上装,但配置好设置文件后,nginx -t 失败,显示:
nginx: [emerg] cannot load certificate "/etc/letsencrypt/live/a****(手动打码)***n.monster/fullchain.pem": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/etc/letsencrypt/live/a****n.monster/fullchain.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file)
nginx: configuration file /etc/nginx/ngin短网址nf test failed
这个 vps 是全新的,不太清楚是什么问题,求 lz 帮帮忙。
然后我这两次跑,用的域名都是一个,就是换了下对应的 ip,certbot 重新在 vps 上跑了遍,会是这方面的问题吗?
先谢谢 lz 啦。
我先想装在自己的树莓派上(因为现在在国外,以后回国要用),跟教程稍微有点不一样的是我用的是 ipv6 地址,其他一切正常,但最后在客户端测试失败,后来查了下 nginx 的 status,发现是 failed (但 nginx -t 是成功的),有可能是我以前用树莓派跑过 ss,也装过 nginx,出现了什么问题。
于是又准备在 vultr 的 vps 上装,但配置好设置文件后,nginx -t 失败,显示:
nginx: [emerg] cannot load certificate "/etc/letsencrypt/live/a****(手动打码)***n.monster/fullchain.pem": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/etc/letsencrypt/live/a****n.monster/fullchain.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file)
nginx: configuration file /etc/nginx/ngin短网址nf test failed
这个 vps 是全新的,不太清楚是什么问题,求 lz 帮帮忙。
然后我这两次跑,用的域名都是一个,就是换了下对应的 ip,certbot 重新在 vps 上跑了遍,会是这方面的问题吗?
先谢谢 lz 啦。
首先感谢分享这么详细的教程!我先想装在自己的树莓派上(因为现在在国外,以后回国要用),跟教程稍微有点...
证书路径填错了,前面要加上www
比如你的域名是www.alician.monster,路径应该填:
/etc/letsencrypt/live/www.alician.monster/fullchain.pem
证书路径填错了,比如你的域名是www.alician.monster,路径应该填:/etc/lets...
感谢,vultr 上搞定了,但 ipv6 还是不行,显示 "io: read/write on closed pipe" ,我把 listen 改成了 "0.0.0.0" 或是直接注释掉都不行,大佬知道怎么解决吗?
感谢,vultr 上搞定了,但 ipv6 还是不行,显示 "io: read/write on cl...
你看一下nginx能不能工作?一般报这个错是因为v2ray工作不正常,或者无法转发流量导致。因为配置文件里没有log,所以只能猜了。
1. 关闭selinux
2. v2ray提示invalid user,一般是uuid不对,或者系统时间需要校正。
3. 输入netstat -nltp 看看v2ray有没有在监听端口。
4. server v2ray status 看看v2ray 有没有启动
还是不行,netstat -nltp 返回的结果是Proto Recv-Q Send-Q Local...
SSL证书只绑定域名,跟IP无关,换IP之后原来的证书还是有效的。
v2ray started是客户端的log,服务器端要记录log,可以在config.json里面加这么一段(注意json语法):
"log": {
"access": "/root/vaccess.log",
"error": "/root/verror.log",
"loglevel": "warning"
}
SSL证书只绑定域名,跟IP无关,换IP之后原来的证书还是有效的。v2ray started是客户端...
我试了下 netcat -nv xxx 443,ipv4 的话是通的,v6就不通,请问是因为这个原因导致的v6连接失败吗?
包括 netstat -nltp 返回的结果里,tcp6 中也没有 443。
请问如果证书还在有效期内,想换服务器的话怎么把证书复制过去呢,我把letsencrypt文件夹复制过去以后 命令certbot certificates 找不到证书
请问如果证书还在有效期内,想换服务器的话怎么把证书复制过去呢,我把letsencrypt文件夹复制过...
直接申请一个新证书就行,let's encrypt有频率限制,可以先加--dry-run测试一下。
想再问下 lz,网页模板貌似只会装到 www.xxx.xxx 上,但如果没有 www 的话就不行,需要在无 www 的网站上装模板吗?
不知道哪里出了问题,cloudflare的服务器在godaddy那里总是更改不了,一直显示“我们无法显示您的 DNS 信息,因为您的域名服务器不是由我们管理的。”
大佬,有个问题弄不懂,还望有空指导下:
就是cloudflare的域名服务器更改godaddy的总是显示 “我们无法显示您的 DNS 信息,因为您的域名服务器不是由我们管理的”,可是在用powershell ping下域名又显示能通,这个到底算是解析成功了还是没成功呢?
如果成功了,是不是就可以继续下一步了?
谢谢
就是cloudflare的域名服务器更改godaddy的总是显示 “我们无法显示您的 DNS 信息,因为您的域名服务器不是由我们管理的”,可是在用powershell ping下域名又显示能通,这个到底算是解析成功了还是没成功呢?
如果成功了,是不是就可以继续下一步了?
谢谢
我一开始也是,后来搞定了先进网页打开ssh连接 按步骤输入以下代码1.sudo -i2.passwd...
我到第2步passwd时候就进行不下去了,输密码的时候就没动静
大佬,有个问题弄不懂,还望有空指导下:就是cloudflare的域名服务器更改godaddy的总是显...
能ping通就算成功。
不过最好搞清楚你的域名是哪家解析的,可以whois查询一下。
我配置好了,但是翻不了墙是怎么回事啊? v2rayN 返回 什么什么:443
大佬啊。按照你的教程一步步成功了。可是速度只有20b。什么都干不了啊。请问是那儿出问题了呢?
你好,我这出现了新的问题“我的域名将您重定向的次数过多”,不知道怎么解决?
你好,我这出现了新的问题“我的域名将您重定向的次数过多”,不知道怎么解决?
登录进cloudflare的管理界面,点【SSL/TLS】按钮,在出现的4个选项里选择full(默认是flexible)
+1 租的祖传搬瓦工绝版服务器 之前搭ss 六四被墙ip了 ssh都连不上。花钱换了ip不到两个小时又被墙。故转投v2ray,websocket+tls,申请的freenom免费域名,cloudflare中转。ip依旧被墙,但v2ray能用,这就够了。
说一下体验,用cloudflare中转后速度有明显下降 之前开ss时候油管是1080P无压力的,延迟也从200ms增加到了近1000ms。另外发现速度跟运营商有很大关系,学校联通网带宽更大,但v2ray速度明显不如家里电信网。
说一下体验,用cloudflare中转后速度有明显下降 之前开ss时候油管是1080P无压力的,延迟也从200ms增加到了近1000ms。另外发现速度跟运营商有很大关系,学校联通网带宽更大,但v2ray速度明显不如家里电信网。
老大,成功用你的方法,弄了2个梯子,谢谢啊。
问题来了: 就是上传的网站那些模版, 只看到文字, 没有看到图片,也就是说css不显示。 无论是搬瓦工还是 vultr都是一样的情况。 请问是什么原因呢?是我目录传错了吗?
问题来了: 就是上传的网站那些模版, 只看到文字, 没有看到图片,也就是说css不显示。 无论是搬瓦工还是 vultr都是一样的情况。 请问是什么原因呢?是我目录传错了吗?
老大,成功用你的方法,弄了2个梯子,谢谢啊。问题来了: 就是上传的网站那些模版, 只看到文字, 没有...
这和服务端配置没有关系,我测了一下也没有遇到这个问题,
看一下是不是模板的问题,或者是少传了什么文件?上传路径是/usr/share/nginx/html。模板上传好,打开应该类似于fig4.3.1那样。
配置的非常成功,但是就是上不了外網,不僅youtube上不去,就連品蔥也上不了...只能藉原來的機場上,求大佬指導一下
配置的非常成功,但是就是上不了外網,不僅youtube上不去,就連品蔥也上不了...只能藉原來的機場...
因为这个配置文件没有记录log,没有log也看不出问题在哪。等一会我发个可以记录log的配置文件。
可以先这样排除问题:
1. v2ray代理本质是个网站,访问一下这个你的网址,能不能正常进去。
2. 访问一下ws路径,如果返回bad request,说明工作正常。
3. 输入netstat -nltp 看看v2ray有没有在监听端口。
4. 有没有关闭selinux?文章里有提到,这一步必须做。
5. v2ray提示invalid user,一般是uuid不对,或者系统时间需要校正。
WS+TLS最好还是用Freenom的免费域名,免得那天被DNS污染了还费了域名的钱。
因为我当时无法在国外域名上选择付款,
使用国内域名服务商有坑吗?
使用国内域名服务商有坑吗?
因为这个配置文件没有记录log,没有log也看不出问题在哪。等一会我发个可以记录log的配置文件。可...
網站通過v2ray可以正常訪問;
訪問ws路徑給我的回應是:
No such file or directory
關閉了selinux,給我的回應:
setsebool: SELinux is disabled.
v2ray沒有給我反饋invalid user,我測延時正常也就200ms,但是測試服務器測試真延遲和服務器速度跟我反饋的是操作超時和503服務器不可用。
還有我的cloudflare上DNS解析下面有三個,兩個A一個cname....要不要吧最後那cname刪掉啊?
希望大佬解答幫助,謝謝
1.
看一下不挂代理能不能访问?有的服务器IP买到就不能用(搬瓦工,vultr是重灾区)
打开CDN试试。
2.
用浏览器访问,比如你的域名是:www.sdfsdf.com,ws路径设置是/Wsd23sd.
访问ws路径就是www.sdfsdf.com/Wsd23sd
配置正确会在浏览器里显示Bad request。
3.
这个没问题。
網站通過v2ray可以正常訪問
看一下不挂代理能不能访问?有的服务器IP买到就不能用(搬瓦工,vultr是重灾区)
打开CDN试试。
2.
訪問ws路徑給我的回應是:No such file or directory
用浏览器访问,比如你的域名是:www.sdfsdf.com,ws路径设置是/Wsd23sd.
访问ws路径就是www.sdfsdf.com/Wsd23sd
配置正确会在浏览器里显示Bad request。
3.
關閉了selinux,給我的回應:setsebool: SELinux is disabled.
这个没问题。
1. 看一下不挂代理能不能访问?有的服务器IP买到就不能用(搬瓦工,vultr是重灾区)打开CDN试.试
可以打開可以用
用浏览器访问,比如你的域名是:www.sdfsdf.com,ws路径设置是/Wsd23sd.
访问ws路径就是www.sdfsdf.com/Wsd23sd
配置正确会在浏览器里显示Bad request。
顯示的也是bad request
那我是不是就要用大佬給出的帶log的文件重新替換找出問題了?
v2ray沒有給我反饋invalid user,我測延時正常也就200ms,但是測試服務器測試真延遲和服務器速度跟我反饋的是操作超時和503服務器不可用。
可以打開可以用
顯示的也是bad request
看上去是v2ray那边的问题,再试试:
1. websocket路径,nginx和v2ray是不是完全一样?
2. 输入netstat -nltp 看下v2ray有没有监听8964端口?
如果在监听8964端口会有这样的输出:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 25465/nginx: master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 3423/sshd
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 25465/nginx: master
tcp 0 0 127.0.0.1:8964 0.0.0.0:* LISTEN 2365/v2ray
tcp6 0 0 :::22 :::* LISTEN 1224/sshd
3. 校正服务器时间(和客户端时间不能超过90秒,和时区无关)时间不对就会报invalid user
invalid user要在服务端log里面看,这需要打开log
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 11610/nginx: master
tcp 0 0 127.0.0.1:8964 0.0.0.0:* LISTEN 11579/v2ray
tcp 0 0 0.0.0.0:22122 0.0.0.0:* LISTEN 608/sshd
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 11610/nginx: master
tcp6 0 0 :::22122 :::* LISTEN 608/sshd
tcp6 0 0 :::80 :::* LISTEN 11610/nginx: master
貌似是监听8964端口了
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 11610/nginx: master
tcp 0 0 127.0.0.1:8964 0.0.0.0:* LISTEN 11579/v2ray
tcp 0 0 0.0.0.0:22122 0.0.0.0:* LISTEN 608/sshd
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 11610/nginx: master
tcp6 0 0 :::22122 :::* LISTEN 608/sshd
tcp6 0 0 :::80 :::* LISTEN 11610/nginx: master
貌似是监听8964端口了
求助眾大神,俺是小白,想一步步跟着做,做到 安装Certbot 這一步,輸入:yum install -y python36 && pip3 install certbot
得到:-bash: yum: command not found
請問如何是好?
得到:-bash: yum: command not found
請問如何是好?
得到:-bash: yum: command not found請問如何是好?
你的系统是Ubuntu吧…在VPS网页控制面板上重装点reinstall,系统选择成CentOS7就可以了。前面已经做过的操作(配置域名之类)不受影响。
你的系统是Ubuntu吧…在VPS网页控制面板上重装点reinstall,系统选择成CentOS7就...
好的,是這個嗎?【Linux Centos 7.1503.01 X86 64 Minimal Gen2 V1】
然後在它上面有個note『Note: This OS does not work with our protected IP addon.』這有影響嗎?
謝謝!
我测了一下配置文件应该没有问题。这个配置文件是保存在/root/下面,如果出问题就是没有这个目录的权...
哦,对了。刚才把您的代码复制粘贴过来之后改完上传完之后按照之前的测试的时候报错来着,貌似是少了个括号,然后我自己就加上了,错误就没有了。这个会不会有影响?
校正服务器时间(和客户端时间不能超过90秒,和时区无关)时间不对就会报invalid user
invalid user要在服务端log里面看,这需要打开log.
大佬,我的机房在美国,时间默认是+0000,是不是要改成北京时间?
谢谢
这个和时区没有关系。关键是换算成UTC之后必须都是一样的。(相差不超过90秒)
明白了。
我算了一下时间不超过90s。但是我现在的问题就是访问ws文件404但是可以正常不通过任何代理访问那个网站和v2ray没法用来访问外网的问题。前面的一致性也检查过了,没有问题,请大佬再费心指导一下,谢谢
明白了。我算了一下时间不超过90s。但是我现在的问题就是访问ws文件404但是可以正常不通过任何代理...
换成那个带log的配置文件,看下v2ray_access.log和nginx_error.log
老大,我终于找到为什么我上传的网页没有css,显示不了图片的问题了。。
这是因为我在网上看到: nginx的启动用户默认是nginx的,所以对目录根本没有读的权限。
所以,我将所有目录的文件,增加了公共权限----读取的权限后,就可以了。。。
现在用我的搬瓦工 los angelas cn2来翻墙很愉悦,基本youtube的 1080p 看没有问题, 但是我用的软路由,感觉速度没有传说中的那么快。 老大,能不能出一篇文章,看看能不能通过v2ray 速度更快。。例如国内中转之类的教程。
这是因为我在网上看到: nginx的启动用户默认是nginx的,所以对目录根本没有读的权限。
所以,我将所有目录的文件,增加了公共权限----读取的权限后,就可以了。。。
现在用我的搬瓦工 los angelas cn2来翻墙很愉悦,基本youtube的 1080p 看没有问题, 但是我用的软路由,感觉速度没有传说中的那么快。 老大,能不能出一篇文章,看看能不能通过v2ray 速度更快。。例如国内中转之类的教程。
打开v2ray之后的报错[Warning] failed to handler mux client...
感觉客户端配置也有问题。最好是有客户端配置,和服务端log。
另外这个泄露vps ip了,编辑一下吧
老大,我终于找到为什么我上传的网页没有css,显示不了图片的问题了。。这是因为我在网上看到:
感谢反馈!之前测试没有遇到过读写权限的问题,可能是版本差异。
=====================
4.14更新:在Nginx配置里打开长连接,可以明显提升速度。配置文件已经更新。