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

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

شمارهٔ نسخه یک نیاز قابلیتی نیست

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

روشن کنید که دستور به معنای «این قابلیت یا تازه‌تر» است یا «دقیقاً همین ساخت آزموده شده است». دو پاسخ به دو مخزن متفاوت می‌رسند.

نام رمز باید با انتشار پایه هم‌خوان باشد

مخزن‌ها با نام رمز توزیع کلید می‌خورند و نام انتشار یک مشتق، نام رمز پایهٔ آن نیست. /etc/os-release را برای VERSION_CODENAME و ID_LIKE بخوانید و تأیید کنید که مشتق کدام انتشار پایه را دنبال می‌کند. پاسخی قدیمی که یک انتشار میزکار را به یک نام رمز اوبونتو نگاشت، دربارهٔ بعدی چیزی نمی‌گوید. حدس زدن نام رمز همان راهی است که سیستم در پایان بسته‌هایی را می‌کشد که برای کتابخانهٔ C دیگری ساخته شده‌اند.

پیش از افزودن هر چیزی، با apt-cache policy openvpn بررسی کنید که مدیر بسته از پیش چه عرضه می‌کند. اگر نامزد نصب‌شده نیاز را برآورده کند، پرسش مخزن از میان می‌رود.

مخزن بالادست واقعاً به چه چیزی گره می‌خورد

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

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

نصب کردن یکپارچه‌سازی نیست

جایگزینی openvpn دودویی افزونهٔ NetworkManager کم‌شده، پنجرهٔ درون‌ریزی یا ویرایشگر میزکار را اضافه نمی‌کند. این‌ها در بسته‌های جداگانه‌ای مانند network-manager-openvpn و همتای میزکاری‌اش زندگی می‌کنند و با کتابخانهٔ کلاینت رابطهٔ نسخهٔ خودشان را دارند. OpenVPN 3 Linux هم پیاده‌سازی دیگری است، با مدل نشست و پیکربندی خودش، پس بسته‌هایش جانشین مستقیم برای گردش کار نمایهٔ 2.x نیستند.

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

سه تصمیم را بنویسید

پیاده‌سازی، انتشار پایه و مالک به‌روزرسانی را ثبت کنید و بنویسید انتظار می‌رود کدام‌یک تغییر کند. همین ثبت است که یک ارتقای آینده می‌خواند وقتی خط مخزن پس از یک انتشار توزیع از کار می‌افتد. بدون آن، نفر بعدی حدس نام رمز را با شماره‌ای تازه‌تر تکرار می‌کند.

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

مقالات مرتبط