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

מה remote באמת מגדיר

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

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

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

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

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

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

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

ArrangementNeeds a destination
Roaming clientYes, which gateway to contact
Multi-client gatewayNo, peers authenticate on arrival
Two known peersDepends on which side initiates

תפקידי התחבורה הם ציר אחר

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

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

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

למה remote חסר אינו דלת פתוחה

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

אימות ויעד הם בלתי תלויים, והראשון הוא החשוב לאמון.

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

כתבו מה התצורה מניחה

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

ההנחות האלה הן התכנון. ההנחיות הן רק הכתיב שלהן.

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

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