github-Snawoot/rsp:速度更快的SSH代理客戶端軟體

banq發表於2021-03-30

假設您要下載在您的大學購買的期刊上發表的論文。在這種情況下,您必須使用IP地址屬於您大學的計算機連線到期刊的網站。如果您在家裡工作,眾所周知您可以連線到大學的VPN,這樣您的IP地址將被偽裝成校園的IP地址,使您可以下載大學所支付的論文。VPN是否有任何簡單的替代解決方案?如果可以透過SSH連線到使用大學IP地址執行的伺服器,則答案為“是”。
最簡單做法是使用Linux的SSH命令:

$ ssh -NTCD 12345 SSH_remote_host_IP
========================= 
-N不執行遠端命令
-T禁用偽終端分配
-C請求壓縮所有資料
-D <port>
指定本地“動態”應用程式級埠轉發。這透過分配一個套接字來偵聽本地端的埠而起作用,可選地,每當與此埠建立連線時,該連線都會透過安全通道轉發,然後使用應用協議確定從該埠連線到哪裡。遠端機器。當前支援SOCKS4和SOCKS5協議,而ssh將充當SOCKS伺服器。



rsp是簡單的SSH升級版本,是實現SSH協議的SOCKS5代理功能的SSH客戶端。關鍵特點是使用多個連線大幅度提升效能,克服了在單個SSH會話中多路傳輸許多隧道式TCP連線的缺點。多個會話不受單個連線的TCP視窗大小的限制,並且丟包不會立即影響所有隧道連線。為了減少連線的等待時間,建立rsp了穩定的連線池,並以可配置的速率進行補充。
 
特點
  • 與傳統的OpenSSH客戶端相比,具有較高的速度。
  • 跨平臺(Windows,Linux,macOS和其他類似Unix的系統)。
  • 伺服器需要零設定。rsp可以立即用於任何SSH伺服器。
  • 自給自足:不需要客戶端上的OpenSSH即可執行。
  • SOCKS5遠端DNS支援。
  • 使用非同步連線池向使用者隱藏的連線建立延遲。
  • 連線建立速率限制可防止使用者受到SSH氾濫的威脅。
  • 支援透明的操作模式(僅Linux),這意味著rsp可在Linux閘道器上使用,以無縫包裝整個網路的流量。
  • 透過100Mbps連線在Debian 9伺服器上進行了測試。到伺服器的往返時間為128毫秒,平均資料包丟失率約為0.5%。

該專案比競爭對手窮人的VPNsshuttle速度更快,後者是所有連線都複用到單個連線中,這會降低效能。
 

相關文章