大概一年前vmess发挥稳定的时候,我总结过一篇完整版的nginx web端搭配vmess的windows服务端配置教程分享
现如今tls被突破,jarm指纹问题导致今后的拉锯战变得更加波动,所以完整版伪装已失去意义,今天更新一篇只需要一个nginx反代国外大流量网站,搭配xray core,选择vless协议并采用最新xtls-rprx-vision流控,做一个简单的,可以轻松上手,快速更新的配置。文章最后放了个自解压包,包含所有组件,解压到c盘自己改改配置直接就能用。
由于去掉了php解析和mariadb等数据库安装配置流程,所以整体就简单很多了,安装配置nginx,配好你的网站证书,下载配置v2ray,就差不多搞定了
一、组件下载
1.Nginx
访问 http://nginx.org/en/download.html 获取windows版本的nginx
这里直接下载 http://nginx.org/download/nginx-1.23.3.zip zip包
解压到C:/Software/ 目录下,即C:/Software/nginx-1.23.3
2.Xray
访问 https://github.com/XTLS/Xray-core/releases 获取需要版本的Xray
这里直接下载 最新的Xray-core v1.6.6-2,Xray-windows-64.zip
因为需要用到最新的xtls-rprx-vision流控,用以搭配vless-TCP-tls协议组合。
解压到C:/Software/ 目录下,即C:/Software/Xray-windows-64
如果你想要cmd命令行窗口后台运行,可以下载
https://redmine.lighttpd.net/attachments/660/RunHiddenConsole.zip
解压到C:/Software/ 目录下即可,最后目录参考如下:
二、配置参数
我们依次配置第一步中各个组件
1.配置环境变量
编辑一个 Set_path.txt文档,填入如下内容:
setx /m Path "%PATH%;C:\Software\nginx-1.23.3;C:\Software\Xray-windows-64;C:\Software\;"
分别设置以上各个组件的文件路径,便于指令调用
确认路径无误后,修改后缀为.bat 批处理文件,执行,查看我的电脑 右键 属性 >>>系统高级设置>>>高级菜单>>>环境变量选项>>>系统变量>>>选择Path (路径)检查是否成功;
你也可以windows搜索Path或者 系统环境变量 ,来快速访问。
如果你以前配置过当前用户的Path变量的话,上述设置中的%PATH%组成将会是系统Path+用户Path组合,如果不需要用户Path,则建议使用cmd指令set >> C:\Environment.txt
导出所有Path到指定位置,将其中需要的系统Path部分取出替换上述bat脚本中的%PATH%,最后请注意windows系统一般只支持最大1023字节的Path总长度,如超过长度,自行删减。
需要的组件全部下载完毕,设置好路径之后.cmd输入:
nginx -v
xray version
查看是否设置成功
然后选择一个你喜欢的做站路径,这里演示为
C:\Software\nginx-1.23.3\html
接下来就可以开始配置各个组件的详细参数了。
2.配置域名证书
acme申请或者自己手动申请都行,这里放置在C:\Software\cert
一个.crt证书文件,一个.key私钥
顺手做个解析,将域名解析到vps ip上。
3.配置nginx
找到nginx目录下的 nginx.conf
写入以下配置:
events {
worker_connections 768;
}
http {
server {
listen 80 default_server;
listen [::]:80 default_server;
location / {
proxy_pass https://www.bing.com;
proxy_ssl_server_name on;
proxy_redirect off;
sub_filter_once off;
sub_filter "www.bing.com" $server_name;
proxy_set_header Host "www.bing.com";
proxy_set_header Referer $http_referer;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header User-Agent $http_user_agent;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Accept-Encoding "";
proxy_set_header Accept-Language "zh-CN";
}
}
}
用来反代bing.com,配置好以后直接访问你的域名就是bing.com的内容,可以正常搜索。
4.配置Xray
我们采用vless前置监听443端口,将vless协议的信息进行处理实现扶墙,不符合标准的信息回落到12345端口让trojan来分析,trojan接手本身的加密信息,将不符合标准的信息再次回落到80端口,让刚才监听80端口的nginx来处理这些https信息:
{
"routing": {
"domainStrategy": "IPIfNonMatch",
"rules": [
{
"type": "field",
"ip": [
"geoip:cn",
"geoip:private"
],
"outboundTag": "block"
}
]
},
"inbounds": [
{
"port": 443,
"protocol": "vless",
"settings": {
"clients": [
{
"id": "你的UUID",
"flow": "xtls-rprx-vision"
}
],
"decryption": "none",
"fallbacks": [
{
"dest": 12345,
"xver": 1
}
]
},
"streamSettings": {
"network": "tcp",
"security": "tls",
"tlsSettings": {
"rejectUnknownSni": true,
"alpn": [
"http/1.1"
],
"certificates": [
{
"certificateFile": "C:\\Software\\Xray-windows-64\\你的证书.crt",
"keyFile": "C:\\Software\\Xray-windows-64\\你的密钥.key"
}
]
}
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls"
]
}
},
{
"port": 12345,
"listen": "127.0.0.1",
"protocol": "trojan",
"settings": {
"clients": [
{
"password": "你的trojan密码"
}
],
"fallbacks": [
{
"dest": 80
}
]
},
"streamSettings": {
"network": "tcp",
"security": "none",
"tcpSettings": {
"acceptProxyProtocol": true
}
}
}
],
"outbounds": [
{
"protocol": "freedom",
"tag": "direct"
},
{
"protocol": "blackhole",
"tag": "block"
}
]
}
5.配置windows防火墙
我们需要对windows防火墙开放刚才配置的80和443端口
将以下脚本存入txt文档并修改后缀为.bat,双击运行即可:
rem Open TCP Port 80&443 inbound
netsh advfirewall firewall add rule name="Http TCP Port 80" dir=in action=allow protocol=TCP localport=80
netsh advfirewall firewall add rule name="Https TCP Port 443" dir=in action=allow protocol=TCP localport=443
如果需要修改别的端口,自己另起一行加上就可以的
删除对应规则可以自己手动去防火墙规则删除,也可以如下指令删除:
netsh advfirewall firewall delete rule name="Https TCP Port 80" dir=in
6.配置启停脚本
我们配置两个bat脚本用来管理xray的启停,方便操作,以及后面的开机自启管理。
将以下指令存入txt文档并修改后缀为.bat即可,双击就是运行xray了:
@echo off
echo Stopping nginx...
taskkill /F /IM nginx.exe > nul
echo Stopping xray...
taskkill /F /IM wxray.exe > nul
set nginx_home=C:\Software\nginx-1.23.3\
set xray_home=C:\Software\Xray-windows-64\
:start-nginx
echo Starting NGINX...
RunHiddenConsole %nginx_home%/nginx.exe -p %nginx_home%
:start-xray
Start %xray_home%\wxray.exe run
而停止xray和nginx运行的脚本参考如下:
@echo off
echo Stopping nginx...
taskkill /F /IM nginx.exe > nul
echo Stopping xray...
taskkill /F /IM wxray.exe > nul
exit
启动后,客户端配置加密encryption none , flow流控xtls-rprx-vision,传输协议network选择tcp,伪装类型type none,伪装域名和路径不要填,传输层安全 tls选择tls,sni选择你的域名,utls任选一个,跳过证书选择false,不跳过。
基本上这样就够用了,如果你需要开机自启动则继续看
7.配置开机自启计划任务
就是简单地将start脚本加入任务计划程序就可以了,这里放个示例参考,保存为xml文件,任务计划导入即可。
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.4" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
<RegistrationInfo>
<Date>2022-12-22T17:20:39.3416042</Date>
<Author>WINDOWS\Administrator</Author>
</RegistrationInfo>
<Triggers>
<BootTrigger>
<StartBoundary>2022-12-22T09:19:31.8870853Z</StartBoundary>
<Enabled>true</Enabled>
<Delay>PT1M</Delay>
</BootTrigger>
</Triggers>
<Principals>
<Principal id="Author">
<UserId>S-1-5-18</UserId>
<RunLevel>HighestAvailable</RunLevel>
</Principal>
</Principals>
<Settings>
<MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
<DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
<StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
<AllowHardTerminate>false</AllowHardTerminate>
<StartWhenAvailable>true</StartWhenAvailable>
<RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
<IdleSettings>
<StopOnIdleEnd>true</StopOnIdleEnd>
<RestartOnIdle>false</RestartOnIdle>
</IdleSettings>
<AllowStartOnDemand>true</AllowStartOnDemand>
<Enabled>true</Enabled>
<Hidden>false</Hidden>
<RunOnlyIfIdle>false</RunOnlyIfIdle>
<DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
<UseUnifiedSchedulingEngine>false</UseUnifiedSchedulingEngine>
<WakeToRun>false</WakeToRun>
<ExecutionTimeLimit>PT0S</ExecutionTimeLimit>
<Priority>7</Priority>
<RestartOnFailure>
<Interval>PT1M</Interval>
<Count>30</Count>
</RestartOnFailure>
</Settings>
<Actions Context="Author">
<Exec>
<Command>C:\Software\start xray.bat</Command>
<WorkingDirectory>C:\Software\</WorkingDirectory>
</Exec>
</Actions>
</Task>
最后是工具包,可以参看里面的说明使用:
https://drive.google.com/file/d/1ETwhF0ypDyiAcW-UaScr0JO1KkakLSqL/view?usp=sharing
2 comments
请问你测试的Windows VPS的速度咋样,我尝试默认设置下要比Linux慢不少,好像是高延迟的TCP表现都不好
没对比过,win的都是附带搭的v2,有个20来mbps不影响使用就行。