עדכונים מחליפים את הרכיב שמנתח את הפרופיל שלכם ומנהל משא ומתן על המנהרה. הכשל הראשון אחרי שדרוג הוא ראיה על שינוי מסוים, לא פסק דין על המהדורה. שמירת השגיאה הזו יחד עם הגרסה וחתימת הזמן שלה היא הצעד בעל הערך הרב ביותר שאפשר לעשות לפני התקנה מחדש של משהו.

שני מנגנונים מסבירים את רוב השבירות האלה. להפריד ביניהם זו העבודה.

מה שהמשא ומתן שינה מתחתיכם

OpenVPN מנהל משא ומתן על הצופן של ערוץ הנתונים במקום לקחת אותו מהוראה אחת, והאפשרויות ששולטות במשא ומתן הזה שינו את משמעותן בין מהדורות. פרופיל שנכתב ללקוח ישן יותר יכול להתחבר ואז להיכשל בהסכמה על ערוץ נתונים, מה שמתגלה כניתוק ולא כשגיאת תצורה ברורה. מהדורות חדשות גם מחמירות או מבטלות התנהגות מורשת, ומספקות מצב תאימות לעמיתים שעוד לא עברו. לכן שדרוג יכול לשבור פרופיל עובד בלי לגעת בבייט אחד של הקובץ.

ההשפעה על הלקוח א־סימטרית. ערוץ הבקרה עולה, האימות מצליח, ואז המנהרה מתה, וזה הסימן לאי־התאמה במשא ומתן ולא לפרופיל שנדחה.

קראו את הגרסה המותקנת לפני שאתם מהרהרים על השרת. המחרוזת הזו היא עובדה מקומית שאפשר לבדוק בלי לבקש גישה מאף אחד.

הפרופיל עשוי להינתח ולסמן משהו אחר

הוראה שעוברת ניתוח אינה בהכרח הוראה שעדיין עושה את מה שהמחבר שלה התכוון. אפשרויות עשויות להתקבל לצורך תאימות ולהיות מותעלמות, לשנות שם, או להיות מיושמות במקרה צר יותר מבעבר. משום ששום דבר לא מחזיר שגיאה, הפרופיל נראה תקין בשעה שההתנהגות שמתחתיו השתנתה. הדממה הזו היא שהופכת את הנסיגות האלה ליקרות.

שאלו אילו שורות אחראיות באמת לתוצאה שעליה נוהל משא ומתן, ואז השוו אותן לתיעוד של הגרסה שאתם מריצים עכשיו. ההשוואה הזו קצרה, והיא ההבדל בין תיקון להחזרה לאחור.

openvpn --version | head -n 2
openvpn --show-ciphers | head -n 10
grep -nE '^(cipher|data-ciphers|ncp-|tls-)' office.ovpn

הפלטפורמה זזה באותו זמן

מהדורות של לקוח מגיעות לעיתים רחוקות לבד. עדכון של מערכת ההפעלה, בקשת הרשאה שדורשת כעת אישור מפורש, או מדיניות מנוהלת שמוחלת על המכשיר עשויים לנחות באותו שבוע ולהפיק כשל שהלקוח מואשם בו. פלטפורמות ניידות מוסיפות שכבה משלהן, מפני שהאפליקציה מבקשת מהמערכת מנהרה והמערכת מחליטה מה המנהרה הזו רשאית לנתב.

רשמו את השינויים האלה בנפרד בציר הזמן. כשהאימות מצליח אבל המסלולים או פתרון השמות נכשלים, השלב המעניין הוא אחרי לחיצת היד, והחלשת אימות התעודה לא תיגע בו.

בדקו שוב את האירוע שהתחיל את הדוח

שחזרו את הרצף המקורי ולא גרסה מפושטת שלו: החיבור הראשוני, היישום שנכשל, וחיבור מחדש רגיל אחרי שינוי רשת. מנהרה שעולה בתנאי בדיקה ועדיין נופלת על מסלול החיבור מחדש לא תוקנה, וההבדל בדרך כלל מסמן היכן נמצא הפגם האמיתי. דוח שמשמיט את שלב החיבור מחדש סוגר תקלה שעדיין פתוחה.

השיגו את הפרופיל הנתמך של המפעיל או את התיקון של הספק דרך הערוץ המאומת במקום להחזיר הכול לאחור. הורדת גרסה רחבה מחזירה גם כל תיקוני אבטחה שהעדכון הביא, והחילוף הזה לעיתים רחוקות שווה חיבור עובד אחד.

מאמרים קשורים