عدم تطابق گواهی SSTP: نامی که سرور شما باید ارائه کند
کارخواه نام میزبان پروفایل را با گواهی مقایسه میکند و سپس زنجیره و کاربرد را بررسی میکند. پروفایل یا گواهی را درست کنید، هرگز اعتبارسنجی را.
SSTP کارخواه SSTP سرور را تنها پس از موفقیت اعتبارسنجی TLS میپذیرد، و آن بررسی یک نام، یک زنجیره و یک کاربرد را مقایسه میکند. نام از پروفایل اتصال میآید، نه از نشانیای که تصادفاً میتوانید پینگ کنید. وقتی یکی از این سه جور نیاید، کارخواه مشکل گواهی را گزارش میکند و هرگز به اعلان ورود نمیرسد.
نام پروفایل تعیین میکند چه چیزی بررسی شود
SSTP پروتکل TLS را روی TCP 443 اجرا میکند، بنابراین کارخواه مانند هر کارخواه TLS دیگری رفتار میکند: نام میزبان را از پروفایل میگیرد، همان نام را درخواست میکند و گواهی را با آن مقایسه میکند. اگر نشانی IP در پروفایل بنویسید، مقایسه به مقایسه نشانی IP تبدیل میشود که بیشتر گواهیهای سرور آن را برآورده نمیکنند.
به همین دلیل آزمون در مرورگر میتواند موفق شود در حالی که VPN شکست میخورد، چون مرورگر نامی متفاوت از پروفایل به کار برده است. همین شکاف وقتی رخ میدهد که DNS تقسیمشده نام میزبان VPN را به نشانی داخلی تبدیل کند در حالی که مرورگر به نشانی عمومی رسیده است. نخست پروفایل را با نام میزبان مستند همتراز کنید و سپس گواهیها را مقایسه کنید. هر چیز دیگری که پیش از آن تغییر دهید حدس است.
گواهی سرور باید چه چیزی داشته باشد
کارخواههای امروزی با افزونه نام جایگزین موضوع مقایسه میکنند، پس نام میزبان باید آنجا بهصورت یک ورودی DNS بیاید. فقط نام متداول برای پشتههای اعتبارسنجی کنونی کافی نیست، و نویسه عام تنها یک برچسب را پوشش میدهد نه هر زیردامنهای که بسازید. سه گواهی مرز را نشان میدهند: نام درست با کاربرد نادرست هویت را تأیید میکند و سپس در بررسی کاربرد شکست میخورد، نام و کاربرد درست با گواهی میانی گمشده در زنجیره شکست میخورد، و نامی که فقط در نام متداول آمده پیش از اهمیت یافتن آن دو شکست میخورد.
گواهی همچنین به کاربرد احراز هویت سرور نیاز دارد، مقدار کاربرد کلید گسترده که در مشخصات SSTP مایکروسافت نام برده شده، یعنی serverAuth با شناسه شیء 1.3.6.1.5.5.7.3.1. کاربرد کلید و زنجیره معتبر مجموعه را کامل میکنند. گواهیای که روی سرور هست، برای نام درست صادر شده اما تنها برای احراز هویت کارخواه است، باز هم شکست میخورد.
پیش از اطلاعات ورود، زنجیره و ساعت را بررسی کنید
شکستهای زمان و اعتماد همان نتیجه دیدنی عدم تطابق نام را میدهند و تشخیص هر دو ارزانتر از مشکل گذرواژه است. ساعت سرور و ساعت کارخواه را بررسی کنید و سپس زنجیره را همانگونه که کارخواه میبیند بخوانید:
# from the client, or any host that runs openssl
openssl s_client -connect vpn.example.com:443 -servername vpn.example.com -showcerts </dev/null 2>/dev/null | openssl x509 -noout -subject -dates -ext subjectAltName
openssl s_client -connect vpn.example.com:443 -servername vpn.example.com -verify_return_error </dev/null
# on the Windows server that holds the SSTP listener
w32tm /query /statusفرمان نخست نام، بازه اعتبار و نامهای جایگزینی را که کارخواه با آنها مقایسه میکند چاپ میکند. دومی خطاهای بررسی را همراه زنجیره ارائهشده گزارش میکند و آنجاست که گواهی میانی گمشده پدیدار میشود. در ویندوز، پرسوجوی سرویس زمان به شما میگوید ساعت اصلاح میشود یا فقط منحرف شده است.
یک CA داخلی یک شرط دیگر میافزاید: کارخواه باید به آن CA اعتماد کند. ریشه سازمانی را از کانال توزیع تأییدشدهاش نصب کنید، نه از صفحهای که گواهی جایگزین پیشنهاد میدهد، زیرا آن تصمیم تمام مدل اعتماد در مقیاس کوچک است.
اعتبارسنجی سرور و احراز هویت کاربر دو مرحله پیاپی با شکستهای متفاوتاند. خطای گواهی یعنی کارخواه هرگز به سرور اعتماد نکرد، در حالی که گذرواژه ردشده یعنی به سرور اعتماد کرد و اطلاعات ورود نادرست بود. خاموش کردن اعتبارسنجی گواهی برای رسیدن به اعلان گذرواژه، تضمین را برمیدارد بهجای اینکه آن را تعمیر کند. برای اثبات کارکرد بقیه مسیر، همان نام میزبان و درگاه را از کارخواهی آزمایش کنید که از پیش به زنجیره اعتماد دارد، و پروفایل مستقرشده را دستنخورده بگذارید.
نام یا گواهی را درست کنید و دوباره آزمایش کنید
سه شرط تعمیر را تعیین میکند. اگر نام پروفایل نادرست است، پروفایل را اصلاح کنید یا نام گمشده را به گواهی بیفزایید. اگر زنجیره ناقص است، گواهی میانی را روی سرور نصب کنید. اگر کاربرد نادرست است، بهجای وصله زدن دور آن، دوباره صادر کنید.
پس از تغییر، با کارخواه پشتیبانیشده دوباره وصل شوید و تأیید کنید که اعلان ورود ظاهر میشود و سپس تونل بالا میآید. نام میزبان بهکاررفته، صادرکننده و تاریخ انقضا را در تیکت بنویسید. همان سابقه است که تمدید بعدی را به کاری زمانبندیشده بهجای یک قطعی دیگر تبدیل میکند و به نفر بعد هم نشان میدهد کدام یک از سه شرط واقعاً شکسته بود.