Shadowsocks zvinyorwa
Navigation
Shadowsocks Configuration Format
Config File
Shadowsocks inotora JSON mafomati magadzirirwo:
{
"sevha":"my_server_ip",
"server_port":8388,
"nzvimbo_chiteshi":1080,
"password": "barfoo!",
"nzira": "chacha20-ietf-poly1305"
}
JSON Format
- server : zita rako rekutambira kana server IP (IPv4/IPv6).
- server_port: server port number.
- local_port: nhamba yechiteshi chenzvimbo.
- password: password inoshandiswa encrypt kutamisa.
- nzira: encryption nzira.
Encryption Method
Isu tinogadzirisa maseva edu uye tinokurudzira kuti ushandise chacha20-ietf-poly1305 AEAD cipher nekuti ndiyo nzira yakasimba yekuvharidzira.
Kana ukagadzirisa yako shadowsocks server, unogona kusarudza kubva ku "chacha20-ietf-poly1305" kana "aes-256-gcm".
URI uye QR kodhi
Shadowsocks ye Android / IOS zvakare inotora BASE64 encoded URI fomati configs:
ss://BASE64-ENCODED-STRING-WITHOUT-PADDING#TAG
Iyo yakajeka URI inofanirwa kunge iri: ss://method:password@hostname:port
Iyo URI iri pamusoro haiteveri RFC3986. Pasiwedhi mune ino kesi inofanira kunge iri mavara, kwete muzana-encoded.
Muenzaniso: Tiri kushandisa sevha pa192.168.100.1:8888 kushandisa bf-cfb encryption nzira uye password bvunzo/!@#:.
Zvadaro, neURI yakajeka ss://bf-cfb:test/!@#:@192.168.100.1:8888, tinogona kugadzira iyo BASE64 encoded URI:
> console.log(“ss://” + btoa(“bf-cfb:test/!@#:@192.168.100.1:8888”))
ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg
Kubatsira kuronga uye kuona maURI aya, unogona kuisa tag mushure meBASE64 encoded tambo:
ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg#example-server
Kutaura
Shadowsocks inoshandisa kero inowanikwa muSOCKS5 kero fomati:
[1-byte type][variable-length host[2-byte port]
Heano marudzi emakero anotsanangurwa:
- 0x01 : host ndeye 4-byte IPv4 kero.
- 0x03 : host is a variable urefu tambo, kutanga ne 1-byte kureba, inoteverwa ne max 255-byte domain name.
- 0x04 : host ndeye 16-byte IPv6 kero.
Nhamba yechiteshi ndeye 2-byte hombe-endian isina kusaina nhamba.
TCP
Iyo ss-yemunharaunda mutengi anotanga kubatana kune ss-kure nekutumira data rakavharidzirwa kutanga nekero yakanangwa ichiteverwa nedhata rekubhadhara. Iyo encryption ichave yakasiyana zvichienderana necipher inoshandiswa.
[kunangwa kero][payload]
Iyo ss-remote inogamuchira iyo yakavharidzirwa data, yobva yabvisa uye inobvisa kero yakanangwa. Zvadaro inogadzira itsva TCP yekubatanidza kune chinangwa uye inoendesa mberi iyo payload data kwairi. ss-remote inogamuchira mhinduro kubva kune yakanangwa ipapo encrypts iyo data uye inoidzosera kumashure kune ss-yemunharaunda kusvika yabviswa.
Nekuda kwezvinangwa, zvemuno nerekure zvinofanirwa kutumira data rekubata ruoko pamwe nemubhadharo mupaketi yekutanga.
UDP
ss-yenzvimbo inotumira iyo encrypted data packet ine kero yakanangwa uye payload kune ss-kure.
[kunangwa kero][payload]
Kamwe iyo encrypted packet yagamuchirwa, ss-remote decrypts uye inobvisa kero yakanangwa. Iyo inobva yatumira itsva data pakiti ine mubhadharo kune chinangwa. ss-remote inogamuchira mapaketi edatha kubva kune chinangwa uye inofanogadzirira kero yakanangwa kumubhadharo wepaketi yega yega. Makopi akavharidzirwa anodzoserwa kune ss-yenzvimbo.
[kunangwa kero][payload]
Iyi nzira inogona kubikwa kusvika ku ss-remote ichiita kushandura kero yenetiweki ye ss-yemunharaunda.