Dokiman Shadowsocks
Navigasyon
Shadowsocks Fòma Konfigirasyon
File konfigirasyon
Shadowsocks pran konfigirasyon fòma JSON:
{
"server":"my_server_ip",
"server_port":8388,
"local_port": 1080,
"modpas":"barfoo!",
"metòd":"chacha20-ietf-poly1305"
}
Fòma JSON
- sèvè: non host ou oswa IP sèvè ou (IPv4/IPv6).
- server_port: nimewo pò sèvè.
- local_port: nimewo pò lokal.
- modpas: yon modpas ki itilize pou ankripte transfè.
- metòd: metòd chifreman.
Metòd chifreman
Nou konfigirasyon serveurs nou yo epi rekòmande pou ou itilize chacha20-ietf-poly1305 AEAD chifreman paske li se metòd ki pi fò nan chifreman.
Si w ap konfigirasyon pwòp sèvè shadowsocks ou, ou ka chwazi nan swa "chacha20-ietf-poly1305" oswa "aes-256-gcm".
URI & QR Kòd
Shadowsocks pou Android / IOS pran tou konfigirasyon fòma URI kode BASE64:
ss://BASE64-ENCODED-STRING-WITHOUT-PADDING#TAG
URI a plenn ta dwe: ss://method:password@hostname:port
URI ki anwo a pa swiv RFC3986. Modpas la nan ka sa a ta dwe tèks klè, pa pousan-kode.
Egzanp: Nou ap itilize yon sèvè nan 192.168.100.1:8888 lè l sèvi avèk bf-cfb metòd chifreman ak modpas tès/!@#:.
Lè sa a, ak URI a plenn ss://bf-cfb:test/!@#:@192.168.100.1:8888, nou ka jenere URI kode BASE64:
> console.log( "ss://" + btoa ("bf-cfb:test/!@#:@192.168.100.1:8888"))
ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg
Pou ede òganize ak idantifye URI sa yo, ou ka mete yon tag apre kòd BASE64 kode:
ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg#example-server
Adrese
Shadowsocks sèvi ak adrès yo jwenn nan fòma adrès SOCKS5 la:
[kalite 1-byte] [lame-longè varyab] [2-byte pò]
Men kalite adrès yo defini:
- 0x01: lame se yon adrès IPv4 4-byte.
- 0x03 : lame se yon kòd longè varyab, kòmanse ak yon longè 1-byte, ki te swiv pa yon non domèn max 255-byte.
- 0x04: lame se yon adrès IPv16 6-byte.
Nimewo pò a se yon nonb antye relatif 2-byte big-endian ki pa siyen.
Tchp
Kliyan ss-lokal la inisye yon koneksyon ak ss-remote pa voye done chiffres kòmanse ak adrès sib la ki te swiv pa done chaj yo. Chifre a pral diferan selon chifreman yo itilize a.
[adrès sib][chajman]
Ss-remote a resevwa done yo chiffres, Lè sa a, dechifre ak analize adrès sib la. Lè sa a, li kreye yon nouvo koneksyon TCP ak sib la epi voye done chaj yo ba li. ss-remote resevwa yon repons nan men sib la Lè sa a, ankripte done yo epi voye li tounen nan ss-local jiskaske li dekonekte.
Pou rezon obfuscation, lokal yo ak aleka ta dwe voye done lanmen yo ak kèk chaj nan premye pake a.
udp
ss-local voye pake done chiffres ki gen adrès sib la ak chaj pou ss-remote.
[adrès sib][chajman]
Yon fwa yo resevwa pake a chiffres, ss-remote dechifre ak analize adrès sib la. Lè sa a, li voye yon nouvo pake done ak chaj la nan sib la. ss-remote resevwa pakè done ki soti nan sib la epi li mete adrès sib la devan chaj la nan chak pake. Kopi chiffré yo voye tounen nan ss-local.
[adrès sib][chajman]
Pwosesis sa a ka bouyi desann nan ss-remote fè yon tradiksyon adrès rezo pou ss-local.