یک پروفایل، دو مالک: NetworkManager یا systemd
یک فایل .ovpn بیاثر است تا وقتی چیزی مالک آن شود. پیش از کپی کردن پروفایل در هر دو جا، اتصال NetworkManager را با یک واحد سرویس مستقل مقایسه کنید.
با یک فایل .ovpn هیچ اتفاقی نمیافتد تا وقتی چیزی مالک آن شود. روی رومیزی Pi مالکان محتمل NetworkManager است، که اتصال واردشده را در فایل کلید خودش نگه میدارد، و یک واحد سرویس مستقل که پیکربندی را از یک پوشه میخواند. اینها دو مدل عملیاتی با ذخیرهسازی متفاوت، رفتار متفاوت با اعتبارنامهها و قواعد فعالسازی متفاوت هستند. انتخاب آگاهانه یکی از آنها تمام کار است؛ کپی کردن فایل در هر دو جا فقط انتخاب را تصادفی میکند.
هر دو میتوانند روی یک ماشین کار کنند، اما نه روی یک تونل در یک لحظه، و تعارض شبیه خرابی شبکه به نظر میرسد نه خرابی پیکربندی.
دو راه برای مالکیت همان تونل
افزونهٔ OpenVPN در NetworkManager یک ویرایشگر و یک سرویس اضافه میکند که اتصال را بهجای شما مدیریت میکنند، و نصب برنامهٔ OpenVPN آن یکپارچگی را نصب نمیکند. واحد مستقل چیدمان معکوس است: بدون ویرایشگر، بدون یکپارچگی با رومیزی، یک فایل پیکربندی و هر اختیاری که واحد بدهد. اولی وضعیت اتصال را در پایگاه دادهٔ خودش نگه میدارد، دومی آن را هر جا که پروفایل و واحد بگویند نگه میدارد. بیشتر سردرگمی از این فرض میآید که پروفایل واردشده و فایل کپیشده یک شیء واحد هستند.
اینها دو نمای یک چیز نیستند. ویرایش فایل دانلودشده نه آنچه NetworkManager ذخیره کرده را تغییر میدهد و نه آنچه واحد میخواند، و هر کدام میتواند همانی باشد که تونلی را ساخته که همین حالا آزمایش کردید.
اتصالی را دنبال کنید که رومیزی واقعاً استفاده میکند
عملیات واردکردن مستند، nmcli connection import type openvpn file office.ovpn، اتصالی از طریق افزونه ایجاد میکند. UUID آن را ثبت کنید و بعداً از همان شناسه استفاده کنید، چون نامها ویرایش میشوند و دو اتصال میتوانند یک برچسب را شریک شوند. nmcli connection show فهرست میکند چه چیزی وجود دارد، و خواندن ویژگیهای خود اتصال به شما میگوید از کدام فایل آمده و چه چیزی ذخیره میکند. اگر UUID که ویرایش میکنید همانی نیست که رومیزی فعال میکند، ویرایشهای شما تزیین است.
رازها در انبار مالک زندگی میکنند. بیرون ریختن هر راز ذخیرهشده برای فهمیدن اینکه کدام پروفایل فعال است کند و پرخطر است؛ بهجایش از شیء اتصال بپرسید و مواد خصوصی را همانجا نگه دارید که مالک انتظار دارد.
اتصال واردشده برای اجرا به نشست گرافیکی نیاز ندارد، اما ممکن است هنوز به منبعی برای اعتبارنامه نیاز داشته باشد. اینکه بدون نظارت شروع شود به اختیارات و رازهایش بستگی دارد، نه به حضور رومیزی.
قالب واحد را پیش از تکیه بر آن بخوانید
جایی که بسته واحد مشتری به سبک بالادستی را میآورد، نمونهای به نام office به %i.conf در پوشهٔ پیکربندیشدهٔ واحد نگاشت میشود، که برای قالب 2.6 /etc/openvpn/client است. واحد نصبشده و هر فایل افزوده را پیش از اعتماد به نمونهای از یک راهنما بخوانید، چون توزیعها مسیرها را جابهجا میکنند. اجرای دستی از ترمینال دربارهٔ دید سرویس به فایلها، رازها یا اختیارات چیزی اثبات نمیکند. کادر گذرواژهٔ رومیزی هم مدرکی نیست بر اینکه یک واحد غیرتعاملی راه تأییدشدهای برای گرفتن همان گذرواژه دارد.
به واحد فقط همان چیزی را بدهید که لازم دارد. شل کردن تمام جعبهٔ شنی سرویس چون یک فایل ارجاعشده خواندنی نیست، اصلاحی کوچک در اختیارات را با در معرض قرار گرفتن بزرگی معاوضه میکند، و خطا معمولاً نام فایلی را میآورد که نیاز به توجه دارد.
نسخهٔ تکراری را بدون از دست دادن دسترسی بازنشسته کنید
اگر هر دو مالک بتوانند تونل را شروع کنند، یکی در نهایت در لحظهٔ اشتباه برنده میشود و مسیرها و دستگاه بازنده عقب میمانند. نسخهٔ تکراری تصادفی را از طریق مالک خودش حذف کنید, مسیر بازیابی را باز نگه دارید، و تأیید کنید که مالک باقیمانده پس از راهاندازی دوباره هنوز وصل میشود. دو VPN که آگاهانه جدا هستند و سیاستهای مسیریابی متفاوت دارند، پرسش طراحی دیگری است، نه اجازهای برای اینکه دو مسیر راهاندازی بر سر یک اتصال رقابت کنند.
سپس چرخهٔ عمری را که پذیرفتید بنویسید: فعالسازی دستی، ورود، یا بوت و اتصال دوباره. نقطهٔ پایانی ذخیرهشده، احراز هویت طرف مقابل و منبعی که تونل باید به آن برسد را بررسی کنید، چون نصب دوبارهٔ رومیزی جای دانستن اینکه کدام پیکربندی اجرا شد را نمیگیرد.