دو راه‌انداز همان پروفایل را روی یک ماشین باز می‌کنند و فقط رابط گرافیکی متصل می‌شود. فایل سالم است و نصب‌کننده احتمالاً درست است؛ آنچه تفاوت دارد زمینه‌ای است که هر راه‌انداز به openvpn.exe می‌دهد. پوشه کاری، هویت حساب و ویژگی‌های فایل همگی همراه با آن زمینه می‌روند. آن‌ها را به همین ترتیب بررسی کنید و در اولین موردی که خطا را توضیح می‌دهد بایستید.

تأیید کنید کدام راه‌انداز شکست می‌خورد

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

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

مسیرهای نسبی کجا حل می‌شوند

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

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

openvpn --cd "C:\VPN\profiles\office" --config "C:\VPN\profiles\office\office.ovpn"

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

وقتی هویت سرویس نمی‌تواند بخواند

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

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

icacls "C:\VPN\profiles\office\office.ovpn"

سپس همان خواندن را با هویت سرویس امتحان کنید، برای نمونه با psexec -s -i از Sysinternals، و ببینید فایل باز می‌شود یا نه. اگر باز نشود، هیچ اصلاح مسیری کمکی نمی‌کند. ACL را درست کنید یا پروفایل را به جایی ببرید که هویت سرویس بتواند بخواند.

رمزگذاری در سطح فایل دومین و کم‌تر رایج‌ترین حالت است. پروفایلی که با ویژگی Encrypting File System علامت خورده برای کاربری که آن را رمزگذاری کرده به‌طور شفاف رمزگشایی می‌شود و برای حساب سرویس ناخواندنی می‌ماند. به همین دلیل همان فایل در ویرایشگر شما باز می‌شود و زیر سرویس نه.

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

cipher /s:"C:\VPN\profiles\office"
attrib "C:\VPN\profiles\office\office.ovpn"

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

تصمیم درباره اینکه تونل از آن کیست

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

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

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

پوشش سرویس در واقع چه چیزی را راه‌اندازی می‌کند

نقطه ورود سرویس یک پوشش کوچک است که پارامترهای ذخیره‌شده خودش را می‌خواند و سپس openvpn.exe را راه‌اندازی می‌کند. وقتی خط فرمان در گزارش رویداد با انتظار شما نمی‌خواند، همان مقادیر چیزی است که باید بررسی شود. نصب دوباره آن‌ها را به پیش‌فرض برمی‌گرداند و شواهد را نابود می‌کند. اول آن‌ها را بخوانید.

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

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

مقالات مرتبط