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

היכן חי קובץ המנהרה עכשיו

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

Get-ChildItem "C:\Program Files\WireGuard\Data\Configurations"

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

$blob = "C:\Program Files\WireGuard\Data\Configurations\hq.conf.dpapi"
wireguard.exe /installtunnelservice $blob

הפקודה הזו מצליחה רק בהקשר שיכול לפרום את הבלוב. היא מתקינה שירות; היא לא מפענחת דבר עבורכם.

למה הבלוב לא נפתח במקום אחר

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

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

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

מה לנסות בזמן שהמערכת הישנה עדיין עולה

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

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

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

בנו מחדש מהצד של העמית במקום

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

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

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

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