OpenVPN מדווח שהאתחול הושלם: למה שורת הפקודה לא חוזרת
השורה האחרונה ביומן מסמנת את סוף האתחול, לא את סוף התוכנית. בחרו בין ניפוי באגים בחזית, יחידת שירות ומצב דמון.
שום דבר לא תקוע כשהמסוף שותק אחרי השורה האחרונה ביומן. זו הצורה הצפויה ללקוח בחזית: הוא סיים לעלות ועכשיו יושב שם ומעביר תנועה. שורת הפקודה של המעטפת אינה סימן ההצלחה שהיא נראית.
התייחסו להודעה כאל הגבול בין האתחול למצב היציב, כי בדיוק את זה היא מסמנת.
ההודעה מסמנת את סוף האתחול, לא את סוף התהליך
OpenVPN מדפיס את השורה הזו לאחר שפתח את ההתקן, הגדיר את הממשק, התקין מסלולים וסיים את חילופי ה-TLS עם העמית. לאחר מכן התהליך ממשיך לרוץ, כי תפקידו להחזיק את המנהרה פתוחה ולהעביר חבילות. תוכנית בחזית אינה חוזרת לשורת הפקודה כל עוד היא עושה את התפקיד הזה. פלט שקט לאחר מכן הוא נורמלי, כי הלקוח מדבר רק כשמשהו משתנה.
אם השורה מופיעה והחיבור מת מאוחר יותר, זהו אירוע אחר, והיומן יגיד זאת לאחר מעשה.
Ctrl+C הוא החלטה, לא תיקון
לחיצה על Ctrl+C שולחת פסיקה, שהלקוח מתייחס אליה כבקשה לכיבוי. שורת הפקודה חוזרת, המנהרה נעלמת, וכל הפעלה שמשתמשת בה מסתיימת. זה נראה כמו התקדמות ולמעשה ההיפך. אם המטרה היא חיבור מתמשך, התשובה היא להעביר את התהליך למקום שבו יוכל להמשיך בלי המסוף שלכם, ולא לקטוע אותו.
השארתו בחזית היא הבחירה הנכונה בזמן ניפוי באגים, כי שגיאות מאוחרות נשארות גלויות באותו חלון. דקה שקטה לא מוכיחה דבר לאף כיוון; בדקו משאב דרך המנהרה במקום לצפות בפלט.
מה ההודעה אינה מוכיחה
ההשלמה היא הצהרה מקומית על התצורה של הלקוח עצמו. היא אינה אומרת שהצד השני עונה, שהמסלולים שהותקנו מתאימים למה שאתם צריכים, או שפתרון שמות דרך המנהרה עובד. פרופיל של מנהרה מפוצלת יכול להיות מאותחל לחלוטין בעוד שיתוף של החברה נשאר בלתי נגיש, כי המסלול או מדיניות ה-DNS מעולם לא כיסו אותו. עותקים בצד השרת מדפיסים שורה דומה כשהם מוכנים לקבל לקוחות, וזה אינו אותו דבר כמו לקוח שמחובר.
«השרת עלה» ו«המחשב הנייד יכול לפתוח את השיתוף» הם תצפיות משני מקומות שונים, וערבובן שולח אתכם לנפות באגים במארח הלא נכון.
הרצה בלי מסוף
לפריסה מתמשכת, השתמשו במערך השירות שהפלטפורמה תומכת בו. במארח systemd זהו עותק openvpn-client@office עם הפרופיל ב-/etc/openvpn/client, מופעל ומאופשר כך שישרוד אתחולים. Community OpenVPN מציע גם --daemon יחד עם --log או --log-append, מה שמנתק את התהליך ושולח את הפלט לקובץ. שתי הגישות משנות את אופן ריצת התהליך; אף אחת מהן לא מתקנת מסלול או הופכת יישום מרוחק לבריא.
ודאו שאינכם מפעילים עותק שני לצד עותק ששירות כבר מנהל. שני לקוחות שתובעים את אותו פרופיל יוצרים יומנים מבלבלים ומנהרה אחת שלא התכוונתם לה.
בחרו במערך שמתאים למשימה
חזית לאבחון, שירות לכל מה שחייב לשרוד את ההפעלה, מצב דמון כשאין מנהל שירות להישען עליו. שלושת אלה מכסים את המקרים הרגילים, ולכל אחד סיבה ברורה להתקיים. בחירה באחד מהם בטעות היא מה שיוצר את הדיווח «זה עובד עד שהחלון נסגר».
כשהמנהרה אמורה להישאר, אשרו לאחר מכן שהיא חוזרת לאחר אתחול ושהיומנים שלה מגיעים למקום שתסתכלו בו. שורת האתחול מופיעה גם ביומנים האלה, ואז אף אחד לא צריך לשמור על מסוף בשבילה.