Shadowsacks دستاويز

Shadowsocks ٺاھ جوڙ فارميٽ

فائل ترتيب ڏيو

Shadowsocks JSON فارميٽ جون ترتيبون وٺي ٿو:

{

    "سرور":"my_server_ip",

    "سرور_پورٽ": 8388,

    "local_port":1080,

    "پاسورڊ":"barfoo!",

    "طريقو": "chacha20-ietf-poly1305"

}

JSON فارميٽ

  • سرور: توهان جو ميزبان نالو يا سرور IP (IPv4/IPv6).
  • سرور_پورٽ: سرور پورٽ نمبر.
  • local_port: مقامي پورٽ نمبر.
  • پاسورڊ: هڪ پاسورڊ منتقلي کي انڪرپٽ ڪرڻ لاء استعمال ڪيو ويندو آهي.
  • طريقو: انڪرپشن جو طريقو.

انڪرپشن جو طريقو

اسان اسان جي سرورن کي ترتيب ڏيون ٿا ۽ سفارش ڪريون ٿا ته توھان استعمال ڪريو chacha20-ietf-poly1305 AEAD cipher ڇاڪاڻ ته اھو انڪريپشن جو مضبوط طريقو آھي. 

جيڪڏهن توهان پنهنجي شيڊساڪس سرور کي ترتيب ڏئي رهيا آهيو، توهان يا ته "chacha20-ietf-poly1305" يا "aes-256-gcm" مان چونڊي سگهو ٿا.

URI ۽ QR ڪوڊ

Android / IOS لاءِ Shadowsocks پڻ 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

 

انهن URIs کي منظم ۽ سڃاڻڻ ۾ مدد ڪرڻ لاءِ، توهان BASE64 انڪوڊ ٿيل اسٽرنگ کان پوءِ هڪ ٽيگ شامل ڪري سگهو ٿا:

ss://YmYtY2ZiOnRlc3QvIUAjOkAxOTIuMTY4LjEwMC4xOjg4ODg#example-server

ايڊريس

Shadowsocks SOCKS5 ايڊريس فارميٽ ۾ مليل ايڊريس استعمال ڪري ٿو:

[1-بائيٽ قسم] [متغير ڊگھائي ميزبان] [2-بائيٽ پورٽ]

 

هتي بيان ڪيل پتي جا قسم آهن:

  • 0x01 : ميزبان هڪ 4-byte IPv4 پتو آهي.
  • 0x03 : هوسٽ هڪ متغير ڊگھائي اسٽرنگ آهي، جيڪا 1-بائيٽ ڊگھائي سان شروع ٿيندي، ان کان پوءِ وڌ ۾ وڌ 255-بائيٽ ڊومين جو نالو.
  • 0x04 : ميزبان هڪ 16-byte IPv6 پتو آهي.

 

پورٽ نمبر هڪ 2-بائيٽ وڏو-انڊين غير دستخط ٿيل عدد آهي.

ٽي پي

ايس ايس-مقامي ڪلائنٽ ss-ريموٽ سان ڪنيڪشن شروع ڪري ٿو انڪرپٽ ٿيل ڊيٽا موڪلڻ سان شروع ٿيندڙ ٽارگيٽ ايڊريس کان پوءِ پيل لوڊ ڊيٽا. انڪريپشن مختلف هوندي استعمال ٿيل سائفر جي لحاظ کان.

[هدف پتو] [پيلو لوڊ]

ss-remote انڪرپٽ ٿيل ڊيٽا وصول ڪري ٿو، پوءِ ٽارگيٽ ايڊريس کي ڊيڪرپٽ ۽ پارس ڪري ٿو. ان کان پوء اهو ٽارگيٽ ڏانهن هڪ نئون TCP ڪنيڪشن ٺاهي ٿو ۽ ان ڏانهن پيل لوڊ ڊيٽا کي اڳتي وڌائي ٿو. ss-remote ٽارگيٽ مان هڪ جواب وصول ڪري ٿو پوءِ ڊيٽا کي انڪرپٽ ڪري ٿو ۽ ان کي واپس ss-local ڏانهن موڪلي ٿو جيستائين اهو ڊسڪنيڪٽ نه ٿئي.

مبهم مقصدن لاءِ، مقامي ۽ ريموٽ کي پهرين پيڪيٽ ۾ ڪجهه پيل لوڊ سان هٿ ملائڻ واري ڊيٽا موڪلڻ گهرجي.

يو ايس پي

ss-local انڪرپٽ ٿيل ڊيٽا پيڪٽ موڪلي ٿو جنهن ۾ ٽارگيٽ ايڊريس ۽ پيل لوڊ شامل آهي ss-remote ڏانهن.

[هدف پتو] [پيلو لوڊ]

هڪ دفعو انڪرپٽ ٿيل پيڪٽ حاصل ڪيو ويو آهي، ايس ايس-ريموٽ ڊيڪرپٽ ۽ ٽارگيٽ ايڊريس کي پارس ڪري ٿو. اهو وري هڪ نئون ڊيٽا پيڪٽ موڪليندو آهي جنهن سان ٽارگيٽ ڏانهن پيل لوڊ. ss-remote ٽارگيٽ مان ڊيٽا پيڪٽس وصول ڪري ٿو ۽ ٽارگيٽ ايڊريس کي هر پيڪٽ ۾ پيل لوڊ ڪرڻ لاءِ اڳڀرائي ڪري ٿو. اينڪرپٽ ٿيل ڪاپيون واپس موڪليا وڃن ٿا ss-local.

[هدف پتو] [پيلو لوڊ]

اهو عمل ss-remote کي ss-local لاءِ نيٽ ورڪ ايڊريس جي ترجمي کي انجام ڏيڻ لاءِ جوڙي سگهجي ٿو.

توهان جي 5 ڏينهن جي مفت آزمائش شروع ڪريو