前言
之前有总结过一篇 V2Ray+websocks+nginx+TLS+cdn科学上网防止被墙 的文章,这里就总结下V2Ray从0开始的搭建部署。
Project V
Project V 是一个工具集合,它可以帮助你打造专属的基础通信网络。Project V 的核心工具称为V2Ray
,其主要负责网络协议和功能的实现,与其它 Project V 通信。V2Ray 可以单独运行,也可以和其它工具配合,以提供简便的操作流程。
主要特性
- 多入口多出口: 一个 V2Ray 进程可并发支持多个入站和出站协议,每个协议可独立工作。
- 可定制化路由: 入站流量可按配置由不同的出口发出。轻松实现按区域或按域名分流,以达到最优的网络性能。
- 多协议支持: V2Ray 可同时开启多个协议支持,包括 Socks、HTTP、Shadowsocks、VMess 等。每个协议可单独设置传输载体,比如 TCP、mKCP、WebSocket 等。
- 隐蔽性: V2Ray 的节点可以伪装成正常的网站(HTTPS),将其流量与正常的网页流量混淆,以避开第三方干扰。
- 反向代理: 通用的反向代理支持,可实现内网穿透功能。
- 多平台支持: 原生支持所有常见平台,如 Windows、Mac OS、Linux,并已有第三方支持移动平台
准备工作
首先你要有一台国外的VPS服务器,如果没有,参考以下链接购买即可,不用部署他里面的SS。
https://www.itwordsweb.com/linux_doc/ss.html
开始部署 v2ray
使用V2Ray生成器生成V2Ray服务端和客户端的配置信息,把内容铐下来分别存到一个文本,后面会用到(客户端的其实无所谓)。
https://intmainreturn0.com/v2ray-config-gen/#
连接到你国外的VPS服务器,安装 v2ray 服务端并做相应配置。
cd /usr/local/src/
wget https://install.direct/go.sh
chmod 755 go.sh
./go.sh
看到最后一行信息就是安装成功
编辑v2ray的配置文件,把生成器里面保存出来的服务端的代码贴进去(根据你自己生成的信息,下面是参考)。
echo '' > /etc/v2ray/config.json
vi /etc/v2ray/config.json
{
"log": {
"access": "/var/log/v2ray/access.log",
"error": "/var/log/v2ray/error.log",
"loglevel": "warning"
},
"inbound": {
"port": 12345,
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "5a34de70-909c-42a2-33d0-4e1e7757affa",
"level": 1,
"alterId": 100
}
]
}
},
"outbound": {
"protocol": "freedom",
"settings": {}
},
"inboundDetour": [],
"outboundDetour": [
{
"protocol": "blackhole",
"settings": {},
"tag": "blocked"
}
],
"routing": {
"strategy": "rules",
"settings": {
"rules": [
{
"type": "field",
"ip": [
"0.0.0.0/8",
"10.0.0.0/8",
"100.64.0.0/10",
"127.0.0.0/8",
"169.254.0.0/16",
"172.16.0.0/12",
"192.0.0.0/24",
"192.0.2.0/24",
"192.168.0.0/16",
"198.18.0.0/15",
"198.51.100.0/24",
"203.0.113.0/24",
"::1/128",
"fc00::/7",
"fe80::/10"
],
"outboundTag": "blocked"
}
]
}
}
}
# 最后启动 v2ray 服务端
systemctl start v2ray
netstat -lntup
可以见到已经在监听 12345 端口
#关闭防火墙和SELINUX
systemctl stop firewalld
systemctl disable firewalld
vi /etc/selinux/config
SELINUX=disabled
yum -y install iptables-services
systemctl start iptables
systemctl enable iptables
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 12345 -j ACCEPT
service iptables save
iptables -nvL
此处可以见到,已经正确的把 12345 端口添加到防火墙。
然后右键电脑右下角
访问下谷歌
客户端刷新出来的日志信息。现在的v2ray 不是最安全的,有被墙的可能性。所以通过websocket + TLS + nginx 的加密形式,最后再加上 CDN 是最安全最稳定的
ps:
service v2ray status
service v2ray stop
service v2ray start
service v2ray restart
vi /etc/v2ray/config.json
叨叨几句... NOTHING