Proxy server outline-ss-server verzie 1.4 bol vydaný a používa protokol Shadowsocks skryť vzorce prenosu dát, obísť firewally a oklamať systémy kontroly paketov. Server vyvíja projekt Outline, ktorý navyše poskytuje rámec klientskych aplikácií a rozhranie pre správu, čo umožňuje rýchle nasadenie systémov pre viacerých používateľov. Shadowsocks-servery založené na outline-ss-server vo verejných cloudových prostrediach alebo na lokálnom hardvéri, spravovať ich prostredníctvom webového rozhrania a organizovať prístup používateľov pomocou kľúčov. Kód vyvíja a spravuje spoločnosť Jigsaw, divízia v rámci spoločnosti Google vytvorená s cieľom vyvíjať nástroje na obchádzanie cenzúry a uľahčovať voľnú výmenu informácií.
Outline-ss-server je napísaný v jazyku Go a distribuovaný pod licenciou Apache 2.0. Je založený na kóde proxy.server go-shadowsocks2, vytvorený komunitou vývojárov ShadowsocksHlavnou aktivitou projektu v poslednej dobe Shadowsocks sa zameriava na vývoj nového servera v jazyku Rust, zatiaľ čo implementácia Go nebola aktualizovaná už viac ako rok a citeľne zaostáva vo funkčnosti.
Rozdiely medzi outline-ss-server a go-shadowsocks2 spočívajú v podpore pripojenia viacerých používateľov cez jeden sieťový port, možnosti otvoriť viacero sieťových portov na prijímanie pripojení, podpore horúceho reštartu a aktualizácii konfigurácie bez prerušenia pripojenia, vstavanému monitorovaniu a nástroje na úpravu návštevnosti založené na platforme prometheus .io.

Outline-ss-server tiež pridáva ochranu pred útokmi zahŕňajúcimi odosielanie overovacích žiadostí a prehrávanie prenosu. Útok s overovacou požiadavkou je zameraný na detekciu prítomnosti proxy; útočník môže napríklad odoslať požiadavku cieľu. Shadowsocks-serverové súbory údajov rôznych veľkostí a analyzujú, koľko údajov server prečíta predtým, ako zistí chybu a ukončí pripojenie. Útok na prehrávanie prevádzky je založený na únose relácie medzi klientom a server po ktorom nasleduje pokus o opätovné odoslanie zachytených údajov s cieľom určiť prítomnosť proxy servera.
Na ochranu pred útokmi prostredníctvom požiadaviek na overenie server obrys-ss-server, keď prídu nesprávne údaje, neukončí spojenie a nezobrazí chybu, ale naďalej prijíma informácie a pôsobí ako druh čiernej diery. Na ochranu pred opakovaním sú dáta prijaté od klienta dodatočne kontrolované na opakovanie pomocou kontrolných súčtov uložených pre posledných niekoľko tisíc sekvencií handshake (maximálne 40 tisíc, veľkosť je nastavená pri štarte servera a spotrebuje 20 bajtov pamäte na sekvenciu). Na blokovanie opakujúcich sa odpovedí zo servera všetky sekvencie handshake servera používajú autentifikačné kódy HMAC s 32-bitovými značkami.
Podľa úrovne protokolu o utajovaní premávky Shadowsocks Vo svojej implementácii je outline-ss-server podobný zásuvnému transportu Obfs4 v anonymnej sieti Tor. Protokol bol vytvorený na obídenie čínskeho Veľkého firewallu a umožňuje pomerne efektívne zahmlievanie prevádzky smerovanej cez iný server (prevádzku je ťažké identifikovať vďaka zahrnutiu náhodného semena a simulácii nepretržitého toku).
Ako proxy protokol pre požiadavky sa používa SOCKS5. Na lokálnom systéme sa spustí proxy s podporou SOCKS5, ktorý tuneluje prevádzku na vzdialený server, z ktorého sa požiadavky skutočne vykonávajú. Prevádzka medzi klientom a serverom je umiestnená v šifrovanom tuneli (podporované je overené šifrovanie AEAD_CHACHA20_POLY1305, AEAD_AES_128_GCM a AEAD_AES_256_GCM), pričom hlavným cieľom je skryť fakt, že sa tunel vytvára. ShadowsocksPodporované je tunelovanie TCP a UDP, ako aj vytváranie vlastných tunelov, ktoré nie sú obmedzené len na SOCKS5, pomocou pluginov podobných pluginom Tor.
Zdroj: opennet.ru
