SAN של תעודת IKEv2: מדוע בדיקת הזהות נכשלת
תעודה תקפה של IKEv2 עדיין נכשלת כאשר הזהות המצופה וסוג ה-SAN אינם תואמים. התאימו DNS ל-DNS, IP ל-IP, ובדקו קודם את הפרופיל.
התעודה שלך נקשרת ל-CA מהימן, התאריכים תקינים, והעמית עדיין מסרב להשלים את שלב 1 עם שגיאת זהות. נגישות וחתימה תקפה הן רק חצי ממה שלקוח IKEv2 בודק. החצי השני הוא האם הזהות שהוא מצפה לה מופיעה בתעודה בשדה הנכון, וציפייה זו נקבעת על ידי הפרופיל, ולא על ידי שם קובץ התעודה.
התסמין תמיד באותה צורה
פרופיל חיבור משתנה משם מארח לכתובת IP, או מתחדש מתעודה שנשאה שם DNS לתעודה שנושאת רק כתובות, והמנהרה מפסיקה לנהל משא ומתן. דבר בנתיב הרשת לא השתנה. הלקוח מגיע לעמית, מקבל תעודה, ודוחה את זהות העמית מפני שהמזהה שנאמר לו לצפות לו אינו מיוצג בשדה שהוא מקבל. חידושים הם הטריגר הרגיל, שכן תעודת ההחלפה מגיעה לעתים קרובות מתבנית אחרת מזו שהיא מחליפה.
שני הצדדים אז רושמים משהו לא מועיל, ולכן הכשל מדווח בדרך כלל כבעיית תעודה. יומן הלקוח עשוי לציין את הזהות שרצה, ושם זה הוא הרמז שאתה רוצה, ולא תאריך התפוגה.
התאימו את סוג המזהה, לא רק את הערך
SAN מסוג dNSName ו-SAN מסוג iPAddress הם שדות שונים עם כללי התאמה שונים, ולכן תעודה הנושאת 203.0.113.10 כמחרוזת DNS אינה מספקת לקוח המצפה לזהות IP. מאמתים מודרניים מתעלמים במידה רבה מהשם הנפוץ, ולכן התווית הידידותית בפרטי התעודה אינה מוכיחה דבר על מה שיתאים. אם שם מארח הוחלף בכתובת בזמן פתרון תקלות, הניחו שהזהות המצופה עברה איתו עד שבדקתם. השוו את המחרוזת בפרופיל למחרוזת ב-SAN תו אחר תו, כי נקודה בסוף או רווח מיותר מספיקים.
תווים כלליים הם נוחות של DNS בלבד ופועלים לפי כללי ההתאמה שלהם, וזו סיבה נוספת לכך שפרופיל מבוסס IP לעולם לא צריך להסתמך עליהם.
מצאו היכן כל לקוח שומר את הציפייה
ב-strongSwan, הערך שמשווים לתעודה מגיע מהגדרת זהות העמית: rightid בתצורה הקלאסית, או id של קטע חיבור מרוחק ב-swanctl. התיעוד שלו על תאימות Apple IKEv2 מועיל כאן כי הוא מפרט את מוסכמות הזהות שלקוח מונחה פרופיל משתמש בהן, ומוסכמות אלו מסבירות סוג של אי-התאמה שנראה אקראי על הקו.
פרופילי תצורה של Apple נושאים שדה מזהה מרוחק, והערך שם הוא מה שהלקוח בודק ולא כתובת השרת בהגדרות החיבור. לקוחות Windows ולקוחות מכשירים יש לכל אחד שדה משלו עם ברירת מחדל משלו, וברירת המחדל עוקבת לעתים קרובות אחרי הכתובת שהקלדת. כששני שדות חלוקים, זה שהלקוח באמת קורא הוא זה שמנצח, ולעתים רחוקות זה זה שערכת.
תקנו את הפרופיל או את התעודה, במכוון
בדקו את תעודת העמית בכלים מאושרים ורשמו את ערכי ה-SAN עם הסוגים שלהם לפני שמשנים משהו. הבדיקה הזו אינה דורשת מפתח פרטי ואינה דורשת העלאה, והיא מכריעה את השאלה בשניות. אם הפריסה מיועדת לזהות DNS אחת, התעודה חייבת לשאת אותה כרשומת dNSName, ואם הפריסה מיועדת לכתובת, התעודה זקוקה לרשומת iPAddress בדיוק לאותה כתובת.
כשהתעודה שגויה, בקשו מהמפעיל תעודה מתוקנת עם המזהה המצופה הספציפי. כשהפרופיל שגוי, תקנו את הפרופיל והשאירו את התעודה. השבתת אימות זהות מעלימה את השגיאה ומסירה את הבדיקה שהמנהרה מדברת עם העמית שהתכוונתם אליו.
תעדו את הזהות המצופה לכל פלטפורמת לקוח, כי ערך שלקוח אחד גוזר אוטומטית עשוי להיות מפורש אצל אחר.
תנו לבקשת החידוש ארבע עובדות
רשמו את המזהה המצופה ואת סוגו, את ערכי ה-SAN שיש לתעודה הנוכחית בפועל, את הלקוח והגרסה שמבצעים את הבדיקה, ואת נוסח השגיאה המדויק. בקשת חידוש שנבנית מארבע השורות האלה מקבלת את התעודה הנכונה בפעם הראשונה, במקום עוד תעודה עם אותו שם קובץ מוכר.