מנהור מאובטח וניתן להרחבה של VPN

צפה בקטגוריות

מנהור מאובטח וניתן להרחבה של VPN

6 דק קריאה

סקירה כללית #

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

שירותי VPN מספקים מספר יכולות כגון:

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

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

IPSEC: זה הפך להיות דה-פקטו הסטנדרטי עבור התקנות ה- VPN באינטרנט, הוא מיישם מספר גדול של אלגוריתמים קריפטוגרפיים והוא לא הכיר פגיעויות עיקריות.
OpenVPN: פופולרי מאוד אך אינו מבוסס על תקנים, הוא משתמש בפרוטוקולי אבטחה בהתאמה אישית, הוא תומך ב- TLS / SSL עם Opensl ובמספר גדול של אלגוריתמים קריפטוגרפיים.
L2TP: זוהי הרחבה של PPTP, היא יכולה להשתמש ב- IPSec כשכבת האבטחה, ששימשה בעיקר בעבר על ידי ספקי האינטרנט. נכון לעכשיו, יש אפשרויות טובות יותר עם ביצועים טובים יותר.
מגן: זהו VPN מהיר במיוחד, וקל מאוד להתקנה, הוא משתמש באלגוריתמים הקריפטוגרפיים שכבר כלולים בליבת הלינוקס, הוא משתמש ב- UDP וניתן להגדיר אותו בכל יציאה.

סביבת VPN ניתנת להרחבה #

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

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

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

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

ארכיטקטורת Wireguard VPN

1. שני מגן שרתים החולקים אותה תצורה.
2. כל אחד מגן השרת יוצר את אותה רשת פרטית 192.168.2.0/24.
3. כל אחד VPN לקוח יהיה NATed עם ה- IP של ה- VPN שרת שבו הוא מחובר.
4. הלקוחות מתחברים ל- IP ציבורי אחד vpn.company.com באמצעות 51820 PDU, חיבור זה יועבר אל רליאנואיד (192.168.100.10).
5. רליאנואיד יטען את איזון חיבורי הלקוח לזמינים VPN שרתים ולבסוף, המנהרה תיצור כנגד אחד השרתים.

במאמר זה, נפרט שתי דרכים שונות להגדרת שירות VPN ניתן להרחבה זה עם Relianoid : אחת דרך ממשק משתמש גרפי (GUI) ושנייה דרך ממשק שורת פקודה.

הגדרת שירות וירטואלי של VPN עם Relianoid #

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

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

על מנת ליצור את שירות ה-VPN הווירטואלי , חווה חדשה בשם VPNLB עם פרופיל l4xnat שמאזין ל- UDP 51820 קשורה לכתובת ה- IP הווירטואלית של VPN 192.168.100.10 ולמצב sNAT , כאשר חומת האש תבצע חיבורי NAT ​​מלקוחות באמצעות הפקודה הבאה:

zcli farm create -שם חווה VPNLB -vip 192.168.100.10 -vport 51820 -פרופיל l4xnat

או באמצעות ממשק משתמש גרפי:

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

zcli farm set VPNLB -פרוטוקול udp -nattype nat -persistence srcip -ttl 1800 -משקל אלגוריתם

או באמצעות ממשק משתמש גרפי:

הוסף שני שרתי Backend 192.168.100.11 ו- 192.168.100.12 לחווה שכבר נוצרה עבור שירות איזון העומסים של ה- VPN . אין צורך להגדיר את הפורט מכיוון ש- l4xnat ישתמש באותו שרת כמו בפורט הווירטואלי שהוגדר.

zcli farm-service-backend הוסף VPNLB default_service -ip 192.168.100.11 zcli farm-service-backend הוסף VPNLB default_service -ip 192.168.100.12

או באמצעות ממשק משתמש גרפי:

כדי לבחור רק שרתים אחוריים תקינים, בואו נגדיר בדיקת תקינות פשוטה עבורם שתבטיח שפורט 51820 UDP זמין בצד השרת האחורי. צרו עותק של בדיקת תקינות גנרית וטעונה מראש שנקראת check_udp וערו אותה. אנו ממליצים לשנות את שדה המרווח ל -21 מכיוון שכל בדיקת תקינות משתמשת בפסק זמן של 10 שניות , כך ש -10 שניות * 2 שרתים אחוריים + שנייה אחת = 21 שניות.

zcli farmguardian create -copy_from check_udp -name check_udp_vpn zcli farmguardian set check_udp_vpn -description "בדיקת VPN עבור UDP 51820" -מרווח 21

או באמצעות ממשק משתמש גרפי:

לבסוף, הוסף את בדיקת התקינות שכבר נוצרה בשם check_udp_vpn לחווה הנוכחית VPNLB.

zcli farm-service-farmguardian הוסף VPNLB default_service -name check_udp_vpn

התקנת DDoS התקפה באמצעות מודול IPDS #

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

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

שתי הגנות שונות מפורטות בסעיף זה, אשר הניבו תוצאות טובות יותר עם שירות מסוג זה: הגנת IP באמצעות רשימות לבנות ומגבלות חיבור.

מתן גישה לשירות ה- VPN הציבורי מרשימת לבן נתונה #

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

כדי להגדיר רשימה לבנה עבור גרמניה ולדחות תעבורה מטווחי מדינות אחרים של כתובות IP , אנא בצע את הפעולות הבאות:

1. עבור אל IPDS> רשימה שחורה ומצא שם את הרשימה השחורה geo_ES_Dermany. אז ערוך כלל רשימה שחורה זו ושנה את שדה המדיניות ל - להתיר לשמש כרשימה לבנה.
2. באותה רשימה עבור לכרטיסייה חוות ולהעביר את החווה VPNLB מהטור חוות זמינות ל אפשר חוות.
3. לחץ לְשַׂחֵק סמל הכלול ב - Windows פעולות כדי לאפשר את רשימת ההיתרים.
4. תיכנס לאתר IPDS> רשימה שחורה ומצא שם את הרשימה השחורה הכל, עבור לכרטיסייה חוות ולהעביר את החווה VPNLB מהטור חוות זמינות ל אפשר חוות.
5. לחץ לְשַׂחֵק סמל של פעולות כדי לאפשר את הרשימה השחורה.

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

מאפשר גישה לשירות ה- VPN הציבורי עם מגבלות חיבור #

כדי ליישם הגנה מסוג זה מפני DDoS, מומלץ מאוד לדעת כיצד השירות הציבורי שלנו עובד, לדוגמה, Wireguard משתמש בחיבור UDP אחד בלבד לכל לקוח . לכן, אם אנו מקבלים מספר חיבורים בו זמנית מאותה כתובת IP של המקור, אנו יכולים להאמין שיותר מעובד מרחוק אחד מתחבר מאחורי NAT ​​אשר מסווה את התעבורה או שזה יכול להיות קשור למתקפת UDP Flood . בכל מקרה, אנו יכולים להבין שיותר מ-10 חיבורים לכל כתובת IP של המקור אינם תעבורה לגיטימית.

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

1. תיכנס לאתר IPDS> DoS> צור כלל DoS, צור כלל חדש עם שם limit_per_source_IP ובחר את סוג כלל מגבלת חיבור כוללת לכל IP מקור ולחץ צור.
2. בטופס מהדורת הכלל, הזן את מגבלת החיבורים המקבילים הרצויים בשדה סך כל החיבורים למקור IP, במקרה שלנו 10 ולחץ חפש.
3. עבור לכרטיסייה חוות ולהעביר את החווה VPNLB מהטור חוות זמינות ל אפשר חוות.

עם תצורה זו, הגבלנו את מספר החיבורים המקבילים לכל כתובת IP של המקור ל-10, איננו סומכים על אף כתובת IP של לקוח שמנסה ליצור יותר מ-10 חיבורי VPN. במקרה שניתן להבטיח שיותר מלקוח אחד לעולם לא יריץ חיבורים דרך אף NAT ציבורי, ניתן להגדיר את limit_per_source_IP ל-1 בלבד.

תיהנו משירות VPN גמיש, זמין מאוד ומאובטח עם Relianoid!

📄 הורד מסמך זה בפורמט PDF #

    דואר אלקטרוני: *

    מופעל על ידי BetterDocs