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

שני עיצובים, תסמין אחד

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

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

Get-NetIPAddress -AddressFamily IPv4 | Select-Object InterfaceAlias, IPAddress, PrefixLength

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

Path the packet takesAddress the server recordsFilter scope that admits itWhat the log can still tell you
Desktop on the server LANIts own LAN addressLocalSubnet or the LAN prefixWhich workstation connected
Client on the routed VPN poolIts tunnel addressThe VPN pool as a remote addressWhich VPN account connected, if the pool is logged
Client behind source NAT at the gatewayThe gateway's LAN addressThe gateway addressOnly that some VPN user connected
Site-to-site gatewayThe remote gateway's tunnel addressThe remote site's prefixWhich site connected, not which user

התיעוד של תיעוד של New-NetFirewallRule מבית Microsoft מתאר את תנאי הכתובת המרוחקת ואת מילת המפתח LocalSubnet. קרא אותו לפני שתחליט שמילת המפתח פירושה כל הכתובות הפרטיות, כי זה לא כך.

השווה מה השרת באמת מקבל

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

Get-NetFirewallRule -DisplayGroup 'File and Printer Sharing' | Get-NetFirewallAddressFilter
Get-NetFirewallProfile | Select-Object Name,Enabled,DefaultInboundAction

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

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

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

הפרד נגישות מהזדהות. מאזין ב-TCP 445 מוכיח ששירות כרוך לפורט; הוא לא מוכיח שחבילה מרוחקת יכולה להגיע אליו. חיבור TCP שהושלם, לעומת זאת, לא אומר עדיין דבר על הקמת הפעלת SMB או הרשאות שיתוף. בדוק את לחיצת היד משני הצדדים לפני שאתה עורך כלל.

Test-NetConnection -ComputerName files.corp.example -Port 445
Test-NetConnection -ComputerName files.corp.example -Port 445 -InformationLevel Detailed

הפקודה הראשונה מדווחת אם לחיצת יד של TCP מצליחה מהמכונה שעליה אתה מריץ אותה, והשנייה מוסיפה את הכתובת שנפתרה ופרטי ממשק. הרץ אותה מלקוח ה-VPN וממחשב שולחן במשרד, ואז השווה. Ping לא עונה על אף אחת מהשאלות, כי ייתכן ש-ICMP חסום בזמן ש-SMB פתוח, או מותר בזמן שחומת האש מפילה 445.

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

כאשר NAT מקור מסיר את ההבחנה

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

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

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

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