IT לעורכי דין – שרת RDP מקומי שיקולי אבטחה וצעצועי אבטחה חדשים

הקדמה

את המאמר שלי למה לי מחשוב ענן עכשיו כתבתי לפני כשנה כשפתחתי את משרד עוה"ד שלי. עוה"ד = עורך הדין כלומר אני לבד. נוכח אופי הפעילות, צפיתי מראש את הגידול והצורך שלי להסתייע בעובד/ת או פרילנסר/ית בתוך כשנה, ותהיתי אם כדאי לי להתחיל מראש עם מערכת מחשוב בענן, או שרת פיזי. המסקנה הסופית היתה שאתחיל עם מערכת אחת שתותקן על מחשב נייד, מטעמי חיסכון בעלויות ובשים לב לעובדה שהייתי לבד וצפיתי שכך יהיה למשך כשנה. כך עשיתי. על מחשב נייד הותקנה תוכנת עו"דכנית, הקבצים שנוצרו או תויקו נשמרו בתיקייה שסונכרנה באופן מיידי ל- OneDrive של מיקרוסופט, שירות שניתן במסגרת מנוי אופיס 365 שסיפק גם את כל תוכנות אופיס ברישיון. את הדיסק הקשיח הצפנתי באמצעות BitLocker של מיקרוסופט וכך הייתי שקט שבמקרה של גניבה או תקלה במחשב הנייד – הקבצים מגובים ולא יהיה אבדן של יותר מיום עבודה וגם לא סיכון אבטחה. לגבי מסד הנתונים של עו"דכנית הקפדתי לגבות אותו כל שבוע, כאשר גם ספריית הגיבוי מסתנכרנת ל- OneDrive ותהיה זמינה במקרה של אבדן המחשב הנייד. כל הדבר הזה עבד טוב, ועדיין הטרידה אותי העובדה שלמרות הצפנת ה- BitLocker אבדן של המחשב הנייד תאפשר, פוטנציאלית, חדירה למידע, או אפילו כניסה למערכת ההפעלה של המחשב הנייד ולמסד הנתונים של העו"דכנת. בנוסף, המחשב הנייד פעל רק כשעבדתי עליו, וגם לא בהכרח היה מחובר לרשת. מערכת ההפעלה שעליו (חלונות 10) לא אפשרה התחברות מקבילה של מספר משתמשים (לפחות לא בלי שינוי לא מורשה שגם כלל סיכון אבטחתי).

הזמן חלף והחלטתי שאני צריך להתחיל להכשיר את הפרילנסר/ית שאני אצטרך, ולהתחיל להקצות לו/לה משימות. לאחד מחשבה החלטתי לנסות את שירותי המיחשוב בענן של חברת Virmach. אז התחלתי פיילוט, גם של המערכת וגם של הפרילנסרית. היה לי חשוב לא להתחייב לכלום. כלומר מערכת נפרדת לחלוטין מזו שרצה על המחשב הנייד, כזו שאם לא מסתדר אני מוריד את השאלטר ושלום. על כך הרחבתי במאמר שלי מחשוב ענן כאן ועכשיו. כשהתחלתי עם הפיילוט ידעתי שמערכות המיחשוב בענן של וירמאץ' עד רמת 80$ לחודש, הן מערכות shared, כלומר המשתמש לא מקבל בכל רגע נתון את כל כח המיחשוב. כל השרת הוא למעשה מכונה וירטואלית שרצה על שרת אחר. זה מאפשר להקים שרת חלונות 2016 סביר בהחלט שיכול לשרת מספר משתמשים בשירותי אופיס. ועדיין, לא היתה לי שום דרך לדעת האם המערכת "תסחוב" את כל מה שצריך. התחלתי בתוכנית הכי בסיסית כ- 12 דולר בחודש, שהספיקה בשביל להתקין אופיס ועו"דכנית אבל המערכת היתה איטית מדי. שדרוג ל- 20 דולר לחודש נתן שיפור קטן, אבל עו"דכנית היתה קצת כבדה עליו, אפילו למשתמש אחד. גם בשדרוג לתוכנית של 40 דולר בחודש עו"דכנית היתה קצת כבדה, אבל לגמרי ברת שימוש. הפיילוט רץ בהצלחה במשך כ- 5 חודשים, הפרילנסרית למדה מהר, ואת תוצרי העבודה ייצאה מהמערכת בענן ושלחה אלי במייל לצורך תיוק במערכת האמיתית שרצה על המחשב הנייד. לקח כ- 5 חודשים עד שהחלטתי שהעניין עובד, ושצריך למצוא פתרון שיאפשר לפרילנסרית לעבוד ישירות על המערכת שלי. כלומר – או שאני מעביר את המערכת מהמחשב הנייד לענן, או שאני מוצא פתרון אחר. את הכף הכריע שיקול שולי למדי – הכרטיס החכם של מערכת נט-המשפט לא עבד במערכת של Virmach. מהכרות עם מערכת אחרת, ידעתי שהכרטיס החכם עובד בפרוטוקול RDP. בהפשטה, המחשב המרוחק "מאמץ" את כניסת ה- USB של המחשב האורח וכך אפשר להיכנס לנט-המשפט ולחתום מסמכים באמצעות הכרטיס החכם על המחשב המרוחק. אבל ב- Virmach התקבלה שגיאת אבטחה. אני מעריך שבגלל שהמערכת היתה shared למעשה גם המחשב המרוחק, המארח, היה אורח על שרת אחר, שכבר לא אימץ את הכרטיס החכם "בשרשור". אמנם אפשר היה לעבוד מסביב לזה (להעתיק את המסמכים מהטרמינל למחשב הפיזי, לחתום ולהגיש אותם דרכו), אבל רציתי שהכל יעבוד במקום אחד ולשמור על workflow ועל זה לא רציתי להתפשר.

השינויים והשיפורים שנעשו

למרות כל החסרונות שכתבתי בשני המאמרים לשרת פיזי, כזה שיושב במשרד, הגעתי למסקנה שאולי זה הדבר הנכון לעשות בינתיים. החשש הגדול היה שגם במעבר לשרת dedicated אני אמצא את עצמי שואף לשרת חזק ויקר (והפעם אני זה שצריך לעבוד על המערכת ואני לא אסבול איטיות). ועלויות של 160 דולר לחודש עבר היו משהו שלא הייתי מוכן להתחייב אליו. גם שרת פיזי אינו דבר זול. הפתרון המפתיע נמצא בדמות המחשב הביתי שלי שכמו שהבנתם עד עכשיו, כנראה לא מחשב "פראייר". אמנם מדובר במחשב i5 בן כמעט 5 שנים, אבל במהלך הזמן אימצתי לו 16GB RAM ודיסק קשיח SSD מהסדרה שתומכת במהירות הגבוהה ביותר שלוח האם תומך. אז לילה אחד אחרי קצת קריאה, ונגד כמה המלצות של אנשים די רציניים, החלטתי שאני דווקא הולך על זה. גיביתי את המחשב רכשתי רישיון Windows Server 2016 גירסת Standart + רישיונות CAL והתקנתי. למה Standart ולא הרישיון הפשוט יותר? חשבתי שאולי בעתיד ארצה להקים מכונות וירטואליות (באמצעות Hyper-V) לכל מיני שימושים ורציתי את האופציה שלא קיימת בגרסה הפשוטה יותר.

ו… וואלה? עבד. ועבד טוב!!! אופיס עולה מהר. עו"דכנית עובדת בסדר גמור כולל עם שני משתמשים במקביל ועוד אחת שגולשת וצופה ב"אח הגדול" באתר קשר (נחשו מי, אחרי הכל "לקחתי" לה את המחשב הביתי). אמנם הפרוייקט גזל ממני כשבוע עבודה במצטבר וכמה שיחות עם מיקרוסופט שלא תומכים פורמאלית בהתקנת office 365 על שרתים. ד"א את רישיון האופיס הייתי צריך לשדרג לגירסת Pro Plus ליוזר הקיים שלי וגם ליוזר הנוסף. הסיבה לכך היא שהרישיון הרגיל לא מאפשר הפעלה של מספר "אינסטנסים" של תוכנות אופיס במקביל (לכל יוזר). הקטע המצחיק הוא שאחרי שפיצחתי את הדרך לעשות Deployment לאופיס 365 למספר משתמשים (עם הרבה ניסוי וטעייה ומעט עזרה ברמיזות מהתומכים של מיקרוסופט שפורמאלית לא תומכים ב- Windows Server), גילית את המאמר הזה התקנה של Office 365 ProPlus בשרת RDS… בעברית! בנוסף, היו כמה תוכנות והגדרות שלקח לי זמן ללמוד איך להגדיר אבל חפירה בגוגל ובפורומים לעזרה בבעיות טכניות סיפקו את הסחורה. ד"א אם לא ציינתי את זה – אין לי שום הכשרה פורמאלית בשרתים, Networking וכו' – הכל באוטודידקציה. וכמובן שאני לא לוקח שום אחריות על שום דבר שמישהו יעשה כדי לחקות את מה שעשיתי.

לענייננו – בשלב הזה הצלחתי להרים שרת שמאפשר למשתמשים (לי כשאני מחוץ לבית ולפרילנסרית) להתחבר אליו באמצעות RDP ולהשתמש בעו"דכנית, אופיס וכל מה שצריך. אפילו הכרטיס החכם עובד. אבל איך המשתמשים האלה מתחברים אליו מרחוק? ובכן, בזמנו רכשתי ראוטר שתומך ב- DDWRT שהיא תוכנת קוד-פתוח לראוטרים. אחד הפיצ'רים שהתוכנה הזו מוסיפה לחלק מהראוטרים היא האפשרות להקים שרת VPN שלמעשה "מכניס אותי הביתה" מבחוץ, והופך את המחשב שנמצא במיקום מרוחק לחלק מהרשת הפנימית. את הדבר הזה הקמתי עוד מזמן, כדי לאפשר לעצמי להתחבר לרשת הפנימית בבית ולהפעיל את המזגן, להשתלט על המחשב הפרטי בבית, ועוד כמה שטויות. החיבור של אותו VPN הוא בפרוטוקול PPTP שנחשב פחות מאובטח אבל הוא אמין וקל להגדרה. אז למעשה הפרילנסרית מחייגת ל- VPN, נרשמת כחלק מהרשת הפנימית ואז מפעילה את קליינט ה- RDP ומתחברת.

דבר אחרון, לגבי עלות רישון ה- Windows Server 2016 Standart אמנם לא מדובר בדבר זול, אבל הנחתי שהוא ישרת אותי שנה לפחות, ואח"כ גם אוכל להעביר אותי (אולי אפילו לשרת ייעודי בענן – לא בטוח אבל אני חושב שאין מניעה), ולכן החלטתי שזה שווה את העלות.

שיקולי אבטחה

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

  1. פרוטוקול ה- PPTP ששימש להתחברות מרחוק.
  2. רמת האבטחה של Windows Server 2016 במידה ותהיה חדירה לרשת הפנימית של מישהו שהצליח אפילו לעלות על הסיסמא.
  3. האלמנט האנושי – אנשים נוטים למחזר סיסמאות, ואני לא פחות. במקרים שבהם אני מנסה להיות מקורי, אני מוצא את עצמי מבזבז זמן על שחזור סיסמאות.

הפתרון לא', פרוטוקול ה- PPTP היה פשוט – רכישת ראוטר חדש של Cisco, שמכיל בתוכו כברירת מחדל VPN עם רמת אבטחה גבוהה יותר. 450 ₪.

הפתרון לב' כבר מורכב יותר. בשלב הראשון החלטתי שאני מפעיל Two Factor Authentication על חשבון האופיס 365. סה"כ מיקרוסופט עשו עבודה לא רעה – המידע היה נגיש וההפעלה של השירות פשוטה, אבל יום לאחר מכן האאוטלוק "ננעל". אם אתם מכירים מהטלפון הנייד, לפעמים לצורכי אימות קופץ דפדפן שבו נעשה תהליך אימות ואחריו חוזרים לאפליקציה ממנה התחלנו. משום מה זה לא עבד, אפילו שמדובר באאוטלוק 2016. רק לאחר שיחת עם תומך נהדר מהצוות הישראלי של מיקרוסופט ויצירת App Password. בשלב השני, שזה עכשיו, רציתי לבדוק מספר פתרונות שיאפשרו למעשה "לנעול" האפשרות להתחבר ולעבוד על השרת ב- RDP, ולאפשר אותה רק למי שיש התקן אבטחה – כמו הכרטיס החכם. אז פתרון אבטחה עם הכרטיס החכם של נט-המשפט לא מצאתי. ממיעוט החומר על הכרטיס החכם, הגעתי למסקנה שהוא ייעודי לשוק הישראלי (או לפחות מסתירים די טוב את ה"אבא והאמא" המוכרים שלו). מכאן חיפשתי את הדבר הבא שנמצא בדמות… YubiKey שבתאכלס הם קודם כל פיתרון ייעודי לבעייה ג'.

צעצועי אבטחה חדשים

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

הוידאו הזה ידגים הכי טוב:

אני רכשתי שניים כאלה את ה- YubiKey Neo שישמש כמפתח ראשי, ואת ה- Yubiky הכחול שישמש לגיבוי.

השימוש העיקרי של ה"יוביקיז" היא אבטחת שירותים וסיסמאות וזה הדבר הראשון שעשיתי איתם. אבטחת שירותי גוגל ופייסבוק עם המפתחות האלה היתה קלה מאוד ואינטואיטיבית. גלישה לעמוד ההגדרות בגוגל ובפייסבוק, הוספת אמצעי אבטחה נוסף מסוג יוביקיז, הכנסה של היוביקי, לחיצה על הדיסקית הזהובה וזהו. בלי התקנה של תוכנות ובלי כלום. השלב הבא היה לאבטח סיסמאות לשירותים נוספים. זה כבר הפך לאתגר מסויים כי יש מספר שירותי איחסון ואבטחת סיסמאות שעובדים עם "יוביקיז". עד עכשיו לא השתמשתי באף אחד מהם. הטעות שלי היתה ללכת על LastPass כי רק אחרי רישום והתקנה התברר לי שהוא תומך ב- YubiKey Neo אבל לא ביוביקי הכחול. עד שהבנתי את זה, חשבתי שהיוביקי הכחול התקלקל 😊. אין לי משהו רע לומר על LastPass סה"כ יש להם תוכנה לא רעה שמזהה את כל הדפדפנים וידעת לשלוף מהם את הסיסמאות ולהתקין עליהם תוסף ש"מזין" בשבילך את הסיסמאות, ואפילו ממשק שמאפשר להם לשנות סיסמאות שלך באתרים אחרים. אבל זה לא עבד עם היוביקי הכחול שנרכש למטרות גיבוי (אובדן היוביקי הראשי) אז זה לא התאים לי. אחרי זה התחברתי לשירות הסיסמאות של Dashlane שבינתיים מוכיח את עצמו כמוצלח. אמנם לא "היגרתי" אליו סופית – כלומר אני משתמש בו במקביל לסיסמאות שעדיין שמורות בדפדפן, אבל פוטנציאלית, אני יכול למחוק את כל הסיסמאות מהדפדפן, להפוך את הסיסמאות שיאוחסנו ב- Dashlane לחזקות יותר וכמובן ייחודיות לכל אתר / שירות (כאלה שאני בעצמי לא אוכל לזכור לעולם), ואז להיות שקט שלא תתאפשר גישה לאף חשבון שלי באף אתר, אלא למי שיש גישה לחשבון ה- Dashlane שכמובן מאובטח באמצעות היוביקיז. ד"א אחרי תקופת ניסיון השירות בעלות של כ- 3.33 דולר לחודש.

אז ג' לכאורה בשלבי פתרון סופיים. נשארה הבעיה/שיקול ב' – איך אני מאבטח את הכניסה לשרת?

כפי שציינתי, ליוביקיז הגעתי דווקא בזכות הפרסומת שלעיל, שמציגה בדיוק את מה שאני רוצה לעשות. מקריאה – מדובר בשירות שמתמשק לשרת MFA / Microsoft Azure AD (Active Directory ) שניתן במסגרת שירותי הענן של Microsoft Azure. בזמנו נרשמתי גם לשירותי Microsoft Azure למטרות פיילוט (הממשק היה נהדר ונח, אבל המכונות הוירטואליות היו יקרות ונרשמתי בסוף ל- Virmach). כניסה וחיטוט בתפריטים הביא אותי למה שנראה לי כמו הדרך להפעיל את הפיצ'ר שבפרסומת אבל כל העניין נראה לי בוסרי וקשה מדי להגדרה וטרם התעמקתי בזה. בנוסף, השרת הפיזי שלי מנותק מכל מה שקשור לדומיין שלי ולשירותי ענן אחרים, ולא נראה לי שאני רוצה לקשר ולערבב. מכאן, שהפתרון הוא, אולי, בדמות שירות מצד שלישי. ויש כזה. חברת Duo Security נרכשה ממש לאחרונה (פורסם לפני כ- 20 שעות בעיתונות הכלכלית האמריקאית) בעסקת ענק ע"י ענקית ציוד התקשורת Cisco תמורת 2.35 מיליארד דולר. דואו מציעה שירות Multi Factor Authentication ל- Windows Server 2016, שירות שעובד עם יוביקיז, והעלות היא בין חינם ל- 9 דולר ליוזר. נראה לי שהפתרון שאני צריך הוא בעלות של 3 או 6 דולר ליוזר.

עכשיו צריך להחליט עם אני חופר ומנסה לעשות את זה לבד דרך Azure AD או הולך על הפתרון המוכן של Duo. אעדכן.

[עדכון 12/2018] – לאחר שימוש של מספר חודשים הגעתי למסקנה שהיוביקי NEO היה רכישה כדאית ביותר. הצלחתי באמצעותו לאבטח את שירותי הגוגל, אופיס365 וההתחברות לשרת שלי ב- RDP. הדבר דרש מספר הגדרות באמצעות תוכנה ייעודית שיוביקו מספקים. היוביקי הכחול לעומת זאת, היתה רכישה פחות מוצלחת. אמנם אני יכול לאבטח איתו את חשבון הגוגל והפייסבוק, אבל הוא הרבה יותר מוגבל. הסיבה לכך היא שהיוביקי NEO תומך בתקן נוסף שאינו נתמך ביוביקי הכחול (אפשר להגדיר בו שתי "סיסמאות" אחת בלחיצה קצרה ואחת בלחיצה ארוכה). לגבי שימוש ביוביקי כתחליף להזנת סיסמאות – היוביקי NEO מאפשר הקלדת רצף תווים באמצעות לחיצה מהירה על הכפתור שבו. אפשר להגדיר את התווים האלה בתור סיסמא. החיסרון הוא שאם אחד האתרים שבהם הסיסמא הזו תוגדר ייפרץ הסיסמא תיחשף ויהיה ניתן לנסות לפרץ לשירותים נוספים (למעט אם יהיה להם אימות דו-שלבי). גם אם זה יקרה זה לא קריטי כי אפשר להשתמש בתוכנה של יוביקו כדי להטמיע סיסמאות חדשות ביוביקי NEO. למרות זאת, אני מרגיש שמוקדם לי מדי להשתמש בפיצ'ר הזה, ואני אעקוב לראות אם יתגבש בקרוב סטנדרט אבטחה במסגרתו אתרים יוסיפו אימות נוסף לטוקנים (למשל מול שרת יוביקו).

מוזמנים לשאול שאלות במייל (מתנצל מראש על זמני מענה איטיים – יש לי עבודה אמיתית שאני אוהב באותה מידה כמו העיסוק בטוויקים שעליהם כתבתי למעלה).