Shadowsocks документација

Формат за конфигурација на Shadowsocks

Конфигурирај датотека

Shadowsocks зема конфигурации на JSON формат:

{

    „сервер“: „my_server_ip“,

    „server_port“:8388,

    „local_port“:1080,

    „лозинка“: „барфу!“,

    „метод“: „chacha20-ietf-poly1305″

}

JSON формат

  • сервер: вашето име на домаќин или IP на серверот (IPv4/IPv6).
  • server_port: број на порта на серверот.
  • local_port: број на локална порта.
  • лозинка: лозинка што се користи за шифрирање на преносот.
  • метод: метод на шифрирање.

Метод на шифрирање

Ние ги конфигурираме нашите сервери и препорачуваме да ја користите шифрата chacha20-ietf-poly1305 AEAD бидејќи тоа е најсилниот метод за шифрирање. 

Ако го конфигурирате вашиот сопствен сервер Shadowsocks, можете да изберете од „chacha20-ietf-poly1305“ или „aes-256-gcm“.

URI и QR код

Shadowsocks за Android / IOS, исто така, зема конфигурации на BASE64 кодирани URI формати:

ss://BASE64-ENCODED-STRING-WITHOUT-PADDING#TAG

 

Обичниот URI треба да биде: ss://method:password@hostname:port

Горенаведениот URI не го следи RFC3986. Лозинката во овој случај треба да биде обичен текст, а не процентуално шифрирана.



Пример: користиме сервер на 192.168.100.1:8888 користење bf-cfb метод на шифрирање и лозинка тест/!@#:

 

Потоа, со обичниот URI ss://bf-cfb:test/!@#:@192.168.100.1:8888, можеме да генерираме BASE64 кодиран URI: 

 

> console.log( „ss://“ + btoa(„bf-cfb:test/!@#:@192.168.100.1:8888“) )

ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg

 

За да помогнете во организирање и идентификување на овие URI-и, можете да приложите ознака по шифрираната низа BASE64:

ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg#example-server

Адресирање

Shadowsocks ги користи адресите пронајдени во форматот на адреси SOCKS5:

[1-бајт тип][домаќин со променлива должина][2-бајт порта]

 

Еве ги дефинираните типови адреси:

  • 0x01 : домаќинот е IPv4 адреса од 4 бајти.
  • 0x03 : домаќинот е низа со променлива должина, која започнува со должина од 1 бајт, проследена со име на домен од максимум 255 бајти.
  • 0x04 : домаќинот е IPv16 адреса од 6 бајти.

 

Бројот на пристаништето е 2-бајти голем непотпишан цел број.

TCP

Локалниот клиент ss иницира поврзување со ss-далечинскиот управувач со испраќање шифрирани податоци почнувајќи од целната адреса проследена со податоците за товарот. Шифрирањето ќе биде различно во зависност од употребената шифра.

[целна адреса] носивост]

Далечинското ss ги прима шифрираните податоци, потоа ја дешифрира и ја анализира целната адреса. Потоа создава нова TCP конекција до целта и ги препраќа податоците за товарот до неа. ss-remote добива одговор од целта, потоа ги шифрира податоците и ги препраќа назад на ss-local додека не се исклучи.

За цели на заматување, локалното и далечинското треба да ги испратат податоците за ракување со одредено оптоварување во првиот пакет.

UDP

ss-local го испраќа шифрираниот пакет со податоци што ја содржи целната адреса и товарот на ss-далечинскиот управувач.

[целна адреса] носивост]

Откако ќе се прими шифрираниот пакет, ss-далечинскиот управувач ја дешифрира и анализира целната адреса. Потоа испраќа нов пакет со податоци со товарот до целта. ss-remote ги прима пакетите со податоци од целта и ја поставува целната адреса на товарот во секој пакет. Шифрираните копии се испраќаат назад до ss-local.

[целна адреса] носивост]

Овој процес може да се сведе на ss-далечинско извршување на превод на мрежна адреса за ss-local.

Започнете го вашиот 5-дневен бесплатен пробен период