شیڈو ساکس دستاویزات

شیڈوساکس کنفیگریشن فارمیٹ

فائل کی تشکیل

شیڈوساکس JSON فارمیٹ کنفیگریشن لیتا ہے:

{

    "سرور":"my_server_ip"،

    "سرور_پورٹ": 8388،

    "لوکل_پورٹ":1080،

    "پاس ورڈ":"بارفو!"،

    "طریقہ":"chacha20-ietf-poly1305"

}

JSON فارمیٹ

  • سرور: آپ کا میزبان نام یا سرور IP (IPv4/IPv6)۔
  • سرور_پورٹ: سرور پورٹ نمبر۔
  • local_port: مقامی پورٹ نمبر۔
  • پاس ورڈ: منتقلی کو خفیہ کرنے کے لیے استعمال ہونے والا پاس ورڈ۔
  • طریقہ: خفیہ کاری کا طریقہ۔

خفیہ کاری کا طریقہ

ہم اپنے سرورز کو ترتیب دیتے ہیں اور تجویز کرتے ہیں کہ آپ chacha20-ietf-poly1305 AEAD سائفر استعمال کریں کیونکہ یہ خفیہ کاری کا سب سے مضبوط طریقہ ہے۔ 

اگر آپ اپنے شیڈو ساکس سرور کو ترتیب دے رہے ہیں، تو آپ "chacha20-ietf-poly1305" یا "aes-256-gcm" میں سے کسی ایک کا انتخاب کر سکتے ہیں۔

URI اور QR کوڈ

اینڈروئیڈ / آئی او ایس کے لیے شیڈو ساکس 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

ایڈریسنگ

شیڈو ساکس SOCKS5 ایڈریس فارمیٹ میں پائے جانے والے پتے استعمال کرتا ہے:

[1-بائٹ قسم] [متغیر لمبائی کی میزبان] [2-بائٹ پورٹ]

 

یہاں پتے کی اقسام کی وضاحت کی گئی ہے:

  • 0x01 : میزبان ایک 4 بائٹ IPv4 پتہ ہے۔
  • 0x03 : میزبان ایک متغیر لمبائی کی تار ہے، جس کا آغاز 1-بائٹ لمبائی سے ہوتا ہے، اس کے بعد زیادہ سے زیادہ 255-بائٹ ڈومین نام ہوتا ہے۔
  • 0x04 : میزبان ایک 16 بائٹ IPv6 پتہ ہے۔

 

پورٹ نمبر ایک 2 بائٹ بڑا اینڈین غیر دستخط شدہ عدد ہے۔

ٹی سی پی

ss-لوکل کلائنٹ پے لوڈ ڈیٹا کے بعد ہدف کے پتے سے شروع ہونے والے خفیہ کردہ ڈیٹا بھیج کر ss-ریموٹ سے کنکشن شروع کرتا ہے۔ استعمال شدہ سائفر کے لحاظ سے خفیہ کاری مختلف ہوگی۔

[ہدف کا پتہ] [پے لوڈ]

ss-ریموٹ انکرپٹڈ ڈیٹا وصول کرتا ہے، پھر ٹارگٹ ایڈریس کو ڈیکرپٹ اور پارس کرتا ہے۔ پھر یہ ہدف سے ایک نیا TCP کنکشن بناتا ہے اور پے لوڈ ڈیٹا کو اس پر بھیج دیتا ہے۔ ss-remote کو ہدف سے جواب موصول ہوتا ہے پھر ڈیٹا کو انکرپٹ کرتا ہے اور اسے واپس ss-local پر بھیج دیتا ہے جب تک کہ یہ منقطع نہ ہو جائے۔

مبہم مقاصد کے لیے، مقامی اور ریموٹ کو پہلے پیکٹ میں کچھ پے لوڈ کے ساتھ ہینڈ شیک ڈیٹا بھیجنا چاہیے۔

UDP

ss-local انکرپٹڈ ڈیٹا پیکٹ کو بھیجتا ہے جس میں ہدف کا پتہ اور پے لوڈ ہوتا ہے ss-ریموٹ کو۔

[ہدف کا پتہ] [پے لوڈ]

ایک بار خفیہ کردہ پیکٹ موصول ہونے کے بعد، ss-ریموٹ ٹارگٹ ایڈریس کو ڈکرپٹ اور پارس کرتا ہے۔ اس کے بعد یہ پے لوڈ کے ساتھ ہدف پر ایک نیا ڈیٹا پیکٹ بھیجتا ہے۔ ss-remote ٹارگٹ سے ڈیٹا پیکٹ وصول کرتا ہے اور ہر پیکٹ میں پے لوڈ پر ہدف کا پتہ پیش کرتا ہے۔ خفیہ کردہ کاپیاں ss-local کو واپس بھیجی جاتی ہیں۔

[ہدف کا پتہ] [پے لوڈ]

اس عمل کو ss-remote پر ss-local کے لیے نیٹ ورک ایڈریس کا ترجمہ کرتے ہوئے ابالا جا سکتا ہے۔

اپنا 5 دن کا مفت ٹرائل شروع کریں۔