التمهيدي باللغة الإنجليزية
موقع ويكي: v2.gost.run
مجموعة مناقشة التليجرام: https://t.me/gogost
مجموعة مناقشة جوجل: https://groups.google.com/d/forum/go-gost
https://github.com/ginuerzh/gost/releases
git clone https://github.com/ginuerzh/gost.git
cd gost/cmd/gost
go build
docker run --rm ginuerzh/gost -V
brew install gost
sudo snap install core
sudo snap install gost
gost -L=:8080
gost -L=admin:123456@localhost:8080
gost -L=http2://:443 -L=socks5://:1080 -L=ss://aes-128-cfb:123456@:8338
gost -L=:8080 -F=192.168.1.1:8081
gost -L=:8080 -F=http://admin:[email protected]:8081
gost -L=:8080 -F=quic://192.168.1.1:6121 -F=socks5+wss://192.168.1.2:1080 -F=http2://192.168.1.3:443 ... -F=a.b.c.d:NNNN
سيقوم gost في النهاية بإعادة توجيه الطلب إلى abcd:NNNN للمعالجة من خلال سلسلة الوكيل بالترتيب الذي تم تعيينه بواسطة -F. يمكن أن يكون كل وكيل إعادة توجيه أي وكيل من نوع HTTP/HTTPS/HTTP2/SOCKS4/SOCKS5/Shadowsocks.
gost -L=tcp://:2222/192.168.1.1:22 [-F = ...]
قم بإعادة توجيه البيانات على منفذ TCP المحلي 2222 (من خلال سلسلة الوكيل) إلى 192.168.1.1:22. عندما تكون نهاية سلسلة الوكيل (المعلمة -F الأخيرة) من نوع قناة إعادة توجيه SSH، سيستخدم gost مباشرة وظيفة إعادة توجيه المنفذ المحلي لـ SSH:
gost -L=tcp://:2222/192.168.1.1:22 -F forward+ssh://:2222
gost -L=udp://:5353/192.168.1.1:53 ? ttl=60 [-F = ...]
قم بإعادة توجيه البيانات على منفذ UDP المحلي 5353 (من خلال سلسلة الوكيل) إلى 192.168.1.1:53. كل قناة إعادة توجيه لها مهلة زمنية. عند تجاوز هذا الوقت وعدم وجود تفاعل للبيانات خلال هذه الفترة الزمنية، سيتم إغلاق القناة. يمكن ضبط المهلة من خلال المعلمة ttl
، والقيمة الافتراضية هي 60 ثانية.
ملحوظة: عند إعادة توجيه بيانات UDP، إذا كانت هناك سلسلة وكيل، فيجب أن تكون نهاية سلسلة الوكيل (المعلمة -F الأخيرة) وكيلًا من نوع gost SOCKS5، وسيستخدم gost UDP عبر TCP لإعادة التوجيه.
gost -L=rtcp://:2222/192.168.1.1:22 [-F = ... -F = socks5://172.24.10.1:1080]
قم بإعادة توجيه البيانات على 172.24.10.1:2222 (من خلال سلسلة الوكيل) إلى 192.168.1.1:22. عندما تكون نهاية سلسلة الوكيل (المعلمة -F الأخيرة) من نوع قناة إعادة توجيه SSH، سيستخدم gost مباشرة وظيفة إعادة توجيه المنفذ البعيد لـ SSH:
gost -L=rtcp://:2222/192.168.1.1:22 -F forward+ssh://:2222
gost -L=rudp://:5353/192.168.1.1:53 ? ttl=60 [-F = ... -F = socks5://172.24.10.1:1080]
قم بإعادة توجيه البيانات على 172.24.10.1:5353 (من خلال سلسلة الوكيل) إلى 192.168.1.1:53. كل قناة إعادة توجيه لها مهلة زمنية. عند تجاوز هذا الوقت وعدم وجود تفاعل للبيانات خلال هذه الفترة الزمنية، سيتم إغلاق القناة. يمكن ضبط المهلة من خلال المعلمة ttl
، والقيمة الافتراضية هي 60 ثانية.
ملحوظة: عند إعادة توجيه بيانات UDP، إذا كانت هناك سلسلة وكيل، فيجب أن تكون نهاية سلسلة الوكيل (المعلمة -F الأخيرة) وكيلًا من نوع GOST SOCKS5، وسيستخدم gost UDP-over-TCP لإعادة التوجيه.
يدعم Gost's HTTP2 وضعين:
الخادم:
gost -L=http2://:443
عميل:
gost -L=:8080 -F=http2://server_ip:443
الخادم:
gost -L=h2://:443
عميل:
gost -L=:8080 -F=h2://server_ip:443
يعتمد دعم gost لـ QUIC على مكتبة quic-go.
الخادم:
gost -L=quic://:6121
عميل:
gost -L=:8080 -F=quic://server_ip:6121
ملاحظة: لا يمكن استخدام وضع QUIC إلا كعقدة أولى في سلسلة الوكيل.
يعتمد دعم gost لـ KCP على مكتبات kcp-go وkcptun.
الخادم:
gost -L=kcp://:8388
عميل:
gost -L=:8080 -F=kcp://server_ip:8388
سيقوم gost تلقائيًا بتحميل ملف التكوين kcp.json (إن وجد) في دليل العمل الحالي، أو يمكنك تحديد مسار ملف التكوين يدويًا من خلال المعلمات:
gost -L=kcp://:8388 ? c=/path/to/conf/file
ملاحظة: لا يمكن استخدام وضع KCP إلا كعقدة أولى لسلسلة الوكيل.
يدعم SSH الخاص بـ gost وضعين:
الخادم:
gost -L=forward+ssh://:2222
عميل:
gost -L=rtcp://:1222/:22 -F=forward+ssh://server_ip:2222
الخادم:
gost -L=ssh://:2222
عميل:
gost -L=:8080 -F=ssh://server_ip:2222 ? ping=60
يمكنك ضبط فترة إرسال حزمة نبضات القلب من خلال معلمة ping
، بالثواني. لا يتم إرسال حزم نبضات القلب بشكل افتراضي.
وكيل شفاف يعتمد على iptables.
gost -L=redirect://:12345 -F=http2://server_ip:443
هذه الميزة ساهم بها @isofew.
الخادم:
gost -L=obfs4://:443
عند تشغيل الخادم، ستتم طباعة عنوان الاتصال على وحدة التحكم ليستخدمها العميل:
obfs4://:443/?cert=4UbQjIfjJEQHPOs8vs5sagrSXx1gfrDCGdVh2hpIPSKH0nklv1e4f29r7jb91VIrq4q5Jw&iat-mode=0
عميل:
gost -L=:8888 -F='obfs4://server_ip:443?cert=4UbQjIfjJEQHPOs8vs5sagrSXx1gfrDCGdVh2hpIPSKH0nklv1e4f29r7jb91VIrq4q5Jw&iat-mode=0'
بالنسبة لـ HTTP، يمكن استخدام TLS لتشفير عملية الاتصال بأكملها، أي وكيل HTTPS:
الخادم:
gost -L=https://:443
عميل:
gost -L=:8080 -F=http+tls://server_ip:443
يدعم وضع وكيل HTTP2 الخاص بـ Gost بروتوكول HTTP2 فقط باستخدام تشفير TLS ولا يدعم نقل النص العادي HTTP2.
يدعم وضع قناة HTTP2 الخاص بـ Gost أوضاع التشفير (h2) والنص العادي (h2c).
يدعم gost طريقتي no-auth (0x00) وuser/pass (0x02) لبروتوكول SOCKS5 القياسي، ويوسع طريقتين على هذا الأساس: tls (0x80) وtls-auth (0x82) لتشفير البيانات.
الخادم:
gost -L=socks5://:1080
عميل:
gost -L=:8080 -F=socks5://server_ip:1080
إذا كان كلا الطرفين gost (كما هو مذكور أعلاه)، فسيتم تشفير نقل البيانات (التفاوض باستخدام طريقة tls أو tls-auth)، وإلا فسيتم استخدام SOCKS5 القياسي للاتصال (طريقة عدم المصادقة أو طريقة المستخدم/المرور).
يعتمد دعم gost لـ Shadowsocks على مكتبة Shadowsocks-go.
الخادم:
gost -L=ss://chacha20:123456@:8338
عميل:
gost -L=:8080 -F=ss://chacha20:123456@server_ip:8338
حاليًا، يدعم الخادم فقط UDP Relay.
الخادم:
gost -L=ssu://chacha20:123456@:8338
لدى gost شهادة TLS مدمجة. إذا كنت بحاجة إلى استخدام شهادات TLS أخرى، فهناك طريقتان:
gost -L= " http2://:443?cert=/path/to/my/cert/file&key=/path/to/my/key/file "
بالنسبة للعميل، يمكنك تمكين شهادة الخادم والتحقق من اسم المجال من خلال المعلمة secure
:
gost -L=:8080 -F= " http2://server_domain_name:443?secure=true "
بالنسبة للعميل، يمكنك تحديد شهادة CA لتثبيت الشهادة (تثبيت الشهادة):
gost -L=:8080 -F= " http2://:443?ca=ca.pem "
ميزة تثبيت الشهادة ساهم بها @sheerun