אילו פרוטוקולי VPN מערכת ההפעלה שלכם כבר מדברת?
Windows, macOS ו-ChromeOS מגיעות כל אחת עם רשימה קצרה של מנהרות. שאלו את השער על הפרוטוקול ושיטת האימות שלו לפני שמוסיפים מנהל התקן נוסף.
לפני שמורידים לקוח נוסף, בדקו מה מערכת ההפעלה כבר מיישמת, כי התשובה לעתים קרובות מספיקה כדי לדלג על המתקין לגמרי. Windows, macOS ו-ChromeOS מגיעות כל אחת עם רשימה קבועה וקצרה של פרוטוקולי מנהרה, ושער שמדבר אחד מהם אינו זקוק למנהל התקן, לשירות או לנתיב עדכון נוספים. לא שם הספק על העלון קובע זאת. הפרוטוקול קובע, האופן שבו נקודת הקצה מאמתת את עצמה, והכתובת שהיא מצפה לה.
בקשו את הפרוטוקול, לא את שם המוצר
שם מוצר אומר מעט מאוד על מה שעובר על החוט. שני שערים הנמכרים תחת אותה תווית עשויים לדרוש מנהרות שונות לחלוטין, ואחד עשוי לקבל לקוח מובנה בעוד השני מסרב לכל דבר מלבד הפורטל שלו. שני מנהלים המתארים את אותה קופסה עשויים לחלוק וכל אחד מהם צודק, כי הם מתארים שכבות שונות. המנהרה שמתחת היא מה שקובע אם יש צורך במתקין.
שאלו שלוש שאלות את מי שמפעיל את השער: איזה פרוטוקול מנהרה, איזו שיטת אימות, ואיזו כתובת וסיומת DNS הלקוח חייב לקבל. בקשו את הפרוטוקול בשמו, וכשהתשובה חוזרת כשם מוצר, הסבירו מדוע דווקא הפרוטוקול נדרש. שלוש התשובות האלה מכריעות את שאלת הלקוח לפני שמורד תוכנה כלשהי.
יש סיבה לכך ששם המוצר שורד בכל כך הרבה קריאות. כתובת ה-URL של הפורטל היא מה שהמשתמשים רואים, והמנהרה בלתי נראית כל עוד היא עובדת. כתיבת הפרוטוקול בהערת המסירה עולה שורה אחת ומסירה את העמימות מכל מי שיבוא אחר כך.
היכן הרשימה המובנית נגמרת
הרשימות המקוריות קצרות, והקצוות שלהן חשובים יותר מהתוכן. פלטפורמה שמדברת L2TP מעל IPsec עם מפתח משותף מראש לא תדבר SSTP, וההבדל הזה מכריע את הלקוח. הטבלה מסודרת לפי מנהרה ולא לפי ספק, כך שתוכלו לחפש את הפרוטוקול שהשער ציין.
| Tunnel | Windows | macOS | ChromeOS | Linux |
|---|---|---|---|---|
| PPTP | built in | removed in 10.12 | no | package |
| L2TP over IPsec, pre-shared key | built in | built in | built in | package |
| L2TP over IPsec, certificate | built in | built in | built in | package |
| SSTP | built in | no | no | package |
| IKEv2 | built in | built in | no | package |
| Cisco IPsec with XAuth | no | built in | no | package |
| OpenVPN | no | no | built in | package |
קראו את הטבלה מול דרישות השער ולא מול עלון. אם התשובה היא L2TP מעל IPsec עם מפתח משותף מראש, שלוש הפלטפורמות הראשונות מתחברות בלי שום דבר נוסף מותקן. אם התשובה היא OpenVPN, רק ChromeOS מכוסה לפני שמתקינים משהו. פרוטוקול שאינו מופיע באף עמודה מובנית הוא האות הכנה שמתקין בדרך.
Linux היא העמודה שמתנגדת להכללה. תמיכת הפרוטוקולים שלה חיה בדמונים ובתוספים שההפצה בוחרת לארוז, כך שתמונה מינימלית עשויה לא לדבר אף אחד מהם עד שתוסיפו אותם, ושתי הפצות עם אותו שולחן עבודה עשויות להיראות שונות.
בנו את הפרופיל משורת פקודה
כל מה שהפאנל הגרפי כותב נשמר במקום שאפשר להגיע אליו, וזה מה שהופך פרופיל מובנה לאוטומטי. Windows שומר ערכי VPN ב-.pbk קבצים תחת פרופיל המשתמש ותחת ProgramData, ו-rasphone יכול להציג ולערוך ערכים שרשימת הרשת אינה מציגה. זה חשוב כשמכונה מוקמת בסקריפט ואיש לא ילחץ דרך אשף. זה גם מסביר כיצד פרופיל יכול להתקיים בלי להופיע אי פעם במגש.
rasdial
rasdial "VpnName" alice
rasdial "VpnName" /disconnect
עריכה ידנית של .pbk קובץ עובדת, והיא גם הדרך המהירה ביותר להרוס אותו, אז הניחו לכלי להחזיק בתבנית. macOS שומר את השירותים שלו בתצורת המערכת, ו-networksetup פונה אליהם לפי שם שירות; כמה דגלים רוצים כתובת ולא שם מארח, אז פתרו תחילה את נקודת הקצה ושמרו את הערך שהלקוח באמת ישתמש בו. ההבחנה הזו נושכת באוטומציה, כי סקריפט שעובד עם כתובת עלול להיכשל עם שם, והשגיאה נראית כמו שער תקול ולא כמו ארגומנט שנדחה.
networksetup -listallnetworkservices
networksetup -getinfo "ServiceName"
networksetup -setmanualwithdhcprouter "ServiceName" 198.51.100.20
שמות השירותים מתורגמים וניתנים לעריכה על ידי המשתמש, אז סקריפט שמקודד Wi-Fi קשיח נשבר במכונה הראשונה שמוגדרת לשפה אחרת. קראו את השם מפקודת הרשימה והעבירו אותו במקום לנחש.
תעודות בלי לקוח קנייני
כמה פריסות זקוקות לתעודת לקוח ושום דבר אחר קנייני, וזה המקרה הביניים ששווה לבדוק לפני שמקבלים מנהל התקן. הצבת תעודה במאגר של הפלטפורמה נתמכת; זה אינו אותו מעשה כמו לזרוק שורש של ספק פנימה ולסמוך על כך שהלקוח ימצא אותו. הראשון הוא הצבה מכוונת; השני הוא ניחוש עם קריאת תמיכה מצורפת.
הפרט שתופס אנשים הוא איזה מאגר הלקוח קורא. תעודה במאגר המשתמש בלתי נראית ללקוח שמוגדר למאגר המכונה, וההודעה שמקבלים אומרת שהתעודה חסרה, לא שהיא במקום הלא נכון. בדקו את שני המאגרים לפני שמסיקים שהתעודה שגויה. רשמו איזה מהם משתמשת התצורה העובדת, כי ההערה הזו שורדת את התעודה כשהמכונה נבנית מחדש.
Windows מפריד בין שני המאגרים במפורש, ו-macOS מפריד את צרור המפתחות של הכניסה מצרור המפתחות של המערכת. השמות שונים, אבל אופן הכשל זהה: תעודה תקפה שהלקוח אף פעם לא מביט בה.
מה מכריח מתקין
כמה שערים קושרים את הלקוח למאגר תעודות פרטי, לסוכן מצב, או לחילופי כניסה שמערכת ההפעלה אינה יכולה לבצע. פריסות הבנויות על חומרה של Check Point, Cisco או Fortinet נוחתות שם לעתים קרובות, ובהן הלקוח המובנה אינו קיצור דרך. תחליף של צד שלישי עשוי להתחבר ובכל זאת להפר את המדיניות, מה שהופך את זה להחלטת אבטחה ולא להחלטת נוחות. התקינו מה שהמדיניות דורשת ורשמו את הסיבה לצד גרסת המתקין.
הרשומה הזו היא החלק שאנשים מדלגים עליו והחלק שחוסך למי שמנהל אחריו שבוע: פרוטוקול, שיטת אימות, משפחת כתובות וסיומת נדרשת, עם שורה אחת של נימוק לכל קובץ בינארי שהיה צריך להוסיף. שימו אותה במקום שבו חיות הערות המתקין ולא בשרשור צ'אט. שתי שורות תיעוד מונעות חקירה חוזרת.