Akwụkwọ Shadowsocks

Usoro nhazi Shadowsocks

Hazie faịlụ

Shadowsocks na-ewe nhazi usoro JSON:

{

    "ihe nkesa":"my_server_ip",

    "ọdụ ụgbọ mmiri":8388,

    "ọdụ ụgbọ mmiri":1080,

    "paswọọdụ":"barfoo!",

    "Ụzọ":"chacha20-ietf-poly1305"

}

Ụdị JSON

  • ihe nkesa: Aha nnabata gị ma ọ bụ IP nkesa (IPv4/IPv6).
  • server_port: nọmba ọdụ ụgbọ mmiri.
  • local_port: nọmba ọdụ ụgbọ mmiri mpaghara.
  • okwuntughe: okwuntughe eji ezofe mbufe.
  • usoro: usoro nzuzo.

Ụzọ ezoro ezo

Anyị na-ahazi sava anyị ma na-akwado ka ị jiri chacha20-ietf-poly1305 AEAD cipher n'ihi na ọ bụ usoro nzuzo kachasị ike. 

Ọ bụrụ na ị na-ahazi ihe nkesa shadowsocks nke gị, ị nwere ike ịhọrọ site na "chacha20-ietf-poly1305" ma ọ bụ "aes-256-gcm".

Koodu URI & QR

Shadowsocks maka gam akporo / IOS na-ewerekwa nhazi usoro URI nwere koodu BASE64:

ss://BASE64-ENCODED-string

 

URI dị larịị kwesịrị ịbụ: ss:// method:password@hostname:port

URI dị n'elu anaghị eso RFC3986. Okwuntughe dị na nke a kwesịrị ịbụ ederede doro anya, ọ bụghị nke etinyere ya na pasentị.



Ọmụmatụ: Anyị na-eji ihe nkesa na 192.168.100.1:8888 eji bf-cfb usoro nzuzo na paswọọdụ nwale/!@#:

 

Mgbe ahụ, jiri URI dị larịị ss://bf-cfb:ule/!@#:@192.168.100.1:8888, anyị nwere ike ịmepụta BASE64 koodu URI: 

 

> console.log

ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg

 

Iji nyere aka hazie na mata URI ndị a, ị nwere ike tinye mkpado ka eriri BASE64 tinyechara:

ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg#example-server

Na-ekwu

Shadowsocks na-eji adreesị ndị achọtara na usoro adreesị SOCKS5:

[ụdị 1-byte] [onye ọbịa ogologo-agbanwe agbanwe [2-byte ọdụ ụgbọ mmiri]

 

Nke a bụ ụdị adreesị ndị akọwapụtara:

  • 0x01: onye ọbịa bụ adreesị IPv4-byte 4.
  • 0x03: onye ọbịa bụ eriri ogologo agbanwe agbanwe, malite na ogologo 1-byte, na-esote ngalaba aha max 255-byte.
  • 0x04: onye ọbịa bụ adreesị IPv16-byte 6.

 

Nọmba ọdụ ụgbọ mmiri bụ integer 2-byte nnukwu-endian enweghị mbinye aka.

TCP

Onye ahịa ss-Local na-ebute njikọ na ss-remote site na izipu data ezoro ezo malite na adreesị ebumnuche na-esote data nkwụ ụgwọ. Ihe nzuzo ga-adị iche dabere na cipher ejiri.

[adreesị ebumnobi] [ibu ọrụ]

ss-remote na-enweta data ezoro ezo, wee mebie ma tụgharịa adreesị ebumnuche. Mgbe ahụ, ọ na-emepụta njikọ TCP ọhụrụ na ihe mgbaru ọsọ ma bufee data nkwụnye ụgwọ na ya. ss-remote na-enweta nzaghachi site na ebumnuche wee zoo data ahụ wee zipu ya azụ na ss-local ruo mgbe ebipụrụ ya.

Maka ebumnuche nkpuchi, mpaghara na ime ime kwesịrị izipu data nkwekọ aka na ụfọdụ nkwụ ụgwọ na ngwugwu mbụ.

UDP

ss-local na-eziga ngwungwu data ezoro ezo nke nwere adreesị ebumnuche yana ibu ọrụ na ss-remote.

[adreesị ebumnobi] [ibu ọrụ]

Ozugbo enwetara ngwugwu ezoro ezo, ss-remote decrypts wee tụgharịa adreesị ebumnuche. Ọ na-eziga ngwugwu data ọhụrụ yana ibu ọrụ na ebumnuche. ss-remote na-enweta ngwungwu data site na ebumnuche ma na-echedo adreesị ebumnuche na ibu ọrụ na ngwugwu ọ bụla. A na-ezigaghachi mbipụta ezoro ezo na ss-local.

[adreesị ebumnobi] [ibu ọrụ]

Enwere ike sie usoro a ka ọ bụrụ ss-remote na-arụ ntụgharị asụsụ adreesị netwọk maka ss-local.

Bido nnwale n'efu nke ụbọchị 5 gị