
לאחרונה יצא לי להציץ על הלוגים של הראוטר שלי ופשוט נחרדתי לגלות כמה נסיונות גישה נעשות אל תוך הרשת הבתית שלי בכל רגע נתון, דבר שהוביל אותי לחיפוש פתרון יעיל וזול לחשוף את השירותים שלי החוצה (כמו גישה למערכת הבית החכם) ובד בבד להקטין את החשיפה של הרשת שלי למתקפות או כניסות בלתי מורשות.
במדריך זה, אסקור את השימוש במערכת ה Zero Trust של Cloudflare הנקראת גם Cloudflare Tunnel. מערכת זו מאפשרת גישה אמינה ומאובטחת אל תוך הרשת ומבלי שיהיה צורך לפתוח פורטים, אך לפני שניגש להסברים על המערכת, ארחיב טיפה על עקרון ה Zero Trust.
רשת Zero-trust, רשת אפס אֵמוּן או סתם אפס-אמון (וגם ארכיטקטורת אפס אמון, מודל אבטחה אפס אמון, ZTA, ZTNA), הוא מונח בתחום טכנולוגיית המידע (IT) והגנת סייבר, המתאר גישה לעיצוב ויישום של רשתות ה-IT. הרעיון המרכזי העומד מאחורי אפס-אמון הוא כי אין לסמוך כברירת מחדל על מכשירים ברשת, כגון מחשבים ניידים, גם אם הם מחוברים לרשת ארגונית מנוהלת כגון ה-LAN הארגוני וגם אם אומתו בעבר. ברוב סביבות הארגון המודרניות, הרשתות הארגוניות מורכבות ממקטעים רבים המחוברים זה לזה, שירותים ותשתיות מבוססי ענן, חיבורים לסביבות מרוחקות וניידות, ומתחברים יותר ויותר ל-IT לא קונבנציונלי, כמו מכשירי IoT. הגישה הישנה של אמון אוטומטי במכשירים בסביבה הארגונית, או מכשירים המחוברים אליו באמצעות VPN, הפכה הגיונית פחות בסביבות המודרניות שהן מגוונות ומבוזרות. במקום זאת, גישת רשת האפס-אמון דוגלת באימות הדדי, כולל בדיקת זהות ותקינות של מכשירים ללא קשר למיקום, ומתן גישה ליישומים ושירותים על סמך אמון זהות המכשיר ובריאות המכשיר במקביל ובנוסף לאימות משתמשים. (מתוך Wikipedia)
אז למה דווקא Cloudflare Tunnel?
האמת, כשהתחלתי לבחון את נושא ה Zero Trust ולמרות שאני משתמש ב Cloudflare לא מעט זמן עבור ניהול רשומות ה DNS שלי, המערכת הראשונה שנחשפתי אליה (ועליה גם כתבתי) היא Teleport.
Teleport גם היא מערכת המבוססת על עקרון ה Zero Trust הניתנת כשירות SaaS (בתשלום, או Selfhostd) וגם בחינם (Self Hosted) אך היו בה מספר חסרונות:
- הגרסה החינמית לא תמכה ב SSO (למעט גיטהאב).
- יש צורך בהקמה של שרת בענן.
- תמיכה מאוד מצומצמת בפרוטוקולים (לא תומכת ב Putty/SCP ועוד).
- קונפיגורציה ידנית (בשרת וב Agent).
לאחר תקופת עבודה קצרה עם Teleport, נחשפתי ל Cloudflare Tunnel וליכולות שלה והחלטתי לבחון אותה. לשמחתי גיליתי שהיכולות של המערכת עונות על כל הצרכים שלי ואף יותר:
- השירות ניתן בחינם (לשימוש אישי, ואף מסחרי עם הגבלות קלות).
- תמיכה בכל מערכת הפעלה וארכיטקטורה Out of the box.
- אין הגבלה לכמות מכשירי קצה שמחוברים.
- תמיכה במגוון Identity providers (ארחיב בהמשך).
- תמיכה במגוון רחב מאוד של פרוטוקולי תקשורת (ssh,scp,tcp,http/s,vnc,rdp ועוד).
- תמיכה בעבודה ישירה דרך Putty,WinSCP.
- אבטחה גבוהה (Firewall/Waf) עם אפשרות לחסום גישה מבוססת מיקום גאוגרפי.
- ניהול מלא של תעודות SSL (בלי התערבות משתמש).
- שימוש מלא ב Cloudflare Proxy מעל הרשומות. מבטיח תעבורה מהירה ומבלי לחשוף את כתובת ה IP שלי.
יאללה מתחילים
כפי שציינתי בחלק הקודם, Cloudflare היא חברה ותיקה המספקת שרותי DNS, רשת CDN ועוד ועל מנת לעבוד עם מערכת ה Zero Trust יש תחילה לפתוח חשבון ולהעביר את הדומיין שבשרותכם לניהול שלהם (להגדיר את ה NS על השרתים שלהם). בחלק זה של המדריך אסביר איך להקים את החשבון.
תחילה, יש להכנס לכתובת הבאה: https://www.cloudflare.com וללחוץ על "Sign Up".
במסך הבא תתבקשו להקליד מייל וסיסמה עבור החשבון החדש ולחצו על "Sign up"
כעת נתבקש לבקש להגדיר את הדומיין אותו נרצה לנהל (מזכיר, חובה שהדומיין ישב ב CF על מנת בנוכל להשתמש ב Zero Trust). לחצו על "Add a website or application".

והקלידו את הדומיין אותו תרצו להגדיר:

כעת נתבקש לבחור את סוג התכנית, בחרו את התכנית החינמית (תמיד אפשר לשדרג במידה ותצטרכו):
כעת נתבקש להוסיף רשומות DNS, ניתן לדלג על שלב זה היות והגדרה של Zero Tunnel תוסיף רשומות באופן אוטומטי.
השלב הבא (והאחרון בהקשר של העברת הניהול של הדומיין) הוא להגדיר את רשומות ה NS של CF. במסך הבא תוכלו לראות מה הרשומות אותן תצטרכו להגדיר אצל הספקית דרכה רכשתם את הדומיין.

אחרי שלחצם על "Done, check nameservers" המערכת תבצע אימות של הרשומות. שלב זה יכול לקחת קצת זמן ובסופו תקבלו מייל שהדומיין עבר בהצלחה לניהול של CF.
על החלק הבא אפשר לדלג, אך ההמלצה שלי היא לבצע אותו היות והוא ישפר את האבטחה ואת מהירות התגובה.
לאחר לחיצה על Get Started תועברו לשיפור הגדרות האבטחה. ההמלצה כמובן היא תמיד להשתמש ב HTTPS Rewrite אוטומטי וכמובן Always use https.
ניתן ואף רצוי, להפעיל גם את האופטימיזציה על ידי הפעלת מניפיקציה של Js, CSS וכן של HTML על מנת להאיץ את טעינת הדפים (ניתן לבטל בכל רגע נתון).
וכן להפעיל כיווץ Brotli על מנת להאיץ טעינה של דפים
מתחילים עם Zero Trust
בחלקו הקודם של המדריך דברנו על נקודת הפתיחה לעבודה עם Zero Trust שהיא פתיחת חשבון ב Cloudflare. בחלק זה של המדריך נלמד איך להפעיל את ה Zero Trust ובהמשך גם איך להגדיר את ה Tunnel הראשון שלנו.
לצורך ההגדרה, לחצו על "Zero Trust" בתפריט שנמצא בצד שמאל של המסך:
במסך ה Welcome לחצו על Next:
בשלב הבא נתבקש לבחור שם לצוות (גם אם לא באמת מדובר בצוות ואתם לבדכם בחשבון), השם הזה ילווה אתכם בכל מני מקומות במהלך העבודה עם המערכת, ניתן לשנות אותו בכל רגע נתון דרך ההגדרות
כעת נבחר את התכנית (בחרו בתכנית החינמית, אין באמת צורך ביותר מזה כאשר עובדים עם המערכת לשימוש פרטי).
שימו לב! למרות שבחרתם במסלול החינמי תתבקשו להכניס פרטי אשראי (כמו שקורה בהרבה מקומות). אל חשש, במידה ותשארו במסלול החינמי ולא תשדרגו, לא תחוייבו (אני נמצא ב CF כבר 7-8 שנים ומעולם לא חוייבתי).

אחרי שמילאתם את הפרטים, לחצו על Next ועברו למסך אישור הרישום.

זהו, יש ברשותכם חשבון Zero Trust פעיל.
במדריך הבא נלמד להגדיר את ה Tunnel הראשון שלנו.
Leave a Reply