چرا اتصال دوباره VPN دوباره اعتبارنامه میخواهد
گذرواژه ذخیرهشده و توکن قابل استفاده مجدد در زمانبندیهای متفاوتی منقضی میشوند. پیش از تغییر هر چیزی روی کلاینت بخوانید اتصال دوباره کدام ماده را خواسته است.
تونلی که ساعتها کار کرده بود، همان لحظهای که لپتاپ بیدار میشود گذرواژه میخواهد، و هیچ چیز در پیکربندی تغییر نکرده است. آنچه تغییر کرده وضعیت اعتبارنامهای است که اتصال دوباره میخواست دوباره استفاده کند. سه نوع ماده این را کنترل میکند و تنها یکی از آنها از هر فاصلهای جان سالم به در میبرد.
بخوانید کلاینت کدام را خواسته است، چون هر سه با ساعتهای متفاوت منقضی میشوند و با پیامهای متفاوت شکست میخورند.
سه نوع ماده قابل استفاده مجدد
گذرواژه کششده رازی است که کلاینت نگه میدارد و تا زمانی که حساب آن را تغییر ندهد معتبر میماند. توکن نشست را سرور پس از ورود موفق صادر میکند، عمر خودش را دارد و هر لحظه میتواند باطل شود. بلیت نشست TLS یا انجمن امنیتی IKE وضعیت پروتکل است، ارزان برای ازسرگیری و کاملاً مستقل از گذرواژه شما. هر کدام توسط مؤلفهای متفاوت صادر میشود و هر کدام با شرایط خودش منقضی میشود.
اولی از راهاندازی دوباره جان سالم به در میبرد، دومی معمولاً از حالت تعلیق، و سومی ممکن است اصلاً از تغییر شبکه جان سالم به در نبرد. اشتباه گرفتن آنها راهحل غلط تولید میکند، مثل بازنشانی گذرواژهای که هرگز رد نشده بود.
خودِ درخواست تشخیص است. پنجره مرورگر یا کد عامل دوم یعنی سرور احراز هویت تعاملی خواسته است، در حالی که شکست بیصدا بدون درخواست یعنی کلاینت هرگز به اندازهای نرسیده که از او پرسیده شود.
| Material | Typical lifetime | What invalidates it |
|---|---|---|
| Cached password | Until changed | Account or password policy change |
| Session token | Minutes to hours | Expiry, revocation, reauthentication policy |
| Tunnel SA or TLS ticket | Configured rekey interval | Rekey, network change, peer restart |
تولید دوباره کلید، احراز هویت دوباره نیست
تولید دوباره کلید، کلیدها را جایگزین میکند و هویت احرازشده را نگه میدارد، و به همین دلیل روی تونل سالم هر چند وقت یکبار بیصدا رخ میدهد. احراز هویت دوباره خودِ بررسی هویت را تکرار میکند و همان رویدادی است که به شما نیاز دارد. IKEv2 این دو را صریحاً جدا میکند و همتا میتواند در فاصله پیکربندیشده احراز هویت کامل دوباره را بخواهد، بیآنکه مهم باشد در این میان چند بار کلید تولید دوباره شده است. این دو رویداد از بیرون یکسان به نظر میرسند تا وقتی بخوانید گزارش کدام را نام میبرد.
OpenVPN در واژگان خودش همینطور رفتار میکند: فاصله مذاکره دوباره کانال داده را تازه میکند و توکن احراز هویت میتواند به کلاینت برگردانده شود تا در اتصال بعدی از ورود کامل اجتناب شود. آن توکن عمری دارد و سرور تصمیم میگیرد آیا دوباره بپذیردش.
پس اتصال دوباره پس از هشت ساعت میتواند شکست بخورد جایی که اتصال دوباره پس از هشت دقیقه موفق شده بود، بدون هیچ تغییر پیکربندی در هیچ طرفی. این تمام توضیح درخواستی است که فقط بعد از ناهار ظاهر میشود.
وقتی کلاینت نمیتواند چالش جدید را کامل کند
سیاستی که گام مرورگر میخواهد روی کلاینتی که راهی برای نشان دادنش ندارد شکست میخورد. سرورهای بیواسط، اسکریپتهای راهاندازی و نمایههای قدیمی ساختهشده برای احراز هویت فقط با گذرواژه همه به این دیوار میخورند، و شکست اغلب بهصورت یک مهلت عمومی ظاهر میشود نه خطای احراز هویت.
گذارهای دستگاه و شبکه هم میتوانند در پنجره ارزیابی سیاست بیفتند، پس جابهجایی از Wi-Fi به هاتاسپات با بررسیای همزمان میشود که در هر حال رخ میداد. این همزمانی شبکه را مقصر نشان میدهد وقتی تایمر علت است.
openvpn --config client.ovpn --verb 3 2>&1 | grep -i -E "reneg|auth" ipsec statusall | grep -i -E "rekey|reauth"
خط اول رویدادهای مذاکره دوباره و احراز هویت را در گزارش خود کلاینت نشان میدهد، و خط دوم انجمنهای امنیتی را که همتای strongSwan اکنون دارد. مهرهای زمانی را با لحظه ظهور درخواست مقایسه کنید؛ تطابق تایمر را تأیید میکند نه شبکه را.
چه چیزی را گزارش کنید و چه چیزی را خاموش نکنید
اگر ورود دستی موفق میشود و استفاده مجدد خودکار پیوسته شکست میخورد، دقیقاً همین را به اپراتور بگویید. نام مؤلفه را میبرد: مسیر استفاده مجدد، نه اعتبارنامه. زمان شکست، حسابی که استفاده میشد و نوع درخواستی که دیدید را اضافه کنید.
عامل دوم را غیرفعال نکنید، اعتبارسنجی گواهی را نادیده نگیرید و اعتبارنامهها را در اسکریپت نچسبانید تا اتصال دوباره بیصدا شود. هر یک از اینها همان بررسیای را برمیدارد که سیاست برای اجرایش وجود دارد، و هر یک یک درخواست ورود را به حادثه تبدیل میکند.
در عوض جریان پشتیبانیشده را بخواهید: کلاینتی که بتواند چالش را کامل کند، عمر توکنی که با روز کاری بخواند، یا نمایه غیرتعاملی تأییدشده برای ماشینی که نمیتواند درخواست کند. همه اینها تصمیمهای پیکربندی هستند که کسی میتواند تأییدشان کند، چیزی که یک راهحل موقت نیست.