1. 程式人生 > >上網需求與Vmess+TLS+Websocket+Web簡介

上網需求與Vmess+TLS+Websocket+Web簡介

本文主要根據作者實踐,分享一下目前較為安全穩定的Vmess+TLS+Web上網方式的配置方法,用以替代已經可被the Wall較為準確識別的ssr,ss。

前言

前段時間ssr也變得不穩定了,平均一個ip用不到一週就會被blocked,經過和朋友的學習與討論,發現Vmess+TLS+Web算是現今較為穩定的上網方式,簡單配置後得以成功,經過一週多的測試,此方法現在來看比較穩定。

科學上網三大需求

在進行具體配置講解之前,首先探討一下我們的需求,我們為什麼要科學上網?很顯然,每個人的需求都是不同的,這就使得我們需要不同的解決方案來應對。大體上我們的需求有以下三種:

  • 開放網路連線,使得 A 和 B 可以間接地進行正常通訊;(速度)
  • 通訊內容,雙方身份不能被第三方知曉;(安全)
  • 網路連線要穩定,不能間歇或永久地失效;(穩定)

這三個需求在不同的人那裡都有不同的優先順序,比如對於速度的要求,如果是ISP的限制我們可以新增流量混淆來迷惑它,對於安全性要求高,我們可以使用安全的vpn或TOR這種P2P匿名網路(上過暗網的小夥伴肯定對它不陌生),但其缺點也是顯著的,現在wall已經能夠很容易的識別各種vpn協議和tor協議了,加之tor因為用了多級代理,速度實在是慢,顯然專門是為了匿名設計的。

這篇文章主要針對的是第三個需求,就是穩定(利用TLS可以實現內容安全,但通訊雙方身份還是不能很好保密),用這種方法配置,協議基本不會被檢測出來,因為我們實現的是完美的真實的https通訊,不是偽裝的https,不排除未來會有更先進智慧的流量檢測方式出現,識別出此種辦法,但如今來看還是很穩的。當然因為加了web後相當於多了一層代理,速度還是不如直接用ss/ssr。但已經有文章指出通過隨機森林演算法檢測ss的流量,可達到85%的檢測精度,而且退一步想,wall或許根本不需要識別協議,一個用著奇怪tcp協議的大流量伺服器ip,卻完全沒有http/https流量,本身就很值得懷疑了。

SS協議與用Vmess+https的代理邏輯對比

upload successful

upload successful

可以看到,其實我們實現的就是在中間添加了一個反向代理,把後端的v2ray(用Vmess協議的軟體)伺服器端隱藏了起來,前端變成了真實的TLS流量(當然需要我們自己申請域名證書),前端可以是Apache或者Nginx,而WebSocket的功能就是提供了一個全雙工的通道,讓Web伺服器和v2ray可以自由通訊。

TLS的特性決定了這樣的通訊,內容是絕對不會被破解,除非私鑰洩密,外人在怎麼看,也只能看出來你在用瀏覽器上網,不可能解密到你的實際通訊內容,也就不會知道你實際在...

實現主要步驟

  1. 購買域名
  2. 租用vps
  3. 域名解析到vps
  4. 配置證書
  5. 配置v2ray服務端
  6. 配置Apache/Nginx,設定代理
  7. 配置客戶端

參考