v2ray实现ws+tls+nginx加密传输
文章目录
1.V2Ray加密tls原理
别的代理都是直接客户端穿墙使用TCP、HTTP或自定义协议和墙外的服务器连接。 V2Ray的这套方案则是在墙外做一个启用HTTPS的Nginx服务,使用本地的客户端和墙外的Nginx以WS协议进行连接(这就和一个真正的网站行为一模一样了)。然后在Nginx背后用代理进行内容的访问。 这样的解决方案墙是无法分辨到底是一个代理服务器还是一个正常用户在用HTTPS访问网站,HTTPS也保证了墙无法探知流量的内容。
2.安装
2.1 安装v2ray
centos7以及其他支持系统可以直接使用官方一键安装脚本
|
|
安装信息:
|
|
2.2 安装nginx
|
|
nginx配置信息
|
|
2.3 安装证书
使用 TLS 需要证书,证书也有免费付费的,同样的这里使用免费证书,证书认证机构为 Let's Encrypt。 证书的生成有许多方法,这里使用的是比较简单的方法:使用 acme.sh 脚本生成. 前提:一定要有效域名并且指向了VPS地址,否则证书解析会报错。
|
|
如果安装报错,那么可能是因为系统缺少 acme.sh 所需要的依赖项,根据提示安装依赖之后然后重新安装一遍 acme.sh
|
|
修改nginx配置
|
|
使用检测工具查看安全评级:https://www.ssllabs.com/ssltest/analyze.html?d=${domain}
使用 crontab 命令查看 acme.sh 添加的证书刷新脚本:
|
|
3.配置v2ray服务器
编辑配置文件/etc/v2ray/config.json:
|
|
启动v2ray:
|
|
4.配置Nginx服务
在之前安装HTTPS更改过的nginx配置中再添加一个location:
|
|
重启nginx:
|
|
5.客户端v2ray配置
编辑config.json文件:
|
|