رفتن به محتوا

راه‌اندازی نود ورودی

نود ورودی یک سرور Veilway در داخل کشور است که کاربران به آن وصل می‌شوند. خودش ترافیک آن‌ها را به اینترنت نمی‌فرستد. آن را با یک پیوند نود به نود خروجی در خارج می‌برد و خروجی به اینترنت می‌فرستد.

users ---> entry node ===== link =====> exit node ---> internet
(inside the country) (abroad)

وقتی کاربران به سرورهای داخل کشور می‌رسند اما به خارج نه، چون ارتباط بین‌المللی قطع، کند یا فیلتر شده ولی شبکهٔ داخلی کار می‌کند. کاربران فقط به یک راه تا ورودی نیاز دارند. ورودی به یک راه تا خروجی نیاز دارد، در هر جهتی.

مراکز داده در داخل کشور اغلب راه بین‌المللی را نگه می‌دارند، حتی وقتی خطوط خانگی و همراه آن را از دست می‌دهند. اگر ورودی در هیچ جهتی راهی به خارج نداشته باشد، هیچ پیوندی کمک نمی‌کند.

اگر کاربران مستقیم به سرور خارج شما می‌رسند، نود ورودی لازم نیست. اگر شبکهٔ آن‌ها فقط نشانی نود شما را مسدود می‌کند، شاید یک رله روی نشانی دیگر کافی باشد.

چه چیزی را کجا اجاره کنید

Section titled “چه چیزی را کجا اجاره کنید”
  • ورودی: سروری نزد شرکت میزبانی داخل کشور، با نشانی عمومی‌ای که شبکهٔ کاربران به آن برسد. نود و پنل روی آن اجرا می‌شوند، کاربرانتان را نگه می‌دارد و اشتراک‌هایشان را سرو می‌کند.
  • خروجی: سروری در خارج، نزد شرکتی بیرون از دسترس کشور. نود و پنل خودش را دارد. تنها کاربرش پیوند ورودی است.

هر دو برای اتصال پیوند به یک ورودی Veilway نیاز دارند، همان‌طور که راهنمای پنل می‌گوید. هر دو را با شروع به کار نصب کنید.

اگر هر دو سرور مال شماست

Section titled “اگر هر دو سرور مال شماست”

گام‌های پایین برای دو گرداننده است که هر کدام پنل دارند. اگر هر دو سرور مال شماست، خروجی پنل جدا لازم ندارد: پنل ورودی آن را مدیریت می‌کند.

۱. روی خروجی sudo bash veilway.sh install node را اجرا کنید. فقط نود را نصب می‌کند. ۲. در پنل ورودی، خروجی را با افزودن سرور دوم اضافه کنید. پیوندی که ساخته می‌شود هم کنترل پنل را می‌برد و هم ترافیک کاربران را. ۳. در پنل ورودی، خروجی‌ها و مسیریابی را با سرور روی همین سرور باز کنید. در زبانهٔ خروجی‌ها خروجی‌ای بسازید که از راه نود دیگر و با همان پیوند بیرون می‌رود. نام و کشوری را که کاربران می‌بینند بگذارید، و اگر همهٔ ترافیک باید به خارج برود، آن را خروجی پیش‌فرض کنید. ۴. برای هر کاربر، سرورهایی که این کاربر می‌تواند استفاده کند را روی فقط این سرورها با تیک ورودی بگذارید. وگرنه کاربران پروفایل‌هایی هم می‌گیرند که مستقیم به خروجی وصل می‌شوند.

ترافیک پیوند از خروجی پیش‌فرض خودِ سرور خروجی بیرون می‌رود. برای تغییرش، خروجی‌ها و مسیریابی را با سرور روی سرور خروجی باز کنید.

دو سرور توافق می‌کنند کدام یک اتصال را باز کند. ترافیک در هر دو حالت دوطرفه است.

Forward: the entry dials the exit (the usual case)
entry ------ dials ------> exit
(needs a way out) (needs an address the entry can reach)
Reverse: the exit dials the entry
entry <----- dials ------- exit
(needs an address the exit can reach) (needs nothing reachable)
  • مستقیم وقتی ورودی می‌تواند به خارج وصل شود.
  • معکوس وقتی ورودی نمی‌تواند به خارج وصل شود (یا این اتصال‌ها فیلتر می‌شوند) اما اتصال از خارج به آن می‌رسد. طرفی که دسترسی به آن آسان است منتظر می‌ماند و طرف دیگر به آن وصل می‌شود.

گردانندهٔ سرور دیگر را با تماس یا کانال مطمئنی در دسترس داشته باشید، چون گام آخر اثرانگشت‌ها را بلند می‌خواند. اگر هر دو سرور مال شماست، دو پنل را کنار هم باز کنید.

۱. در پنل ورودی، نودها را باز کنید و راه‌اندازی به‌عنوان نود ورودی را بزنید. برای پیوند معکوس، تونل معکوس و بعد ورودی را بزنید. ۲. در پنل خروجی، نودها را باز کنید و راه‌اندازی به‌عنوان خروجی یک نود ورودی را بزنید. برای پیوند معکوس، تونل معکوس و بعد خروجی را بزنید. ۳. هر دو طرف یک جهت را انتخاب می‌کنند. پنل می‌گوید پیشنهاد را چه کسی می‌سازد: در پیوند مستقیم خروجی، در پیوند معکوس ورودی. آن طرف ورودی Veilway، ترنسپورت‌ها و نشانی‌های تونل را انتخاب می‌کند و کد پیشنهاد را برای طرف دیگر می‌فرستد. ۴. طرف دیگر پیشنهاد را می‌چسباند، می‌بیند سرورش به کجا وصل می‌شود و کد پاسخ را برمی‌گرداند. اگر پیشنهاد برای طرف دیگری ساخته شده باشد، پنل می‌گوید و پاسخ نمی‌دهد. ۵. طرف پیشنهاددهنده پاسخ را می‌چسباند. هر دو طرف هشت گروه اثرانگشت خودشان را بلند می‌خوانند و گروه‌های طرف مقابل را تایپ می‌کنند. فقط اگر یکی بودند تأیید کنید. بعد پیوند در پیکربندی هر نود می‌نشیند. ۶. در ورودی، از راه پیوند یک خروجی به کاربران بدهید. نام و کشورش را بگذارید، و اینکه خروجی پیش‌فرض شود یا نه، و اینکه به هر کاربری که فهرست خروجی دارد اضافه شود یا نه. کاربرانی که همهٔ خروجی‌ها برایشان مجاز است آن را در هر حال می‌گیرند. بازبینی هر تغییر را پیش از اعمال نشان می‌دهد. ۷. در خروجی، انتخاب کنید ترافیک پیوند از کدام خروجی‌هایش بیرون برود. اجازه دسترسی قوانین به شبکه‌های خصوصی را خاموش بگذارید، مگر واقعاً بخواهید. اگر روشن باشد، کاربران ورودی می‌توانند به شبکه‌های محلی این سرور برسند.

پروفایل‌ها عوض نمی‌شوند، پس چیزی برای انتشار نیست. برنامه‌ها خروجی تازه را در اتصال بعدی می‌بینند.

ترنسپورت‌های پیوند را انتخاب کنید

Section titled “ترنسپورت‌های پیوند را انتخاب کنید”

پیشنهاد ترنسپورت‌های ورودی را فهرست می‌کند و شما تیک آن‌هایی را که پیوند نباید استفاده کند برمی‌دارید.

  • میان دو کشور معمولاً tls بهترین است. UDP در مسیرهای بین‌المللی اغلب کند یا دور ریخته می‌شود.
  • خروجی بی‌دامنه هم با tls کار می‌کند. از v0.3.6 گواهی خودامضا از راه پین آن پذیرفته می‌شود، و اثرانگشت‌هایی که مقایسه می‌کنید تمام بررسی است.
  • دو ترنسپورت نگه دارید اگر ورودی دارد، تا پیوند وقتی یکی مسدود شد عوض کند.

MTU پیوند به‌طور پیش‌فرض 1420 است، یا 1390 وقتی از udp-obfs استفاده می‌کند. از v0.3.10، وقتی هر دو سرور آن را دارند، پیوند مسیرش را می‌آزماید و MTU را خودش پایین می‌آورد، پس چیزی برای تنظیم نیست. اگر یکی از دو سرور قدیمی‌تر باشد، پیوند نمی‌تواند بیازماید. روی tls و ws این به‌ندرت مهم است. روی udp و udp-obfs، اگر مسیر میان دو سرور خودش یک تونل یا خط PPPoE است، آن را روی هر دو سرور در مدیریت پایین بیاورید. نشانهٔ MTU نادرست: پینگ و صفحه‌های کوچک کار می‌کنند، اما صفحه‌های بزرگ و دانلودها گیر می‌کنند.

سایت‌های داخل کشور را روی ورودی نگه دارید

Section titled “سایت‌های داخل کشور را روی ورودی نگه دارید”

به‌طور پیش‌فرض، ترافیک کاربران برای سایت‌های داخل کشور هم به خارج می‌رود و برمی‌گردد. این کند است، و بعضی سایت‌های داخلی نشانی خارجی را نمی‌پذیرند. به جایش آن را مستقیم از ورودی بیرون بفرستید:

۱. در ورودی، خروجی‌ها و مسیریابی را باز کنید. خروجی مستقیم خود ورودی باید از قبل باشد. ۲. با افزودن قاعده قاعده‌ای با شرط شبکهٔ مقصد برابر کشور، مثل geoip:tr، بسازید و آنگاه بفرست به را خروجی مستقیم بگذارید. از v0.3.10، این هر نشانی ثبت‌شده در آن کشور را می‌گیرد. ۳. برای سایت‌هایی که در خارج میزبانی می‌شوند اما برای آن کشورند، قاعده‌ای با شرط دامنه بسازید، با نام‌ها، یا wildcard با دست‌کم دو بخش مثل *.com.tr. یک دامنهٔ سطح‌بالای کامل مثل *.tr پذیرفته نمی‌شود.

فهرست کشورها از ثبت‌کننده‌های اینترنت می‌آید و همراه نود نصب می‌شود. قاعده‌ای که کشوری را نام ببرد تا وقتی این فهرست نباشد پذیرفته نمی‌شود، مرجع پیکربندی را ببینید. دامنه نام‌هایی را می‌گیرد که کاربران از راه نود جست‌وجو کرده‌اند، که برنامه‌ها به‌طور پیش‌فرض همین کار را می‌کنند. ارائه‌دهندهٔ ورودی این سایت‌ها را می‌بیند، مثل هر شبکهٔ محلی.

بررسی اینکه کار می‌کند

Section titled “بررسی اینکه کار می‌کند”
  • در هر دو پنل، کارت پیوند در نودها تا یک دقیقه برقرار نشان می‌دهد.
  • در حال اتصال بیش از یک دقیقه: طرف منتظر از طرفی که وصل می‌شود خبری نگرفته. بررسی کنید هر دو طرف یک جهت را انتخاب کرده‌اند و پیوند طرف وصل‌شونده روشن است.
  • در دسترس نیست: طرفی که وصل می‌شود به طرف دیگر نمی‌رسد. نشانی داخل پیشنهاد، پورت و فایروال سرور منتظر را بررسی کنید. ترنسپورت‌های دیگر پیوند را امتحان کنید.
  • رد شد: سرور دیگر پاسخ می‌دهد اما پیوند را نمی‌پذیرد. نیمهٔ آن حذف یا عوض شده. پیوند را روی هر دو طرف حذف کنید و دوباره جفت کنید.
  • کلید عوض شد: گواهی سرور دیگر کلید تازه دارد. دوباره جفت کنید.
  • یک دستگاه را به ورودی وصل کنید، اگر خروجی تازه پیش‌فرض نیست آن را انتخاب کنید و سایتی را باز کنید که از داخل مسدود است. صفحه‌ای که نشانی IP شما را نشان می‌دهد باید نشانی و کشور خروجی را نشان دهد.
  • وقتی کاربران وب‌گردی می‌کنند، شمارندهٔ جابه‌جا شده پیوند در هر دو کارت بالا می‌رود.

هر سرور چه چیزی می‌بیند

Section titled “هر سرور چه چیزی می‌بیند”
ورودی خروجی
نشانی واقعی، نام و کلید دستگاه کاربران بله نه
هر مقصد و هر نام DNS بله بله
محتوای رمزنگاری‌نشده بله بله
حجم و زمان‌بندی ترافیک بله بله، برای همهٔ کاربران ورودی روی هم
نشانی سرور دیگر بله بله

خروجی کاربران را از روی پیوند از هم تشخیص نمی‌دهد، اما اغلب می‌تواند دستگاه‌ها را از هم جدا و بشمارد. اگر کاربر کم باشد، صاحب سرور می‌تواند هر جریان را به یک کاربر ربط بدهد. خروجی دربارهٔ کاربران ورودی چه می‌فهمد را ببینید.

  • کاربران به هر دو گرداننده اعتماد می‌کنند. هر سرور مقصدها و هر چیزی را که سرتاسر رمزنگاری نشده می‌بیند. فقط با کسی جفت شوید که به او برای ادارهٔ خروجی خودتان اعتماد دارید.
  • ورودی در معرض خطر است. داخل کشور است، زیر قوانین آن، نزد شرکتی که می‌داند چه کسی اجاره‌اش کرده. نشانی آن در هر اشتراک هست، پس پیدا کردن و مسدود کردنش آسان است. ورودی توقیف‌شده یا ناچارشده می‌تواند همهٔ موارد جدول بالا را ثبت کند.
  • خود پیوند دیده می‌شود، به‌شکل ترافیک از سرور داخلی به سروری در خارج. ترنسپورت‌ها را با این در نظر بگیرید. وضعیت لایهٔ مبهم‌سازی را ببینید.
  • هر ورودی یک خروجی، آن‌طور که پیش‌تنظیم می‌سازد. یک خروجی از نوع chain می‌تواند ۱ تا ۴ پیوند به همان نود خروجی داشته باشد، برای راه‌های یدکی. پیوندهای اضافه را دستی در خروجی‌ها و مسیریابی بیفزایید.

افزودن ورودی‌های بیشتر

Section titled “افزودن ورودی‌های بیشتر”

هر ورودی سرور جدایی با پنل و کاربران خودش است. برای هر ورودی تازه، راه‌اندازی به‌عنوان نود ورودی را روی آن و دوباره راه‌اندازی به‌عنوان خروجی یک نود ورودی را روی خروجی بزنید. خروجی برای هر ورودی یک پیوند با کلیدهای خودش می‌گیرد، تا ۶۴ پیوند. از کار افتادن یا خاموش شدن یک ورودی به بقیه اثری ندارد.