Shadowsocks ஆவணங்கள்
ஊடுருவல்
Shadowsocks கட்டமைப்பு வடிவம்
கோப்பை கட்டமைக்கவும்
Shadowsocks JSON வடிவமைப்பு உள்ளமைவுகளை எடுக்கிறது:
{
“சர்வர்”:”my_server_ip”,
“சர்வர்_போர்ட்”:8388,
"local_port":1080,
"கடவுச்சொல்":"barfoo!",
“முறை”:”chacha20-ietf-poly1305″
}
JSON வடிவம்
- சர்வர்: உங்கள் ஹோஸ்ட்பெயர் அல்லது சர்வர் ஐபி (IPv4/IPv6).
- server_port: சர்வர் போர்ட் எண்.
- உள்ளூர்_போர்ட்: உள்ளூர் போர்ட் எண்.
- கடவுச்சொல்: பரிமாற்றத்தை குறியாக்கப் பயன்படுத்தப்படும் கடவுச்சொல்.
- முறை: குறியாக்க முறை.
குறியாக்க முறை
நாங்கள் எங்கள் சேவையகங்களை உள்ளமைக்கிறோம் மற்றும் நீங்கள் chacha20-ietf-poly1305 AEAD மறைக்குறியீட்டைப் பயன்படுத்த பரிந்துரைக்கிறோம், ஏனெனில் இது குறியாக்கத்தின் வலிமையான முறையாகும்.
உங்கள் சொந்த shadowsocks சர்வரை உள்ளமைத்தால், "chacha20-ietf-poly1305" அல்லது "aes-256-gcm" என்பதை நீங்கள் தேர்வு செய்யலாம்.
URI & QR குறியீடு
ஆண்ட்ராய்டு / ஐஓஎஸ்க்கான ஷேடோசாக்ஸ் BASE64 குறியிடப்பட்ட URI வடிவமைப்பு கட்டமைப்புகளையும் எடுக்கிறது:
ss://BASE64-என்கோடட்-ஸ்ட்ரிங்-இல்லாத-பேடிங்#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
முகவரி
SOCKS5 முகவரி வடிவத்தில் காணப்படும் முகவரிகளை Shadowsocks பயன்படுத்துகிறது:
[1-பைட் வகை][மாறி-நீள ஹோஸ்ட்][2-பைட் போர்ட்]
வரையறுக்கப்பட்ட முகவரி வகைகள் இங்கே:
- 0x01 : ஹோஸ்ட் என்பது 4-பைட் IPv4 முகவரி.
- 0x03 : புரவலன் என்பது 1-பைட் நீளத்துடன் தொடங்கி, அதிகபட்சம் 255-பைட் டொமைன் பெயருடன் தொடங்கும் ஒரு மாறி நீள சரமாகும்.
- 0x04 : ஹோஸ்ட் என்பது 16-பைட் IPv6 முகவரி.
போர்ட் எண் என்பது 2-பைட் பெரிய எண்டியன் கையொப்பமிடப்படாத முழு எண்ணாகும்.
டிசிபி
ss-லோக்கல் கிளையன்ட், குறியாக்கம் செய்யப்பட்ட தரவை அனுப்புவதன் மூலம் ss-remoteக்கான இணைப்பைத் தொடங்கும். பயன்படுத்தப்படும் மறைக்குறியீட்டைப் பொறுத்து குறியாக்கம் வேறுபட்டதாக இருக்கும்.
[இலக்கு முகவரி] [பேலோட்]
ss-remote மறைகுறியாக்கப்பட்ட தரவைப் பெறுகிறது, பின்னர் இலக்கு முகவரியை டிக்ரிப்ட் செய்து பாகுபடுத்துகிறது. பின்னர் அது இலக்குக்கு ஒரு புதிய TCP இணைப்பை உருவாக்கி, அதற்கு பேலோட் தரவை அனுப்புகிறது. ss-remote இலக்கிலிருந்து பதிலைப் பெறுகிறது, பின்னர் தரவை குறியாக்கம் செய்து, அது துண்டிக்கப்படும் வரை மீண்டும் ss-local க்கு அனுப்புகிறது.
தெளிவற்ற நோக்கங்களுக்காக, உள்ளூர் மற்றும் ரிமோட் முதல் பாக்கெட்டில் சில பேலோடுடன் ஹேண்ட்ஷேக் தரவை அனுப்ப வேண்டும்.
யுடிபி
ss-local இலக்கு முகவரி மற்றும் பேலோடைக் கொண்ட மறைகுறியாக்கப்பட்ட தரவு பாக்கெட்டை ss-remote க்கு அனுப்புகிறது.
[இலக்கு முகவரி] [பேலோட்]
மறைகுறியாக்கப்பட்ட பாக்கெட் பெறப்பட்டதும், ss-remote இலக்கு முகவரியை டிக்ரிப்ட் செய்து பாகுபடுத்துகிறது. அது பின்னர் ஒரு புதிய டேட்டா பாக்கெட்டை பேலோடுடன் இலக்குக்கு அனுப்புகிறது. ss-remote இலக்கிலிருந்து தரவு பாக்கெட்டுகளைப் பெறுகிறது மற்றும் ஒவ்வொரு பாக்கெட்டிலும் உள்ள பேலோடுக்கு இலக்கு முகவரியை முன்வைக்கிறது. மறைகுறியாக்கப்பட்ட பிரதிகள் ss-local க்கு திருப்பி அனுப்பப்படும்.
[இலக்கு முகவரி] [பேலோட்]
இந்த செயல்முறையானது ss-local க்கான பிணைய முகவரி மொழிபெயர்ப்பை ss-remote செய்யும் வகையில் வேகவைக்கப்படும்.