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

ورود را به همان ترتیبی که مک پیش می‌رود دنبال کنید

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

DecisionTypical symptomWhere to look
Identity selectionNo valid identity, wrong certificate offeredProfile and which identity the client picked
Local key useSigning or interaction error before any handshakeExecution context and key access rules
Remote authenticationChain, name or client-admission rejectionGateway identity and what it accepts

جدول را از بالا به پایین بخوانید و در اولین سطری که شکست می‌خورد توقف کنید. هر چیزی زیر یک شکست اثبات‌نشده است، و به همین دلیل «گواهی مورد اعتماد نیست» نتیجه‌ای چنین رایج و چنین غیرقابل‌اتکاست.

مجوز محلی در واقع چه چیزی را پوشش می‌دهد

در مدل جاکلیدی مک‌اواس، اقلام محافظت‌شده قواعد دسترسی مخصوص عملیات و فهرستی از برنامه‌های مورد اعتماد را حمل می‌کنند. امضا با کلید خصوصی یکی از همان عملیات است و قواعد به فایل اجرایی‌ای که آن را انجام می‌دهد اعمال می‌شود، نه به گواهی به‌عنوان سند. مرجع کنترل دسترسی اپل نیز مرزی میان این مدل و جاکلیدی iCloud و ترتیبات گروه دسترسی می‌کشد، پس توصیه‌ای که برای یکی نوشته شده به دیگری منتقل نمی‌شود.

از این دو پیامد برمی‌آید. دیده‌شدن یک گواهی عمومی در فهرست اثبات نمی‌کند که مؤلفه پس‌زمینه VPN اصلاً به آن کلید دسترسی دارد. و مجوزی که به یک برنامه جلویی داده می‌شود هیچ چیزی درباره یک کمک‌کننده جداگانه یا افزونه شبکه نمی‌گوید، زیرا کد متفاوتی با هویت‌های متفاوت هستند.

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

security find-identity -v -p ssl-client

خواندن کد errSecInteractionNotAllowed

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

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

باریک تعمیر کنید، نه گسترده

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

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

در توصیه‌های قدیمی‌تر دو تغییر با هم بسته می‌شوند و هر دو بیش از حد گسترده‌اند. دادن دسترسی به کلید خصوصی به همه برنامه‌ها استفاده محلی از کلید را بسیار فراتر از نیاز گسترش می‌دهد، و تنظیم گواهی روی «همیشه مورد اعتماد» ارزیابی گواهی را برای همه چیز روی دستگاه تغییر می‌دهد. هیچ‌کدام بیانگر «این پیاده‌سازی تأییدشده VPN، با این هویت موردنظر» نیست.

پیش از خواندن دروازه، محلی بررسی کنید

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

تحویل سودمند نام می‌برد که کدام یک از سه تصمیم شکست خورده و همان‌جا می‌ایستد. هرگز کلید خصوصی را شامل نمی‌شود و هرگز اقلام نامرتبط جاکلیدی را به امید اینکه لوح سفید کمک کند بازنشانی نمی‌کند. آن دو عادت را پیش از حادثه بسازید نه در میانه آن، وقتی وسوسه آزمودن همه‌چیز با هم قوی‌ترین است. بلیتی که می‌گوید «جاکلیدی را از نو ساختیم» تقریباً هیچ چیزی درباره نقص اصلی به خواننده بعدی نمی‌گوید.

مقالات مرتبط