کسی بهجای لینک سه خط برایتان فرستاده است. خط اول شبیه آدرس یک سایت یا چند عدد با نقطه است، خط دوم یک عدد است و خط سوم رشتهای طولانی از حرف و عدد که در نگاه اول بیمعنی به نظر میرسد. یا شاید لینکی بوده که باز نشده و به شما گفتهاند «دستی واردش کنید». حالا تنظیمات تلگرام را باز میکنید، فیلدهای «سرور»، «درگاه» و «رمز» را میبینید و نمیدانید کدام خط کجا میرود.
همین اول بگویم که ما خودمان پروکسی میفروشیم، پس این را در نظر داشته باشید. نام فیلدها در ادامه از ترجمهٔ فارسی تلگرام در سکوی رسمی ترجمهٔ تلگرام (translations.telegram.org) آمده و رفتار فیلدها با کد منبع Telegram Desktop و تلگرام اندروید مقایسه شده است. نامها در برنامهٔ شما ممکن است کمی فرق کند، برای همین کنار نامهای فارسی نام انگلیسی هم آمده است.
تلگرام با این سه خط چه میکند
سرور پروکسی بین تلگرام و شبکه قرار میگیرد و برنامه بهجای اتصال مستقیم، از طریق این کامپیوتر وصل میشود. سه فیلد به تلگرام میگویند این کامپیوتر کجاست و چطور باید با آن سلام و احوالپرسی کند.
در فیلد «سرور» (Server) آدرس همان کامپیوتر را مینویسند، یا IP که از عدد و نقطه تشکیل شده یا نامی مثل proxy.example.com، بدون https:// در ابتدا. در Telegram Desktop این فیلد «نام میزبان» (Hostname) نام دارد و در بقیهٔ برنامهها «سرور». فیلد بعدی در ترجمهٔ فارسی «درگاه» نام دارد و همان پورت (Port) است. پورت نشان میدهد که باید درِ کدام ورودیِ این سرور را زد. پورت عددی تا ۶۵۵۳۵ است و در راهنمای تلگرام برای صاحبان سرور، در مثال عدد 443 آمده است، یعنی همان عددی که سایتهای معمولی با HTTPS از آن استفاده میکنند.
خط سوم پیچیدهتر است و تقریباً همهٔ سردرگمیها از همین خط است. این رمز فقط برای پروکسی MTProto لازم است و SOCKS5 آن را ندارد، آنجا ممکن است فیلدهای «نام کاربری» و «گذرواژه» باشد. رمز را صاحب سرور میسازد: طبق راهنمای MTProxy، او ۱۶ بایت تصادفی برمیدارد، آن را با ۳۲ کاراکتر مینویسد و سرور را دقیقاً با همین رمز راه میاندازد. به همین دلیل سرور بدون رمز شما را راه نمیدهد، و رمزی که یک صاحب سرور برای سرور خودش تعیین کرده روی سرور دیگری کار نمیکند، هرچند ظاهر همهٔ رمزها شبیه هم است. در نسخهٔ انگلیسی تلگرام این فیلد Secret نام دارد و در ترجمهٔ فارسی، هم روی گوشی و هم روی کامپیوتر، «رمز». این «رمز» رمز حساب تلگرام شما نیست و با «گذرواژه» در SOCKS5 هم فرق دارد.
در این فیلدها نه اطلاعات ورود به تلگرام هست، نه شماره تلفن و نه کد ورود. تلگرام میخواهد کد ورود را به هیچکس ندهید، پس اگر همراه آدرس از شما کد خواستند، این ربطی به پروکسی ندارد. کانال حمایتشده (اسپانسر) که گاهی در فهرست چتها پیدا میشود هم در رمز پنهان نشده است، چون آن را صاحب سرور هنگام ثبت پروکسی در سمت خودش فعال میکند. صاحب سرور نمیتواند پیامها را بخواند، اما همانطور که در راهنمای تلگرام آمده، IP شما و زمان اتصال را میبیند. اینکه سرور پروکسی تلگرام را از کجا بگیرید و آدرس را به چه کسی بسپارید، جداگانه توضیح دادهام.
کجا واردشان کنید
در تلگرام اندروید فرم از این مسیر باز میشود: «تنظیمات» ← «دادهها و ذخیرهسازی» ← «تنظیمات پروکسی» ← «افزودن پروکسی» (در نسخهٔ انگلیسی Settings → Data and Storage → Proxy Settings → Add Proxy)، و نوعی که لازم دارید «پروکسی MTProto» است. در آیفون شروع کار همین است، بخش «دادهها و ذخیرهسازی»، و بعد صفحهٔ «پروکسی» و «افزودن پروکسی». در Telegram Desktop فرم عمیقتر است: «تنظیمات» ← «پیشرفته» ← «نوع اتصال» ← «استفاده از پروکسی سفارشی» (در نسخهٔ انگلیسی Settings → Advanced → Connection type → Use custom proxy)، و همانجا «افزودن پروکسی». در تلگرام مک هم فرم در بخش مربوط به داده و ذخیرهسازی است، پس اگر راهنمایی برای مک مسیر Telegram Desktop را داده، دو برنامه را با هم اشتباه گرفته است.
- فرم افزودن پروکسی را باز کنید.
- نوع MTProto را انتخاب کنید (در Telegram Desktop برای پروکسی جدید از قبل انتخاب شده است).
- در فیلد «سرور» یا «نام میزبان» آدرس خط اول را بنویسید.
- در فیلد «درگاه» عدد خط دوم را بنویسید.
- در فیلد «رمز» خط سوم را کامل بچسبانید و طولش را بررسی کنید، دربارهٔ این در ادامه توضیح میدهم.
- ذخیره کنید و وضعیت را در فهرست پروکسیها ببینید.
در فرم Telegram Desktop بالای فیلدهای «نام میزبان» و «درگاه» عنوان «آدرس سوکت» آمده، بالای «رمز» عنوان «مدارک»، و زیر انتخاب نوع هم این هشدار هست: «این پروکسی ممکن است یک کانال حمایت شده را در لیست گفتگوهای شما نمایش دهد. این عمل هیچ یک ترافیک تلگرام شما را آشکار نمیکند.» این هشدار جزو خود فرم است و به پروکسیای که برایتان فرستادهاند ربطی ندارد.
اگر لینک را دارید، زدن روی آن سادهتر است، چون همین سه مقدار داخل آن است. در تلگرام اندروید وقتی لینک پروکسی در حافظهٔ موقت (کلیپبورد) باشد، در صفحهٔ افزودن گزینهٔ «چسباندن از حافظه» ظاهر میشود و خودش لینک را در سه فیلد پخش میکند. Telegram Desktop هم گزینهٔ مشابهی به اسم «افزودن پروکسی از حافظه» دارد. لینکی را هم که رمز بلندی دارد و در مرورگر باز نمیشود، میتوانید در هر چتی در تلگرام بچسبانید و همانجا رویش بزنید.
چطور بفهمید رمز کامل کپی شده است
رمز موقع کپی کردن راحت خراب میشود: انتهایش انتخاب نشده یا خط شکسته است. اما از روی طولش میشود این را دید. رمز معمولی ۳۲ کاراکتر دارد، عدد و حروف لاتین از a تا f. اگر با dd شروع شود، ۳۴ کاراکتر دارد و این پیشوند پرکردن تصادفی بستهها (random padding) را روشن میکند. اگر با ee شروع شود طولانیتر است، ۴۲ کاراکتر یا بیشتر، چون در انتهایش نام یک سایت نوشته شده است.
یک مثال فرضی از رمزی با ee که در انتهایش نام www.example.com آمده: ee000000000000000000000000000000007777772e6578616d706c652e636f6d.
این رمز ۶۴ کاراکتر دارد: ee، بعد ۳۲ کاراکتر خود رمز، و هرچه بعد از کاراکتر سیوچهارم میآید همان www.example.com است که با عدد و حرف بازنویسی شده. رمز واقعی چیز دیگری است، اما همینطور ساخته میشود. شمردن کاراکترها روی صفحه کار جذابی نیست، ولی یک بار ارزشش را دارد.
قاعدهٔ Telegram Desktop این است: رمزی که طول و شروع درستی دارد پذیرفته میشود، و رمزی با طول یا شروع دیگر، بسته به طولش، «پشتیبانینشده» یا «نامعتبر» به حساب میآید. پس اگر از یک رمز فرضی ۳۲ کاراکتری آخرین کاراکتر را ببُرید، طبق این قاعده نتیجه «پشتیبانینشده» است، و اگر فقط نصفش مانده باشد، «نامعتبر».
یک نکتهٔ ظریف دیگر هم هست و اگر جای شما بودم، به خاطر آن بعد از هر بار چسباندن طول را نگاه میکردم. فیلد «رمز» در Telegram Desktop فقط حروف لاتین، عددهای انگلیسی (0 تا 9)، - و _ را قبول میکند و بقیه را بیصدا دور میریزد. فاصلهٔ اضافه در انتها را بهسادگی حذف میکند، اما اگر یک حرف یا عدد با صفحهکلید فارسی تایپ شده باشد (مثلاً ۱ فارسی بهجای 1 انگلیسی)، آن کاراکتر ناپدید میشود و رمز یک کاراکتر کوتاهتر میشود. + و / هم در ورود دستی همینطور حذف میشوند، پس رمزی که این علامتها را دارد بهتر است با لینک وصل شود.
موقع ذخیره، Telegram Desktop فیلدها را بررسی میکند. اگر «نام میزبان» خالی باشد یا درگاه صفر باشد، آن فیلد با خطا مشخص میشود، رمز نادرست در فیلد «رمز» مشخص میشود و پنجره بسته نمیشود. اگر پروکسی با لینک آمده باشد، پیام «این لینک پروکسی از پارامتر رمز نامعتبر استفاده میکند…» یعنی تلگرام دقیقاً رمز را نپذیرفته است. وقتی همه چیز پذیرفته شد، در فهرست پروکسیها وضعیت نمایش داده میشود: «آنلاین»، «در دسترس (پینگ: … میلیثانیه)» یا «غیر قابل دسترس»، و بالای فهرست چتها نماد سپر ظاهر میشود.
تلگرام چه چیزی را برایتان درست میکند و چه چیزی را نه
در Telegram Desktop چند آسانگیری کوچک هست. اگر در آدرس بهجای نقطه ویرگول لاتین (,) بگذارید، فیلد «نام میزبان» خودش آن را با نقطه عوض میکند. اگر IP عددی را همراه با پورت بعد از دونقطه در «نام میزبان» بچسبانید، مثلاً 1.2.3.4:443 فرضی، پورت خودش به فیلد «درگاه» منتقل میشود. با نام سرور بهجای عدد این اتفاق نمیافتد و پورت را باید جدا بنویسید. فیلد «درگاه» عددی بیشتر از ۶۵۵۳۵ نمیپذیرد، و در اندروید فقط میشود در آن عدد تایپ کرد و هر عدد بزرگتر از ۶۵۵۳۵ به ۶۵۵۳۵ تبدیل میشود.
تلگرام رمز سرور دیگری را برایتان درست نمیکند. این وقتی پیش میآید که آدرس و پورت را از یک پیام برمیدارید و رمز را از پیام دیگری که کنارش است: خطها شبیه هماند، اما سرور منتظر رمز خودش است. برای همین هر سه مقدار را از یک سرور بردارید، بهتر است از یک پیام. رمز بریدهشده را هم کامل نمیکند، فقط ردش میکند. و اگر همراه آدرس و پورت، نام کاربری و گذرواژه برایتان فرستادهاند، به احتمال زیاد پروکسی از نوع SOCKS5 است و باید همان را انتخاب کنید، و فیلد «رمز» لازم نمیشود.
اگر حوصلهٔ وارد کردن ندارید
و در آخر، آنچه دربارهٔ خودمان قول داده بودم. FreeGate یک پروکسی شخصی MTProto ارائه میدهد و اتصال آن با یک دکمه انجام میشود، نه با سه فیلد. «اتصال در تلگرام» را لمس میکنید یا کد QR را اسکن میکنید، تلگرام دربارهٔ پروکسی میپرسد و شما «اتصال پروکسی» را میزنید. هر دستگاه لینک خودش را دارد که فقط برای شما کار میکند. اگر لینک فاش شد، میتوانید با یک لمس در حساب کاربری عوضش کنید و لینک قبلی فوراً از کار میافتد.
میتوانید رایگان امتحان کنید: ۱ روز پس از ثبتنام با ایمیل و تأیید آن، بدون پرداخت و بدون برداشت خودکار. قیمت برای یک دستگاه است، پس برای گوشی و کامپیوتر هنگام خرید ۲ دستگاه انتخاب کنید، و تعرفهها را روی سایت ببینید. پروکسی در برنامههای رسمی تلگرام کار میکند و نسخهٔ وب تلگرام از پروکسی پشتیبانی نمیکند. جزئیات در freegate.app/ir.