فارسی
اینترفیسها
اینترفیس تونلی است که سرور روی آن گوش میدهد: یک پروتکل روی یک پورت، که از یک بازه آدرس میدهد. پروتکلها اینها هستند: وایرگارد (ساده یا AmneziaWG)، OpenVPN، OpenConnect، IKEv2، L2TP/IPsec و PPTP. پنلهای دیگر به این inbound میگویند. هر مشتری میتواند همزمان روی چند اینترفیس باشد و روی همهٔ آنها یک حجم دارد.
تا دستکم یک اینترفیس ساخته نشود، چیزی برای فروش نیست؛ چون مشتری همیشه روی یک اینترفیس است.
کارت خلاصه
بالای صفحه:
| عدد | یعنی |
|---|---|
| دریافت/ارسال کل | همهٔ آنچه همهٔ اینترفیسها جابهجا کردهاند، آپلود ↑ و دانلود ↓. |
| مصرف کل | جمع این دو. |
| کل اینترفیسها | تعداد اینترفیسها، روشن یا خاموش. |
عددها، جدول و سرعتها هر ۵ ثانیه خودشان تازه میشوند. تا وقتی فرم، پنجره یا پیام تأیید باز است، تازه شدن صبر میکند تا چیزی زیر نشانگر جابهجا نشود.
اگر اعمال سقف حجم یا بخش دیگری از موتور سرور روی این ماشین اجرا نشود، نوار زردی بالای کارت همین را میگوید، مثلاً «Quota enforcement is not active. Limits are recorded but not applied.». در این حالت سقفها ذخیره میشوند ولی تا رفع علت اعمال نمیشوند. عیبیابی را ببینید.
نوار ابزار
| دکمه | کارش |
|---|---|
| افزودن اینترفیس | فرم ساختن اینترفیس تازه را باز میکند. |
| عملیات کلی | منوی عملیاتی که روی همهٔ اینترفیسها با هم انجام میشوند؛ جدول بعدی را ببینید. |
| جستجو | با تایپ، جدول را بر اساس نام، پورت یا پروتکل فیلتر میکند. |
| n انتخابشده + حذف | وقتی ردیفهایی تیک خورده باشند دیده میشود. × انتخاب را پاک میکند و حذف همهٔ اینترفیسهای انتخابشده را حذف میکند (حذف اینترفیس را ببینید). |
عملیات کلی:
| مورد | کارش |
|---|---|
| وارد کردن یک اینترفیس | متن JSONی را که استخراج اینترفیس یا استخراج همهی اینترفیسها ساخته بچسبانید، یا با انتخاب فایل فایلی را که ذخیره شده بدهید، تا اینترفیس، یا هر کدام از اینترفیسهای فهرست، دوباره ساخته شود: با همان نام، پروتکل، پورت، بازه، اندپوینت، MTU، DNS، اینترفیس خروجی، حالت، و برای OpenVPN پروتکل انتقال. خروجی نسخهٔ 2.6.6 و قبلتر هم وارد میشود. کلیدهای تازه ساخته میشوند، پس پیکربندیهای اینترفیس قبلی منتقل نمیشوند. اینترفیسی که پنل نپذیرد، مثلاً چون نام یا پورتش اینجا گرفته شده، با دلیلش نام برده میشود و بقیه باز هم ساخته میشوند. |
| استخراج لینکها | لینک اشتراک همهٔ مشتریهای همهٔ اینترفیسها، هر کدام در یک خط، در پنجرهای که میتوانید از آن کپی کنید یا با دانلود به شکل فایل بگیرید. مشتریای که روی دو اینترفیس است، یک بار میآید. همهٔ مشتریها، هر چند تا که باشند، فهرست میشوند. |
| استخراج همهی اینترفیسها | تنظیمات همهٔ اینترفیسها به شکل JSON، برای کپی یا دانلود، تا با وارد کردن یک اینترفیس روی همین پنل یا پنل دیگری وارد شوند. کلیدها و مشتریها در آن نیستند. |
| ریست ترافیک همهی اینترفیسها | بعد از تأیید، مصرف همهٔ مشتریهای همهٔ اینترفیسها را صفر میکند. به حجمها، تاریخهای پایان و وضعیتها دست نمیزند. مشتریای که به خاطر تمام شدن حجم متوقف شده بود، فوراً دوباره وصل میشود. |
جدول
| ستون | چه نشان میدهد |
|---|---|
| ☐ | تیک برای انتخاب. تیکِ سرِ جدول همهٔ ردیفها را انتخاب میکند. |
| ID | شمارهٔ اینترفیس. قابل مرتبسازی. |
| منو | ✎ فرم ویرایش را باز میکند و ⋮ منوی ردیف را. |
| فعال | کلید روشن و خاموش. خاموش کردن، همهٔ مشتریهای این اینترفیس را بدون حذف چیزی از کرنل برمیدارد: دستگاههایشان تا روشن شدن دوبارهٔ اینترفیس از راه آن وصل نمیشوند. کلید تا تأیید سرور در حال چرخیدن است و اگر سرور نپذیرد، برمیگردد و دلیلش را میگوید. |
| نام | نام اینترفیس. قابل مرتبسازی. |
| نود | فقط وقتی نودی وجود داشته باشد. برای همین سرور پنل لوکال، وگرنه نام نود؛ آبی تا وقتی نود جواب میدهد و قرمز وقتی جواب نمیدهد. قابل مرتبسازی. |
| پورت | پورتی که اینترفیس روی آن گوش میدهد. قابل مرتبسازی. |
| پروتکل | پروتکل، پروتکل انتقالش (UDP، TCP، یا هر دو برای OpenConnect)، و AmneziaWG وقتی این حالت روشن است. اینباندی که روی نود 3x-ui یا Pasarguard است، نوع خودش را نشان میدهد، مثلاً vless همراه با شبکه و امنیتش. قابل مرتبسازی. |
| کلاینتها | نشانها: 👥 همهٔ مشتریهای روی آن، سبز فعال، خاکستری خاموش، قرمز تمامشدهٔ حجم یا زمان، آبی آنلاین. مشتریای آنلاین حساب میشود که یکی از دستگاههایش در بازهٔ آنلاین با سرور حرف زده باشد (موتور ← بازهٔ آنلاین، که پیشفرضش ۳ دقیقه است). قابل مرتبسازی بر اساس جمع. |
| ترافیک | آنچه از همین اینترفیس گذشته، از شمارندههای خود آن؛ برای آپلود ↑ و دانلود ↓ نشانگر را نگه دارید. مشتریای که روی دو اینترفیس است یک حجم مصرف میکند، اما هر اینترفیس فقط با بایتهای خودش حساب میشود، چه روی این سرور و چه روی نود. اینترفیسها سقف ترافیک خودشان را ندارند، پس سقف همیشه ∞ است. قابل مرتبسازی. |
| سرعت | آنچه مشتریهای این اینترفیس همین حالا جابهجا میکنند، ↑ آپلود / ↓ دانلود در ثانیه، بهصورت میانگین چند جمعآوری آخر. وقتی چیزی جابهجا نمیشود «—». برای اینترفیس روی نود، از گزارشهای همان نود، تقریباً هر ۲۰ ثانیه. قابل مرتبسازی. |
| مدت زمان | همیشه ∞: اینترفیسها منقضی نمیشوند، مشتریها میشوند. |
جدول بر اساس تنظیمات ← اندازه صفحه بندی جدول صفحهبندی میشود؛ ۰ یعنی همه در یک صفحه.
روی گوشی
جدول به فهرستی از کارتها تبدیل میشود. هر کارت ID، نام، کلید روشن و خاموش و ⋮ را نشان میدهد. با لمس کارت یا ⓘ، پروتکل، پورت، نشانهای مشتری، ترافیک و، وقتی چیزی جابهجا میشود، سرعت باز میشود. انتخاب همه در بالا همهٔ کارتها را انتخاب میکند.
منوی ردیف
| مورد | چه وقت | کارش |
|---|---|---|
| استخراج لینکها | همیشه | لینک اشتراک همهٔ مشتریهای این اینترفیس، هر کدام در یک خط، برای کپی یا دانلود. |
| استخراج اینترفیس | همیشه | تنظیمات این اینترفیس به شکل JSON، برای وارد کردن یک اینترفیس. |
| دانلود فایل .ovpn این تونل | فقط OpenVPN | تنها پروفایل .ovpn که همهٔ مشتریهای این تونل از آن استفاده میکنند. کلید شخصیای در آن نیست: هر مشتری با نام کاربری و رمز خودش وارد میشود، پس یک فایل را میشود به همه داد و برای بیرون کردن یک مشتری، حذف او کافی است. |
| بازنشانی ترافیک | همیشه | مصرف همهٔ مشتریهایی را که دستگاهی روی این اینترفیس دارند صفر میکند. مشتریای که روی اینترفیسهای دیگر هم هست یک جمع دارد، پس همهاش برای او صفر میشود. هر کسی که به خاطر تمام شدن حجم قطع شده بود، فوراً دوباره وصل میشود. حجمها و تاریخها عوض نمیشوند. |
| شبیهسازی | همیشه | یک کپی با نام، پورت، بازهٔ آدرس و کلیدهای خودش، بدون مشتری. پروتکل، MTU، DNS و حالت کپی میشوند و کپیِ AmneziaWG پروفایل مبهمسازی تازهای میگیرد تا یک قانون مسدودسازی هر دو را از کار نیندازد. فرم نام آزاد بعدی (wg0 ← wg1)، پورت بعدی و بازهٔ بعدی (10.66.0.0/24 ← 10.67.0.0/24) را پیشنهاد میدهد و هر کدام را میتوانید عوض کنید. |
| راهاندازی مجدد | همیشه | تونل را پایین میآورد و دوباره بالا میبرد. برای تونلی است که هنگام شروع پنل بالا نیامده، مثلاً چون پورتش گرفته شده بود یا ابزاری نصب نبود. اگر باز هم بالا نیاید، خطا دلیلش را میگوید. مشتریهای روی آن لحظهای قطع میشوند و خودشان دوباره وصل میشوند. |
| الصاق کاربران موجود… | همیشه | مشتریهایی را که هنوز روی این اینترفیس نیستند، با جستوجوی نام، انتخاب کنید و این اینترفیس را به آنها اضافه کنید. هر کدام برای آن یک پیکربندی تازه میگیرند و لینک اشتراکشان خودش آن را برمیدارد. |
| الصاق کاربران به… | اینترفیس مشتری دارد | اینترفیس دیگری را، که در پنجره انتخاب میشود، به همهٔ مشتریهای این اینترفیس اضافه میکند. |
| جدا کردن کاربران از اینترفیس دیگر… | اینترفیس مشتری دارد | اینترفیس دیگری را، که در پنجره انتخاب میشود، از همهٔ مشتریهای این اینترفیس برمیدارد. مشتریای که بیاینترفیس بماند رد میشود و نامش گفته میشود. |
| افزودن کاربران به گروه… | اینترفیس مشتری دارد | همهٔ مشتریهای این اینترفیس را در یک گروه میگذارد؛ نام تازهای بنویسید یا گروه موجودی را انتخاب کنید. |
| برداشتن همهی کاربران از این اینترفیس | اینترفیس مشتری دارد | این اینترفیس را از همهٔ مشتریهای روی آن برمیدارد و اینترفیسهای دیگرشان میمانند. مشتریای که بیاینترفیس بماند رد میشود و نامش گفته میشود. پیش از حذف اینترفیس باید همین کار انجام شود. |
| حذف | همیشه | پایین را ببینید. |
حذف اینترفیس
حذف، کلیدهای اینترفیس را از بین میبرد و برگشت ندارد: اینترفیسی که دوباره با همان تنظیمات ساخته شود کلیدهای تازه دارد و هیچ پیکربندیای از اینترفیس قبلی وصل نمیشود.
اینترفیسی که هنوز مشتری دارد حذف نمیشود و پنل میگوید چند مشتری هنوز رویش هستند. اول با برداشتن همهی کاربران از این اینترفیس آنها را بردارید، که هر کدام را روی اینترفیسهای دیگرش نگه میدارد، و بعد حذف کنید. برای حذف چند اینترفیس انتخابشده هم همین است: اگر یکی از آنها هنوز مشتری داشته باشد، هیچکدام حذف نمیشود و هر اینترفیسی که مشتری دارد نام برده میشود.
فرم
دکمهٔ افزودن اینترفیس و ✎ یک فرم را باز میکنند. فیلدی که * دارد الزامی است. مقداری که سرور نپذیرد، با رنگ قرمز زیر فیلد خودش نشان داده میشود.
| فیلد | پیشفرض | یعنی | محدودیت |
|---|---|---|---|
| فعال | روشن | اگر خاموش باشد، اینترفیس ساخته میشود یا میماند، اما به کسی سرویس نمیدهد. | |
| سرور | همین سرور | فقط وقتی نودی وجود داشته باشد دیده میشود: کدام سرور آن را اجرا کند. روی نود 3x-ui یا Pasarguard، فرم به فرم اینباند خود آن پنل تبدیل میشود؛ نودها را ببینید. | نود خاموش پذیرفته نمیشود. بعد از ساخته شدن عوض نمیشود، چون همهٔ مشتریهای روی آن بیجا میمانند. |
| پروتکل * | وایرگارد | وایرگارد، OpenVPN، OpenConnect، IKEv2، L2TP/IPsec یا PPTP؛ فقط پروتکلهایی پیشنهاد میشوند که روی سرور نصباند. عوض کردنش نام، پورت، بازه و MTU را به پیشفرضهای همان پروتکل برمیگرداند. | بعد از ساخته شدن عوض نمیشود. |
| اینترفیس (نام) * | wg0 / ovpn0 | نام آن، که نام دستگاه شبکه روی سرور هم هست. | تا ۱۵ نویسه، بدون فاصله یا اسلش؛ در سرور خودش یکتا. |
| اندپوینت * | نام دامنه یا آدرس IP که مشتریها به آن وصل میشوند و در همهٔ پیکربندیها نوشته میشود. | نام دامنه یا IP؛ آدرس IPv6 داخل کروشه میآید: [2001:db8::1]. | |
| پورت * | 51820 / 1194 | پورتی که روی آن گوش میدهد. | 1 تا 65535. اگر برنامهای روی این سرور از قبل با همان پروتکل انتقال روی آن گوش بدهد، پذیرفته نمیشود. برای تونل روی نود بررسی نمیشود. |
| پروتکل انتقال | UDP | فقط OpenVPN. UDP سریعتر است؛ TCP از شبکههایی که UDP را میبندند رد میشود و روی پورت 443 شبیه یک اتصال معمولی HTTPS است. | وایرگارد همیشه UDP است. |
| سابنت * | 10.66.0.0/16 / 10.8.0.0/16 | بازهای که آدرس مشتریها از آن میآید. یک /16 حدود ۶۵٬۰۰۰ دستگاه را جا میدهد و آدرسهای آزادشده دوباره به کار میروند. | IPv4، از /10 (حدود ۴ میلیون) تا /30. نباید با اینترفیس دیگری روی همان سرور یا شبکهای که برنامهٔ دیگری آنجا به کار میبرد، مثل Docker، VPN دیگر یا شبکهٔ خود سرور، همپوشانی داشته باشد. |
| MTU | 1420 / 1500 | بزرگترین بسته. وقتی بعضی سایتها برای بعضی مشتریها باز نمیشوند، کمش کنید، مثلاً به 1280. | 576 تا 9000. |
| DNS | 1.1.1.1 | سرورهای DNSی که به مشتریها داده میشود. | یک یا چند آدرس IP، جداشده با ویرگول. |
| اینترفیس خروجی | eth0 | کارت شبکهٔ سرور که ترافیک مشتریها از آن به اینترنت میرود. | نام دستگاه، تا ۱۵ نویسه. |
| حالت | استاندارد | فقط وایرگارد. حالت AmneziaWG دستدادن را لایهگذاری و مبدل میکند تا برای فیلتر شبیه وایرگارد نباشد؛ مقادیر مبهمسازیاش خودکار ساخته میشوند (پایینتر را ببینید). مشتریها برنامهٔ AmneziaWG لازم دارند (برنامههای کلاینت را ببینید). | AmneziaWG باید روی سرور نصب باشد. |
| کلید مشترک (IPsec) | ساخته میشود | فقط L2TP/IPsec. هر دستگاه این کلید را کنار نام کاربری و رمز خودش وارد میکند. | خالی بماند، یک کلید قوی ساخته میشود. بعضی روترها کلیدی تا ۳۲ نویسه میپذیرند، مثل VPN Client روتر تیپیلینک Archer AX23. عوض کردنش یعنی همهٔ دستگاهها کلید تازه را لازم دارند و همهٔ اتصالهای تونل قطع میشوند. |
تنظیمات خاص هر پروتکل در ادامه آمده است.
L2TP/IPsec و PPTP
تونل L2TP/IPsec همان VPN داخلی ویندوز، مک، آیفون و خیلی از روترهاست. دستگاهها با نام کاربری و رمز خودشان، بهعلاوهٔ کلید مشترک تونل، وارد میشوند. تونل PPTP برای روترها و مودمهایی است که چیز دیگری ندارند. این تونل MS-CHAPv2 با رمزنگاری ۱۲۸ بیتی MPPE میخواهد و دستگاه بدون رمزنگاری را نمیپذیرد.
فرم دربارهٔ PPTP هشدار میدهد و این هشدار جدی است: رمزنگاری PPTP سالهاست شکسته شده و ضبطِ یک اتصال قابل خواندن است. آن را فقط به دستگاهی بدهید که چیز بهتری ندارد، و هر جا دستگاه وایرگارد، OpenVPN یا L2TP/IPsec دارد، همان را ترجیح دهید.
هر سرور از هر کدام از این دو نوع یک تونل دارد، چون کلاینتهای داخلی دستگاهها پورت ثابت دارند. پنل هر دو را با عامل خودش اجرا میکند: strongSwan و xl2tpd برای L2TP، و سرور PPTP خود پنل همراه با pppd؛ با ساخته شدن تونل روشن و با رفتنش خاموش میشوند.
OpenConnect (سیسکو AnyConnect)
تونل OpenConnect همان چیزی است که Cisco Secure Client (نام قبلیاش AnyConnect) و کلاینت openconnect در لینوکس و OpenWrt به آن وصل میشوند. یک VPN داخل TLS روی TCP است و وقتی دستگاه وارد شد، DTLS روی UDP روی همان پورت، که سریعتر است. پیشفرض آن پورت 443 است، که شبیه هر وبسایتی دیده میشود، و هر پورت آزادی کار میکند. هر سرور یکی از آن دارد، روی همین سرور یا روی نودی که نسخهٔ 3.0 یا جدیدتر دارد.
- ورود: برای هر دستگاه یک نام کاربری و رمز، مثل OpenVPN و L2TP. سرور هر ورود را با عامل پنل بررسی میکند. عامل رمز و آدرس هر دستگاه را میشناسد و پیش از راه دادن به نشست تازه، نشست دیگر همان دستگاه را میبندد؛ پس دستگاه دوم با همان ورود، اتصال را از اولی میگیرد. دستگاهی هم که قطع شده، نمیتواند با نشست قبلیاش برگردد.
- DTLS: بهطور پیشفرض روشن است. خاموش کردنش همهچیز را از راه TLS روی TCP میفرستد.
- استتار: بهطور پیشفرض روشن است. سرور مثل یک وبسایت معمولی جواب میدهد، مگر اینکه آدرس رمز مخفیاش را داشته باشد؛ پس اسکنر یا فیلتری که آن را امتحان میکند چیزی برای مسدود کردن نمیبیند. مشتریها آدرس را همراه با
/?secretوارد میکنند و صفحهشان آدرس کامل را میدهد. این قابلیت ocserv نسخهٔ 1.2 یا جدیدتر را میخواهد (اوبونتو 24.04، دبیان 13). روی نسخهٔ قدیمیتر، تونل بدون استتار اجرا میشود و پنل این را در لاگش میگوید. - سرتیفیکیت: با استفاده از گواهی پنل، تونلی که پنل برای آدرسش سرتیفیکیت دارد، از همان استفاده میکند و دستگاهها بیدردسر به آن اعتماد میکنند. در غیر این صورت تونل سرتیفیکیت خودش را میسازد و تمدیدش میکند؛ در این حالت باید به Cisco Secure Client گفت آن را بپذیرد (گزینهٔ Block Untrusted Servers خاموش) و صفحهٔ مشتری روشش را میگوید.
نصاب ocserv را نصب میکند و اگر نصب نباشد، پنل هنگام ساختن اولین تونل نصبش میکند. عامل پنل آن را از فایلهای خودش اجرا میکند و در بهروزرسانیهای پنل روشن نگه میدارد.
مبهمسازی AmneziaWG
انتخاب AmneziaWG مقادیر مبهمسازی را، از پیش پرشده، در فرم باز میکند. پنل آنها را برای سروری که تونل رویش است میسازد: معتبر از نظر بررسیهای AmneziaWG، متناسب با MTU تونل، و متفاوت با همهٔ تونلهای AmneziaWG دیگر آن سرور؛ بدون شناسهٔ مشترک، بدون لایهگذاری مشترک در دستدادن، و تا وقتی نوعی باقی مانده باشد، با بستهٔ متفاوتی پیش از دستدادن. این مقادیر آنقدر کوچک نگه داشته میشوند که برای تونل پرکار هزینهٔ کمی داشته باشند: چند بستهٔ اضافی حداکثر ۲۵۰ بایتی و لایهگذاری داده حداکثر ۲۰ بایتی. هر کدام را پیش از ساختن، یا بعداً با ویرایش، میتوانید عوض کنید.
مقادیر با خود سرور هم جور میشوند. روی همین سرور، پنل میخواند لینک خروجی سرور به اینترنت چند بایت را میبرد (MTU دستگاهی که مسیر پیشفرض از آن بیرون میرود) و MTU تونل را همانقدر میگذارد که در آن جا شود؛ همانطور که 1420 وایرگارد در لینک 1500 بایتی جا میشود. فرم این عدد را زیر فیلد MTU نشان میدهد. روی شبکههای ابری که 1450 یا 1400 را میبرند، تونل MTU کوچکتری میگیرد تا هیچ بستهای، با لایهگذاریاش، در راه شکسته نشود. اگر MTU را خودتان بنویسید، مقادیر برای همان ساخته میشوند. لینک نودها 1500 فرض میشود.
دو نوع پروفایل هست. جدید (AmneziaWG 2) بازههای شناسه و بستهٔ مبدل پیش از هر دستدادن دارد که برنامههای فعلی AmneziaWG و AmneziaVPN آن را میخوانند. سازگار (همهی اپها) همان چیزی است که همهٔ برنامههای AmneziaWG از اول خواندهاند، برای دستگاههایی که بهروز نمیشوند. نودی که W-UI قدیمیتر از 3.0 دارد، همیشه پروفایل سازگار میگیرد.
مقادیر:
- Jc، Jmin، Jmax: بستههای اضافی که پیش از هر دستدادن فرستاده میشوند.
- S1 تا S4: لایهگذاری هر نوع پیام. S2 نباید برابر S1 + 56 باشد و S4 باید در اتصال جا شود: در لینک 1500 بایتی حداکثر 1440 منهای MTU.
- H1 تا H4: مقداری که هر نوع پیام با آن علامت میخورد، بزرگتر از 4. با دادن مقدار دوم، آن را به بازه تبدیل کنید (AmneziaWG 2.0) تا هر بسته مقدار خودش را از آن بگیرد. این چهار نباید همپوشانی داشته باشند.
- HeaderProtectionKey: محافظت از سربرگ در AmneziaWG 3، یک کلید به شکل base64. به S1 تا S4 دستکم 12 نیاز دارد.
- I1 تا I5: بستههایی که پیش از هر دستدادن فرستاده میشوند تا شبیه پروتکل دیگری باشند. یکی از نمونههای آماده (QUIC، پرسوجوی DNS، STUN) را انتخاب کنید، یا با برچسبهای
<b 0x…>،<r N>،<rc N>،<rd N>و<t>خودتان بنویسید؛ هم ماژول کرنل و هم برنامههای گوشی این برچسبها را میخوانند.
هر مقدار همانطور بررسی میشود که AmneziaWG بررسی میکند و هر رد شدنی نام فیلد را میگوید. ساخت مقادیر تازه عددها را عوض میکند و I1 تا I5 را نگه میدارد. بعد از هر تغییر، همهٔ مشتریهای تونل فایلشان را دوباره لازم دارند. بازهها و I1 تا I5 روی دستگاه AmneziaWG 1.5 یا جدیدتر و روی نود W-UI 3.0 یا جدیدتر میخواهند.
صفحهٔ مشتری هر فایل AmneziaWG را به شکل کلید AmneziaVPN هم ارائه میکند، برای کپی یا اسکن در برنامهٔ AmneziaVPN. محتوایش همان فایل است.
نصاب ماژول کرنل AmneziaWG را بعد از ارتقای کرنل هم سالم نگه میدارد. هر کرنل تازه هدرهای خودش را میگیرد تا DKMS ماژول را هنگام نصب کرنل دوباره بسازد، و اگر این اتفاق نیفتد، wui-amnezia-kmod آن را هنگام بوت میسازد. amneziawg-go هم نصب میشود تا کرنلی که ماژول برایش ساخته نمیشود، باز هم تونلها را جابهجا کند.
IKEv2
تونل IKEv2 همان VPN داخلی اندروید ۱۲ به بعد، آیفون، مک و ویندوز است. روی UDP 500 و 4500 کار میکند، و اگر پورت جداگانهای بگیرد روی آن هم (پایینتر را ببینید). هر سرور یکی از آن دارد، روی همین سرور یا روی نودی که نسخهٔ 3.0 یا جدیدتر دارد، و strongSwan را با تونل L2TP همان سرور شریک است. همهٔ نشستها از دستگاه خود تونل میگذرند، پس محدودیت سرعت مثل هر تونل دیگری روی آن اعمال میشود.
راههایی را که دستگاه میتواند با آن وارد شود انتخاب کنید؛ هر چهار راه بهطور پیشفرض روشناند:
| راه | دستگاهها | آنچه دستگاه لازم دارد |
|---|---|---|
| نام کاربری و رمز (MSCHAPv2) | اندروید، آیفون، مک، ویندوز | اطلاعات ورودش، و سرتیفیکیت سرور که یک بار نصب شود |
| کلید (PSK) | اندروید، آیفون، مک | نام کاربریاش بهعنوان شناسه، و رمزش بهعنوان کلید |
| سرتیفیکیت (RSA) | اندروید، آیفون، مک | فایل .p12 خودش |
| سرتیفیکیت در EAP (EAP-TLS) | اندروید | فایل .p12 خودش |
پنل مرجع صدور سرتیفیکیت تونل و سرتیفیکیت سرور را میسازد، برای هر دستگاه سرتیفیکیت خودش را صادر میکند و همه را تمدید میکند؛ برای تونل روی نود هم همینطور. صفحهٔ مشتری سرتیفیکیت سرور و فایل .p12 دستگاه را میدهد، که فقط با رمز همان دستگاه باز میشود.
پورت جداگانه برای L2TP، PPTP و IKEv2
این سه پورت استاندارد دارند: UDP 1701 داخل IPsec برای L2TP، TCP 1723 برای PPTP، و UDP 500 و 4500 برای IKEv2. VPN داخلی ویندوز، آیفون، مک و اندروید جایی برای وارد کردن پورت دیگر ندارد، پس پورت استاندارد همیشه باز میماند.
با این حال میشود به تونل پورت جداگانهای داد، برای جاهایی که پورت استاندارد مسدود است. پنل آن را به پورت استاندارد هدایت میکند تا هر دو کار کنند. فقط کلاینتهایی که پورت میپذیرند از آن استفاده میکنند: برنامهٔ strongSwan برای IKEv2، لینوکس، و روترهایی که تنظیم پورت دارند. وقتی پورت استاندارد نباشد، فرم همین را میگوید و صفحهٔ مشتری آن را با عنوان Port (apps with a port setting) نشان میدهد. تونل دیگری روی همان سرور نمیتواند آن پورت را بگیرد.
L2TP/IPsec: دو دستگاه پشت یک آدرس
پروتکل L2TP/IPsec نمیتواند دو دستگاهی را که همزمان از یک آدرس عمومی به سرور میرسند جابهجا کند؛ مثلاً دو گوشی روی یک وایفای خانگی، یا روی آدرس مشترک یک اپراتور موبایل. هر دو IPsec را در حالت transport روی یک پورت اجرا میکنند و کرنل لینوکس نمیتواند آنها را از هم تشخیص دهد، پس فقط یکی کار میکند. این محدودیت همهٔ سرورهای L2TP لینوکسی است، نه فقط این پنل. هر جا مهم است، به این مشتریها IKEv2، وایرگارد یا OpenConnect بدهید که چنین محدودیتی ندارند.
فایروال سرور
وقتی ufw یا firewalld روشن باشد، پورت تونل آنجا مسدود میشود، هر چه قوانین خود پنل بگویند. برای همین پنل پورتهای هر تونل را از آن عبور میدهد: هر تغییر تونلها برای wui-firewall.service نوشته میشود، که پورتهای تازه را باز میکند و پورتهایی را که قبلاً خودش باز کرده و دیگر هیچ تونلی از آنها استفاده نمیکند، میبندد. قانونی که از قبل بوده، یعنی قانون شما، هیچوقت بسته نمیشود. اگر هیچکدام از این دو فایروال روشن نباشد، چیزی عوض نمیشود. GRE پروتکل PPTP و ESP پروتکل IPsec هم عبور داده میشوند.
تغییر اینترفیس بعد از ساختن
همهچیز جز پروتکل و سرور، بعد از ساختن قابل تغییر است.
- اندپوینت، DNS، MTU و اینترفیس خروجی درجا اعمال میشوند و کسی را قطع نمیکنند. لینک اشتراک مشتریها مقادیر تازه را دارد؛ پیکربندیای که قبلاً در برنامهای وارد شده، تا دوباره دریافت نشود، مقادیر قبلی را نگه میدارد.
- نام، پورت، سابنت، حالت و پروتکل انتقال تونل را پایین میآورند و آن را از نو بالا میبرند. همهٔ مشتریهای روی آن پیکربندیشان را دوباره لازم دارند. لینک اشتراک از قبل پیکربندی تازه را دارد، پس مشتریای که از لینک استفاده میکند فقط باید آن را تازه کند.
- سابنت تازه به هر دستگاه آدرس تازه هم میدهد و اگر برای دستگاههای فعلی کوچک باشد، پذیرفته نمیشود.
خوب است بدانید
- چند اینترفیس، یک مشتری. مشتریای که روی وایرگارد و OpenVPN است، برای هر کدام یک پیکربندی میگیرد و روی هر دو یک حجم و یک تعداد کاربر مصرف میکند.
- اینترفیس دوم برای روز مبادا. یک کپی AmneziaWG، OpenVPN روی TCP 443، یا OpenConnect روی 443، مشتریها را جایی که وایرگارد ساده فیلتر شده وصل نگه میدارد.
- اینترفیسهای روی نود را پنل خود نود اجرا میکند و این پنل اینترفیس و مشتریها را برایش میفرستد. نودها را ببینید.
