הקדמה (Introduction)
הייתה תקופה שבה עבודה עם Linux (לינוקס) על שולחן העבודה נחשבה קשה, מכיוון שהמערכת חסרה יישומים שולחניים וכלי תצורה מלוטשים יותר שהיו קיימים במערכות הפעלה אחרות. אחת הסיבות לכך היא שלינוקס הייתה צעירה יותר ממערכות הפעלה רבות אחרות. עם זאת, היה קל יותר להתחיל בפיתוח יישומי שורת פקודה חיוניים יותר ולהשאיר את הכלים הגרפיים המורכבים יותר להמשך. בהתחלה, מכיוון שלינוקס יועדה תחילה למשתמשים מתקדמים יותר, זה לא היה אמור להיות בעיה. אבל הימים האלה כבר עברו מזמן. כיום, סביבות שולחן העבודה של לינוקס בשלות מאוד, ולא חסר להן דבר מבחינת תכונות וקלות השימוש. עם זאת, שורת הפקודה עדיין נחשבת לכלי חזק שנעשה בו שימוש יומיומי על ידי משתמשים מתקדמים. בשיעור זה נבחן כמה מהכישורים הבסיסיים של שולחן העבודה שתזדקקו להם על מנת לבחור את הכלי הטוב ביותר למשימה הנכונה, כולל גישה לשורת הפקודה.
ממשקי משתמש בלינוקס (Linux User Interfaces)
כאשר משתמשים במערכת לינוקס, אתם מתקשרים עם שורת פקודה או עם ממשקי משתמש גרפיים. שתי הדרכים מעניקות גישה ליישומים רבים שתומכים בביצוע כמעט כל משימה במחשב. בעוד שנושא 1.2 כבר הציג סדרה של יישומים נפוצים, נתחיל את השיעור הזה במבט קרוב יותר על סביבות שולחן העבודה, דרכים לגשת למסוף (terminal) וכלים המשמשים למצגות ולניהול פרויקטים.
סביבות שולחן עבודה (Desktop Environments)
לינוקס פועלת בגישה מודולרית, כאשר חלקים שונים של המערכת מפותחים על ידי פרויקטים ומפתחים שונים, כל אחד מהם ממלא צורך או מטרה ספציפיים. בשל כך, ישנן מספר אפשרויות של סביבות שולחן עבודה לבחירה, ויחד עם מנהלי החבילות (package managers), סביבת שולחן העבודה המוגדרת כברירת מחדל היא אחת ההבדלים העיקריים בין ההפצות הרבות הקיימות. בניגוד למערכות הפעלה קנייניות כמו Windows (ווינדוס) ו-macOS (מק או.אס), שבהן המשתמשים מוגבלים לסביבת שולחן העבודה שמגיעה עם מערכת ההפעלה, יש אפשרות להתקין סביבות שונות ולבחור את זו שמתאימה לך ולצרכים שלך.
בעיקרון, ישנן שתי סביבות שולחן עבודה עיקריות בעולם לינוקס: Gnome (גנום) ו-KDE (ק.ד.א). שתיהן שלמות מאוד, עם קהילה גדולה מאחוריהן, ושואפות לאותה מטרה אך בגישות מעט שונות. בקצרה, Gnome מנסה לפעול לפי עקרון ה-KISS (“שמור על זה פשוט טיפש”), עם יישומים מלוטשים ונקיים. מצד שני, KDE מציעה גישה אחרת עם מבחר רחב יותר של יישומים ומאפשרת למשתמש לשנות כל הגדרה בסביבה.
יישומי Gnome מבוססים על ספריית GTK (ספריית GTK), שנכתבה בשפת C, בעוד שיישומי KDE משתמשים בספריית Qt (ספריית קיו.טי), שנכתבה בשפת C++. אחד ההיבטים המעשיים ביותר של כתיבת יישומים עם אותה ספריית גרפיקה הוא שהיישומים ייטו לשתף מראה ותחושה דומים, מה שתורם לתחושת האחדות של המשתמש במהלך השימוש במערכת. תכונה חשובה נוספת היא ששימוש באותה ספרייה גרפית משותפת ליישומים רבים חוסך בזיכרון ומאיץ את זמן הטעינה לאחר שהספרייה נטענה לראשונה.
גישה לשורת הפקודה (Getting to the Command Line)
אחת היישומים החשובים ביותר עבורנו היא אמולטור המסוף (terminal emulator). יישומים אלה נקראים אמולטורים מכיוון שהם מחקים בסביבה גרפית את מסופי הטלגרף הישנים, שהיו למעשה לקוחות שהיו מחוברים למכונה מרוחקת שבה התבצע החישוב בפועל. מכונות אלו היו מחשבים פשוטים ללא גרפיקה כלל, ושימשו בגרסאות הראשונות של Unix (יוניקס).
ב-Gnome, יישום כזה נקרא Gnome Terminal (מסוף גנום), בעוד שב-KDE הוא נקרא Konsole (קונסול). אך ישנן אפשרויות רבות נוספות כמו Xterm (אקסטרם). יישומים אלו מאפשרים לנו גישה לסביבת שורת הפקודה, כדי שנוכל לתקשר עם מעטפת הפקודות (shell).
לכן, חפשו בתפריט היישומים של ההפצה שלכם את יישום המסוף. למרות ההבדלים ביניהם, כל יישום יעניק לכם את מה שנחוץ כדי לצבור ביטחון בשימוש בשורת הפקודה.
דרך נוספת להיכנס למסוף היא להשתמש ב-TTY הווירטואלי. ניתן להיכנס אליהם על ידי לחיצה על Ctrl + Alt + F#. קראו ל-F# כאחד ממקשי הפונקציה מ-1 עד 7, לדוגמה. ייתכן שחלק מהשילובים הראשוניים מפעילים את מנהל המושבים או את סביבת העבודה הגרפית שלכם. השאר יציגו שורת פקודה המבקשת את שם המשתמש שלכם, כמו בדוגמה הבאה:
Ubuntu 18.10 arrelia tty3
arrelia login:
במקרה זה, arrelia הוא שם המחשב (hostname), ו-tty3 הוא המסוף הזמין לאחר השימוש בשילוב המקשים, יחד עם מקש F3, כמו ב-Ctrl + Alt + F3.
לאחר שתספקו את שם המשתמש והסיסמה שלכם, תיכנסו למסוף, אך כאן אין סביבת עבודה גרפית, ולכן לא תוכלו להשתמש בעכבר או להפעיל יישומים גרפיים ללא הפעלת סשן X או Wayland קודם לכן. אבל זה כבר מעבר להיקף השיעור הזה.
מצגות ופרויקטים (Presentations and Projects)
הכלי החשוב ביותר למצגות בלינוקס הוא LibreOffice Impress (ליברה אופיס אימפרס). זהו חלק מחבילת המשרד בקוד פתוח הנקראת LibreOffice (ליברה אופיס). חשבו על LibreOffice כתחליף בקוד פתוח ל-Microsoft Office (מיקרוסופט אופיס). ניתן אפילו לפתוח ולשמור קבצי PPT ו-PPTX, שהם הפורמטים המקוריים של Powerpoint (פאוורפוינט). למרות זאת, אני ממליץ להשתמש בפורמט ODP (אימפרס ODP) המקורי. פורמט ODP הוא חלק מ-Open Document Format (פורמט המסמכים הפתוחים), שהוא תקן בינלאומי לסוג קבצים זה. זה חשוב במיוחד אם תרצו לשמור את המסמכים שלכם נגישים למשך שנים רבות ולדאוג פחות לבעיות תאימות. מכיוון שזהו תקן פתוח, ניתן ליישם את הפורמט ללא תשלום תמלוגים או רישיונות. זה גם מאפשר לכם לנסות תוכנות מצגות אחרות שאולי תאהבו יותר ולקחת את הקבצים שלכם איתכם, מכיוון שסביר להניח שהם יהיו תואמים לתוכנות החדשות.
אבל אם אתם מעדיפים קוד על פני ממשקים גרפיים, יש כמה כלים לבחירה. Beamer (בימר) הוא מחלקת LaTeX (לטך) שיכולה ליצור מצגות שקופיות מקוד LaTeX. LaTeX עצמו הוא מערכת לסידור טקסטים המשמשת רבות בכתיבת מסמכים מדעיים באקדמיה, במיוחד בגלל היכולת להתמודד עם סמלים מתמטיים מורכבים, שאחרים מתקשים לטפל בהם. אם אתם באוניברסיטה וצריכים להתמודד עם משוואות ובעיות מתמטיות אחרות, Beamer יכול לחסוך לכם הרבה זמן.
אפשרות נוספת היא Reveal.js (ריוויל ג’יי.אס), חבילת NPM נהדרת (NPM הוא מנהל החבילות של NodeJS) שמאפשרת לכם ליצור מצגות יפות באמצעות הרשת. אם אתם יכולים לכתוב HTML ו-CSS, Reveal.js יביא את רוב ה-JavaScript הנחוץ כדי ליצור מצגות יפות ואינטראקטיביות שמתאימות לכל רזולוציה וגודל מסך.
לבסוף, אם אתם מחפשים תחליף ל-Microsoft Project (מיקרוסופט פרוג’קט), תוכלו לנסות את GanttProject (גאנט פרוג’קט) או ProjectLibre (פרוג’קט ליברה). שניהם דומים מאוד למקבילים הקנייניים שלהם ותואמים לקבצי Project.
שימושים של לינוקס בתעשייה (Industry Uses of Linux)
לינוקס משמשת רבות בתעשיות התוכנה והאינטרנט. אתרים כמו W3Techs מדווחים שכ-68% משרתי האתרים באינטרנט מופעלים על ידי Unix (יוניקס), והחלק הגדול ביותר מביניהם ידוע כלינוקס.
האימוץ הרחב הזה נובע לא רק מהטבע החופשי של לינוקס (גם כחופש וגם כחופשי מתשלום) אלא גם מהיציבות, הגמישות והביצועים שלה. מאפיינים אלו מאפשרים לספקים להציע את שירותיהם בעלות נמוכה יותר ובסקלאביליות גבוהה יותר. חלק ניכר ממערכות לינוקס בימינו פועלות בענן, בין אם במודל IaaS (תשתית כשירות), PaaS (פלטפורמה כשירות) או SaaS (תוכנה כשירות).
IaaS הוא דרך לשתף את משאבי השרת הגדול על ידי הצעת גישה למכונות וירטואליות, שהן למעשה מערכות הפעלה מרובות שפועלות כאורחות על מכונת מארח דרך תוכנה שנקראת hypervisor (הייפרוויזור). ההייפרוויזור אחראי על הפרדת וניהול המשאבים הזמינים במכונת המארח בין מערכות האורח. זה מה שנקרא וירטואליזציה. במודל IaaS, אתם משלמים רק עבור החלק של המשאבים שהמערכת שלכם משתמשת בו.
ללינוקס יש שלושה הייפרוויזורים בקוד פתוח ידועים: Xen (זן), KVM ו-VirtualBox (וירטואל בוקס). Xen הוא כנראה הוותיק מביניהם. KVM הפך ליותר בולט כייפרוויזור של לינוקס, עם תמיכה מטעם RedHat (רד האט) והוא משמש בשירותי ענן ציבוריים ופרטיים כאחד. VirtualBox שייך ל-Oracle (אורקל) מאז רכישת Sun Microsystems (סאן מיקרוסיסטמס) ומשמש לרוב משתמשים קצה בגלל קלות השימוש והניהול שלו.
PaaS ו-SaaS, לעומת זאת, בונים על מודל IaaS, גם מבחינה טכנית וגם רעיונית. ב-PaaS במקום מכונה וירטואלית, המשתמשים מקבלים גישה לפלטפורמה שבה ניתן לפרוס ולהריץ את היישומים שלהם. המטרה כאן היא להקל על המשתמשים מהתעסקות עם משימות ניהול מערכת ועדכוני מערכת הפעלה. Heroku (הרוקו) הוא דוגמה נפוצה ל-PaaS, שבו קוד תוכנה יכול לרוץ ללא צורך לדאוג למכולות או למכונות וירטואליות.
לבסוף, SaaS הוא מודל שבו לרוב משלמים על מנוי על מנת להשתמש בתוכנה ללא צורך לדאוג לדבר נוסף. Dropbox (דרופבוקס) ו-Salesforce (סיילספורס) הם שתי דוגמאות טובות ל-SaaS. רוב השירותים הללו נגישים דרך דפדפן אינטרנט.
פרויקט כמו OpenStack (אופן סטאק) הוא אוסף של תוכנות בקוד פתוח שיכולות להשתמש בהייפרוויזורים שונים ובכלים נוספים כדי להציע סביבה עננית שלמה במודל IaaS על תשתית מקומית, על ידי מינוף הכוח של אשכול מחשבים במרכז הנתונים שלכם. עם זאת, הקמת תשתית כזו אינה משימה פשוטה.
בעיות פרטיות בשימוש באינטרנט (Privacy Issues when using the Internet)
דפדפן האינטרנט הוא תוכנה בסיסית על כל שולחן עבודה בימינו, אך ישנם אנשים שעדיין חסרים את הידע להשתמש בו בצורה מאובטחת. בעוד שיותר ויותר שירותים נגישים דרך דפדפן האינטרנט, כמעט כל הפעולות שמתבצעות דרך דפדפן נעקבות ומנותחות על ידי גורמים שונים. אבטחת הגישה לשירותי אינטרנט ומניעת מעקב היא היבט חשוב בשימוש באינטרנט בצורה בטוחה.
מעקב בעזרת קבצי Cookie (Cookie Tracking)
נניח שגלשתם באתר מסחר אלקטרוני, בחרתם מוצר שרציתם ושמתם אותו בעגלת הקניות. אך ברגע האחרון החלטתם לחשוב שוב ולהמתין מעט לפני שתקבלו החלטה סופית. לאחר זמן מה, אתם מתחילים לראות פרסומות של אותו מוצר עוקבות אחריכם ברחבי האינטרנט. כשאתם לוחצים על הפרסומות, אתם נשלחים מיד לעמוד המוצר באותו אתר שוב. לא נדיר שהמוצרים ששמתם בעגלת הקניות עדיין שם, מחכים שתבדקו אותם. האם אי פעם תהיתם איך זה קורה? איך הם מראים לכם את הפרסומת הנכונה בעמוד אחר? התשובה לשאלות אלה נקראת מעקב באמצעות קבצי Cookie (קוקי).
Cookies הם קבצים קטנים שאתר יכול לשמור במחשב שלכם כדי לאחסן ולשלוף מידע שיכול להיות שימושי לניווט שלכם. הם בשימוש כבר שנים רבות ואחת השיטות הוותיקות ביותר לאחסון נתונים בצד הלקוח. דוגמה טובה לשימוש בהם היא מזהי עגלת קניות ייחודיים. כך, אם תחזרו לאתר מסוים אחרי כמה ימים, האתר יזכור את המוצרים ששמתם בעגלה במהלך הביקור הקודם ויחסוך לכם זמן בחיפוש חוזר אחריהם.
בדרך כלל זה בסדר, כי האתר מציע לכם תכונה שימושית ולא משתף מידע עם צדדים שלישיים. אבל מה לגבי הפרסומות שמוצגות לכם בזמן שאתם גולשים באתרים אחרים? כאן נכנסות לתמונה רשתות פרסום (ad networks). רשתות פרסום הן חברות שמציעות פרסומות לאתרי מסחר אלקטרוני כמו זה בדוגמה שלנו מצד אחד, ומוניטיזציה (הפקת רווחים) לאתרים מצד שני. יוצרים של תוכן כמו בלוגרים, למשל, יכולים לפנות מקום עבור אותן רשתות פרסום בבלוג שלהם, בתמורה לעמלה שנקבעת לפי המכירות שנוצרו בעקבות הפרסומת.
איך הם יודעים איזה מוצר להציג לכם? הם בדרך כלל עושים זאת על ידי שמירת Cookie גם מרשת הפרסום ברגע שבו ביקרתם או חיפשתם מוצר מסוים באתר המסחר האלקטרוני. כך, הרשת מסוגלת לשלוף את המידע על ה-Cookie בכל פעם שהיא מציגה פרסומות, ולבצע את הקישור למוצרים שגיליתם בהם עניין. זו אחת השיטות הנפוצות ביותר למעקב אחר אנשים באינטרנט. הדוגמה שנתנו למעלה מתארת שימוש באתר מסחר אלקטרוני כדי להפוך את הדברים למוחשיים יותר, אך פלטפורמות המדיה החברתית עושות את אותו הדבר עם כפתורי “לייק” או “שיתוף” וכניסות באמצעות הרשת החברתית.
דרך אחת להימנע מכך היא לא לאפשר לאתרים של צד שלישי לשמור Cookies בדפדפן שלכם. כך, רק האתר שבו אתם מבקרים יוכל לשמור Cookies משלו. אך שימו לב שתכונות “לגיטימיות” מסוימות עשויות לא לפעול כראוי אם תעשו זאת, מכיוון שאתרים רבים היום מסתמכים על שירותי צד שלישי כדי לפעול. לכן, תוכלו לחפש מנהל Cookies במאגר התוספים של הדפדפן שלכם כדי לקבל שליטה מדויקת יותר על אילו Cookies נשמרים במחשב שלכם.
Do Not Track (אל תעקוב) (DNT)
תפיסה שגויה נפוצה נוספת קשורה להגדרה מסוימת בדפדפן שמוכרת יותר בשם DNT. זהו ראשי תיבות של “Do Not Track” (אל תעקוב) וניתן להפעיל את האפשרות הזו כמעט בכל דפדפן קיים. בדומה למצב גלישה פרטי, לא קשה למצוא אנשים המאמינים שלא יעקבו אחריהם אם אפשרות זו פעילה. למרבה הצער, זה לא תמיד נכון. נכון להיום, DNT הוא רק דרך לומר לאתרים שבהם אתם מבקרים שאתם לא רוצים שיעקבו אחריכם. אבל למעשה, האתרים הם אלה שיחליטו אם לכבד את הבחירה שלכם או לא. במילים אחרות, DNT הוא דרך לבקש לצאת ממעקב באתרי אינטרנט, אך אין ערובה לכך שהבקשה תכובד.
טכנית, הדבר נעשה על ידי שליחת דגל נוסף בכותרת של פרוטוקול הבקשה HTTP (בקשה מסוג DNT: 1) בעת בקשת נתונים משרת אינטרנט. אם תרצו לדעת יותר על הנושא, האתר https://allaboutdnt.com הוא נקודת התחלה טובה.
חלונות “פרטיים” (“Private” Windows)
ייתכן ששמתם לב למרכאות בכותרת למעלה. זאת משום שחלונות אלה אינם פרטיים כמו שרוב האנשים חושבים. השמות עשויים להשתנות, אך הם יכולים להיקרא “מצב פרטי”, “incognito” (גלישה בסתר) או “חלונית אנונימית”, בהתאם לדפדפן שבו אתם משתמשים.
ב-Firefox (פיירפוקס), ניתן להשתמש במצב זה בקלות על ידי לחיצה על המקשים Ctrl + Shift + P. ב-Chrome (כרום), פשוט לחצו על Ctrl + Shift + N. מה שזה למעשה עושה הוא לפתוח מושב חדש, שלרוב אינו משתף שום הגדרות או נתונים מפרופיל המשתמש הרגיל שלכם. כשאתם סוגרים את החלון הפרטי, הדפדפן מוחק אוטומטית את כל הנתונים שנוצרו במושב הזה, ולא משאיר עקבות במחשב שבו השתמשתם. משמעות הדבר היא ששום מידע אישי, כמו היסטוריית גלישה, סיסמאות או Cookies (קוקיז), לא נשמר במחשב הזה.
רבים טועים ומאמינים שהם יכולים לגלוש באינטרנט בצורה אנונימית, דבר שאינו נכון לחלוטין. דבר אחד שמצב פרטי או מצב גלישה בסתר עושה הוא למנוע מה שנקרא מעקב באמצעות Cookies (מעקב בעזרת קבצי קוקיז). כשאתם מבקרים באתר, האתר יכול לשמור במחשב שלכם קובץ קטן שיכול להכיל מזהה שישמש לעקוב אחריכם. אלא אם כן הגדרתם את הדפדפן שלכם שלא לקבל Cookies מצד שלישי, רשתות פרסום או חברות אחרות יכולות לשמור ולשלוף את המזהה ולעקוב אחרי הגלישה שלכם באתרים שונים. אבל מכיוון שה-Cookies שנשמרות במושב גלישה פרטי נמחקות ברגע שאתם סוגרים את המושב, המידע הזה אובד לנצח.
מעבר לכך, אתרים וגורמים אחרים באינטרנט יכולים עדיין להשתמש בשיטות רבות נוספות כדי לעקוב אחריכם. לכן, מצב גלישה פרטי מספק רמה מסוימת של אנונימיות, אך הוא פרטי לחלוטין רק במחשב שבו אתם משתמשים. אם אתם ניגשים לחשבון הדוא”ל שלכם או לאתר בנקאות ממחשב ציבורי, כמו בשדה תעופה או במלון, בהחלט כדאי להשתמש במצב גלישה פרטי בדפדפן שלכם. במצבים אחרים, ייתכנו יתרונות, אבל חשוב לדעת בדיוק אילו סיכונים נמנעים ואילו לא מושפעים. בכל פעם שאתם משתמשים במחשב ציבורי, היו מודעים לאיומי אבטחה אחרים כמו תוכנות זדוניות או מקליטים של הקשות מקלדת (key loggers). היזהרו כשאתם מזינים מידע אישי, כולל שמות משתמשים וסיסמאות, במחשבים כאלה או כשאתם מורידים או מעתיקים נתונים חסויים.
בחירת סיסמה נכונה (Choosing the Right Password)
אחת הסיטואציות הקשות ביותר שכל משתמש מתמודד איתן היא בחירת סיסמה מאובטחת לשירותים שבהם הוא משתמש. ודאי שמעתם בעבר שלא כדאי להשתמש בשילובים נפוצים כמו “qwerty”, “123456” או “654321”, וגם לא במספרים שקל לנחש, כמו תאריך הלידה שלכם או של קרוב משפחה, או מיקוד. הסיבה לכך היא שאלו שילובים ברורים מאוד, והם יהיו הניסיונות הראשונים של פורץ לנסות ולהשיג גישה לחשבון שלכם.
ישנן טכניקות ידועות ליצירת סיסמה בטוחה. אחת המפורסמות היא להמציא משפט שמזכיר לכם את השירות, ולבחור את האות הראשונה מכל מילה. נניח שאני רוצה ליצור סיסמה טובה עבור Facebook (פייסבוק), לדוגמה. במקרה זה, אוכל להמציא משפט כמו “I would be happy if I had a 1000 friends like Mike” (הייתי מאושר אם היו לי 1000 חברים כמו מייק). אני בוחר את האות הראשונה מכל מילה, והסיסמה הסופית תהיה: IwbhiIha1000flM. זה יוביל לסיסמה באורך 15 תווים, שהיא ארוכה מספיק כדי להיות קשה לניחוש, אך קלה לזכור (כל עוד אני זוכר את המשפט וה”אלגוריתם” להפקת הסיסמה).
משפטים בדרך כלל קלים יותר לזכור מאשר סיסמאות, אבל גם לשיטה הזו יש מגבלות. כיום, אנחנו צריכים ליצור סיסמאות לכל כך הרבה שירותים, וכשאנחנו משתמשים בהם בתדירות שונה, זה הופך לקשה מאוד לזכור את כל המשפטים כשנזדקק להם. אז מה אפשר לעשות? ייתכן שתחשבו שהדבר החכם ביותר לעשות במקרה כזה הוא ליצור כמה סיסמאות טובות ולהשתמש בהן בשירותים דומים, נכון?
למרבה הצער, זו גם לא רעיון טוב. ייתכן שגם שמעתם שלא כדאי להשתמש באותה סיסמה בשירותים שונים. הבעיה עם זה היא ששירות מסוים עלול לחשוף את הסיסמה שלכם (כן, זה קורה כל הזמן), וכל מי שיקבל גישה אליה ינסה להשתמש באותה שילוב של דוא”ל וסיסמה בשירותים פופולריים אחרים באינטרנט, בתקווה שעשיתם בדיוק את זה: מחזרתם סיסמאות. ואם הם צודקים, תמצאו את עצמכם בבעיה לא רק בשירות אחד, אלא בכמה מהם. ותאמינו לי, נוטים לחשוב שזה לא יקרה לנו, עד שכבר מאוחר מדי.
אז מה אפשר לעשות כדי להגן על עצמנו? אחת הגישות המאובטחות ביותר הזמינות כיום היא להשתמש במה שנקרא מנהל סיסמאות (password manager). מנהלי סיסמאות הם תוכנה ששומרת למעשה את כל הסיסמאות ושמות המשתמש שלכם בפורמט מוצפן, שניתן לפענח על ידי סיסמת מאסטר אחת. כך תצטרכו לזכור רק סיסמה טובה אחת, מכיוון שמנהל הסיסמאות ישמור את כל האחרות בשבילכם.
KeePass (קיפאס) הוא אחד ממנהלי הסיסמאות הפתוחים והעשירים בתכונות המפורסמים ביותר. הוא ישמור את הסיסמאות שלכם בקובץ מוצפן במערכת הקבצים שלכם. העובדה שהוא קוד פתוח חשובה במיוחד עבור תוכנה מסוג זה, שכן היא מבטיחה שלא יעשו שימוש במידע שלכם, כי כל מפתח יכול לבדוק את הקוד ולדעת בדיוק איך הוא עובד. זה מביא רמה של שקיפות שלא ניתן להשיג עם קוד קנייני. ל-KeePass יש גרסאות לרוב מערכות ההפעלה, כולל Windows (ווינדוס), Linux (לינוקס) ו-macOS (מק או.אס); וכן למכשירים ניידים כמו iOS (איי.או.אס) ו-Android (אנדרואיד). הוא גם כולל מערכת תוספים שמסוגלת להרחיב את הפונקציונליות שלו הרבה מעבר לברירת המחדל.
Bitwarden (ביטוורדן) הוא פתרון נוסף בקוד פתוח שמתנהל בצורה דומה, אך במקום לשמור את הנתונים בקובץ, הוא משתמש בשרת ענן. כך קל יותר לשמור על סנכרון של כל המכשירים שלכם ולגשת לסיסמאות בקלות דרך הרשת. Bitwarden הוא אחד הפרויקטים הבודדים שמציעים לא רק את הלקוח, אלא גם את שרת הענן, כקוד פתוח. זה אומר שתוכלו לארח את הגרסה האישית שלכם של Bitwarden ולהציע אותה לכל אחד, כמו למשפחתכם או לעובדי החברה שלכם. זה ייתן לכם גמישות וגם שליטה מלאה על האופן שבו הסיסמאות מאוחסנות ומשומשות.
אחד הדברים החשובים ביותר לזכור בעת שימוש במנהל סיסמאות הוא ליצור סיסמה אקראית לכל שירות שונה, מכיוון שלא תצטרכו לזכור אותן בכל מקרה. זה יהיה חסר תועלת אם תשתמשו במנהל סיסמאות כדי לאחסן סיסמאות ממוחזרות או קלות לניחוש. לכן, רובם יציעו לכם מחולל סיסמאות אקראי שבו תוכלו להשתמש כדי ליצור סיסמאות עבורכם.
הצפנה (Encryption)
בכל פעם שמידע מועבר או מאוחסן, יש לנקוט אמצעי זהירות כדי להבטיח שגורמים שלישיים לא יוכלו לגשת למידע. מידע שמועבר דרך האינטרנט עובר דרך סדרת נתבים ורשתות, שבהן ייתכן שגורמים שלישיים יוכלו לגשת לתעבורת הרשת. באופן דומה, מידע שמאוחסן במדיה פיזית יכול להיקרא על ידי כל מי שבא במגע עם המדיה הזו. כדי למנוע גישה כזו, מידע סודי צריך להיות מוצפן לפני שהוא עוזב את המכשיר הממוחשב.
TLS (אבטחת שכבת התעבורה) (Transport Layer Security)
TLS הוא פרוטוקול שמציע אבטחה על חיבורי רשת על ידי שימוש בקריפטוגרפיה (הצפנה). TLS הוא היורש של SSL (Secure Sockets Layer) (שכבת שקעי האבטחה), אשר הוצאה משימוש בשל פגמים חמורים. TLS גם עבר מספר עדכונים כדי להסתגל ולהפוך למאובטח יותר, והגרסה הנוכחית שלו היא 1.3. הוא יכול לספק הן פרטיות והן אימות על ידי שימוש במה שנקרא קריפטוגרפיה סימטרית וקריפטוגרפיית מפתח ציבורי (symmetric and public-key cryptography). במילים אחרות, כשהוא בשימוש, ניתן להיות בטוחים שאף אחד לא יוכל לצותת או לשנות את התקשורת שלכם עם השרת במהלך אותו מושב.
השיעור החשוב ביותר כאן הוא זיהוי אתר אינטרנט מהימן. עליכם לחפש את סמל “המנעול” בשורת הכתובת של הדפדפן. אם תרצו, תוכלו ללחוץ עליו כדי לבדוק את האישור (certificate), שמשחק תפקיד חשוב בפרוטוקול HTTPS.
TLS הוא מה שמשמש בפרוטוקול HTTPS (HTTP מעל TLS) כדי לאפשר שליחת מידע רגיש (כמו מספר כרטיס האשראי שלכם) דרך האינטרנט. הסבר על אופן פעולתו של TLS הוא מעבר להיקף המאמר הזה, אבל תוכלו למצוא מידע נוסף בוויקיפדיה ובוויקי של Mozilla (מוזילה).
הצפנת קבצים ודוא”ל באמצעות GnuPG (GNU Privacy Guard)
ישנם כלים רבים לאבטחת דוא”ל, אבל אחד החשובים שבהם הוא GnuPG. GnuPG מייצג את GNU Privacy Guard (שומר הפרטיות של GNU), והוא מימוש בקוד פתוח של OpenPGP, שהוא תקן בינלאומי המקודד ב-RFC 4880.
ניתן להשתמש ב-GnuPG כדי לחתום, להצפין ולפענח טקסטים, דוא”לים, קבצים, ספריות ואפילו מחיצות שלמות בדיסק. הוא פועל עם קריפטוגרפיית מפתח ציבורי (public-key cryptography) וזמין באופן רחב. בקצרה, GnuPG יוצר זוג קבצים המכילים את המפתחות הציבוריים והפרטיים שלכם. כפי ששמם מרמז, המפתח הציבורי יכול להיות זמין לכל אחד, והמפתח הפרטי צריך להישמר בסוד. אנשים ישתמשו במפתח הציבורי שלכם כדי להצפין מידע שרק המפתח הפרטי שלכם יוכל לפענח.
תוכלו גם להשתמש במפתח הפרטי שלכם כדי לחתום על כל קובץ או דוא”ל, שניתן יהיה לאמת מול המפתח הציבורי המתאים. חתימה דיגיטלית זו פועלת בדומה לחתימה בעולם האמיתי. כל עוד אתם היחידים שמחזיקים במפתח הפרטי שלכם, המקבל יכול להיות בטוח שזה אתם שכתבתם את המידע. על ידי שימוש בפונקציית הגיבוב הקריפטוגרפי (cryptographic hash function), GnuPG גם יבטיח שלא נעשו שינויים לאחר החתימה, מכיוון שכל שינוי בתוכן יבטל את החתימה.
GnuPG הוא כלי חזק מאוד, ובמידה מסוימת, גם מורכב. תוכלו למצוא מידע נוסף באתר הרשמי שלו ובוויקי של Archlinux (ארצ’לינוקס), שהוא מקור מידע מצוין גם אם אינכם משתמשים בארצ’לינוקס.
הצפנת דיסק (Disk Encryption)
דרך טובה לאבטח את הנתונים שלכם היא להצפין את כל הדיסק או המחיצה שלכם. ישנם תוכנות רבות בקוד פתוח שניתן להשתמש בהן למטרה זו. האופן שבו הן פועלות ורמת ההצפנה שהן מציעות משתנה באופן משמעותי. קיימות שתי שיטות עיקריות: הצפנה בשכבות (stacked) והצפנת התקני בלוק (block device encryption).
פתרונות הצפנת מערכת קבצים בשכבות מיושמים מעל מערכת הקבצים הקיימת. בשיטה זו, הקבצים והתיקיות מוצפנים לפני שהם נשמרים במערכת הקבצים ומפוענחים לאחר קריאתם. המשמעות היא שהקבצים נשמרים במערכת הקבצים המארחת בצורה מוצפנת (כך שהתוכן שלהם, ולעיתים גם שמות הקבצים/תיקיות, מוחלפים בנתונים שנראים אקראיים), אך מעבר לכך, הם עדיין קיימים במערכת הקבצים כאילו ללא הצפנה, כקבצים רגילים, קישורים סמליים (symlinks), קישורים קשיחים (hardlinks), וכו’.
מצד שני, הצפנת התקני בלוק מתבצעת מתחת לשכבת מערכת הקבצים, ומבטיחה שכל מה שנכתב להתקן הבלוק מוצפן. אם תסתכלו על התקן הבלוק כשהוא במצב לא מקוון, הוא ייראה כמו מקטע גדול של נתונים אקראיים ולא תוכלו אפילו לדעת איזו סוג מערכת קבצים קיימת שם מבלי לפענח אותה תחילה. המשמעות היא שלא תוכלו לדעת מהו קובץ או תיקיה, מה גודלם ואיזה סוג נתונים זה, כי גם המטא-נתונים, מבנה התיקיות והרשאות הגישה מוצפנים.
לכל שיטה יש יתרונות וחסרונות. מבין כל האפשרויות הקיימות, כדאי לבדוק את dm-crypt, שהוא הסטנדרט בפועל להצפנת בלוקים במערכות לינוקס, מכיוון שהוא מובנה בגרעין (kernel). ניתן להשתמש בו יחד עם הרחבת LUKS (Linux Unified Key Setup), שהיא מפרט המיישם סטנדרט פלטפורמה בלתי תלויה לשימוש עם כלים שונים.
אם אתם מעוניינים לנסות שיטה בשכבות, כדאי לבדוק את EncFS, שהיא כנראה הדרך הקלה ביותר לאבטח נתונים בלינוקס מכיוון שהיא אינה דורשת הרשאות root (הרשאות מנהל) ליישום, והיא יכולה לעבוד על מערכת קבצים קיימת ללא שינויים.
לבסוף, אם אתם צריכים לגשת לנתונים בפלטפורמות שונות, כדאי לבדוק את Veracrypt, היורש של Truecrypt. Veracrypt מאפשר יצירת מדיה וקבצים מוצפנים, שניתן להשתמש בהם בלינוקס, macOS וגם Windows.
תרגילים מודרכים (Guided Exercises)
-
עליכם להשתמש ב”חלון פרטי” (private window) בדפדפן שלכם אם אתם רוצים:
- לגלוש באינטרנט באופן אנונימי לחלוטין
- לא להשאיר עקבות במחשב שבו אתם משתמשים
- להפעיל TLS כדי למנוע מעקב באמצעות Cookies
- להשתמש ב-DNT
- להשתמש בהצפנה במהלך העברת נתונים
-
מהו OpenStack?
- פרויקט שמאפשר יצירת IaaS פרטי
- פרויקט שמאפשר יצירת PaaS פרטי
- פרויקט שמאפשר יצירת SaaS פרטי
- הייפרוויזור
- מנהל סיסמאות בקוד פתוח
-
אילו מהאפשרויות הבאות הן תוכנות הצפנת דיסק תקפות?
- RevealJS, EncFS ו-dm-crypt
- dm-crypt ו-KeePass
- EncFS ו-Bitwarden
- EncFS ו-dm-crypt
- TLS ו-dm-crypt
-
בחרו אמת או שקר לגבי הצפנת התקנים באמצעות dm-crypt:
- הקבצים מוצפנים לפני שנכתבים לדיסק
- כל מערכת הקבצים היא בלוב מוצפן
- רק קבצים ותיקיות מוצפנים, לא symlinks
- אינו דורש גישת root
- הצפנת התקני בלוק
-
Beamer הוא:
- מנגנון הצפנה
- הייפרוויזור
- תוכנת וירטואליזציה
- רכיב של OpenStack
- כלי מצגות ב-LaTeX
תרגילים חקרניים (Explorational Exercises)
- רוב ההפצות מגיעות עם Firefox מותקן כברירת מחדל (אם אצלכם לא, יהיה עליכם להתקין אותו קודם). נתקין את התוסף Lightbeam עבור Firefox. תוכלו לעשות זאת על ידי לחיצה על Ctrl + Shift + A וחיפוש “Lightbeam” בשדה החיפוש שייפתח בלשונית, או על ידי ביקור בעמוד התוסף ב-Firefox ולחיצה על כפתור “Install” בעמוד זה: https://addons.mozilla.org/en-GB/firefox/addon/lightbeam-3-0. לאחר מכן, התחילו את התוסף על ידי לחיצה על הסמל שלו והתחילו לבקר בכמה דפי אינטרנט בכרטיסיות אחרות כדי לראות מה קורה.
- מהו הדבר החשוב ביותר בשימוש במנהל סיסמאות?
- השתמשו בדפדפן שלכם כדי לנווט לאתר https://haveibeenpwned.com. גלו את מטרת האתר ובדקו אם כתובת הדוא”ל שלכם נכללה בהדלפות נתונים כלשהן.
סיכום (Summary)
המסוף (terminal) הוא דרך עוצמתית לתקשר עם המערכת וישנם כלים שימושיים ובוגרים רבים לשימוש בסביבה כזו. ניתן לגשת למסוף על ידי חיפוש מסוף גרפי בתפריט סביבת שולחן העבודה או לחיצה על Ctrl + Alt + F#.
לינוקס נמצאת בשימוש נרחב בתעשיית הטכנולוגיה כדי להציע שירותי IaaS, PaaS ו-SaaS. ישנם שלושה הייפרוויזורים עיקריים המשחקים תפקיד חשוב בתמיכה בשירותים אלה: Xen, KVM ו-Virtualbox.
הדפדפן הוא תוכנה חיונית במחשוב כיום, אך חשוב להבין מספר דברים כדי להשתמש בו בצורה בטוחה. DNT הוא רק דרך להגיד לאתר שאינכם רוצים שיעקבו אחריכם, אך אין ערובה לכך. חלונות פרטיים הם פרטיים רק למחשב שבו אתם משתמשים, אך הם יכולים לעזור להימנע ממעקב באמצעות Cookies בדיוק בשל כך. TLS מסוגל להצפין את התקשורת שלכם באינטרנט, אך עליכם לדעת לזהות מתי הוא בשימוש.
שימוש בסיסמאות חזקות הוא גם חשוב כדי לשמור על ביטחונכם, ולכן הרעיון הטוב ביותר הוא להפקיד את האחריות הזו בידי מנהל סיסמאות ולאפשר לתוכנה ליצור סיסמאות אקראיות עבור כל אתר שבו אתם מתחברים.
דרך נוספת לאבטח את התקשורת שלכם היא לחתום ולהצפין את הקבצים, התיקיות והדוא”לים שלכם באמצעות GnuPG. dm-crypt ו-EncFS הם שתי חלופות להצפנת דיסקים שלמים או מחיצות, שמשתמשות בשיטות הצפנה של בלוק ושכבות בהתאמה.
לבסוף, LibreOffice Impress הוא תחליף בקוד פתוח מלא ל-Microsoft Powerpoint, אך אם אתם מעדיפים ליצור מצגות באמצעות קוד ולא ממשקים גרפיים, Beamer ו-RevealJS הם אפשרויות מצוינות. ProjectLibre ו-GanttProject יכולים להיות הבחירה הנכונה אם אתם צריכים תחליף ל-Microsoft Project.
תשובות לתרגילים מודרכים (Answers to Guided Exercises)
-
עליכם להשתמש ב”חלון פרטי” (private window) בדפדפן שלכם אם אתם רוצים:
- לגלוש באינטרנט באופן אנונימי לחלוטין
- לא להשאיר עקבות במחשב שבו אתם משתמשים
- להפעיל TLS כדי למנוע מעקב באמצעות Cookies
- להשתמש ב-DNT
- להשתמש בהצפנה במהלך העברת נתונים
-
מהו OpenStack?
- פרויקט שמאפשר יצירת IaaS פרטי
- פרויקט שמאפשר יצירת PaaS פרטי
- פרויקט שמאפשר יצירת SaaS פרטי
- הייפרוויזור
- מנהל סיסמאות בקוד פתוח
-
אילו מהאפשרויות הבאות הן תוכנות הצפנת דיסק תקפות?
- RevealJS, EncFS ו-dm-crypt
- dm-crypt ו-KeePass
- EncFS ו-Bitwarden
- EncFS ו-dm-crypt
- TLS ו-dm-crypt
-
בחרו אמת או שקר לגבי הצפנת התקנים באמצעות dm-crypt:
- הקבצים מוצפנים לפני שנכתבים לדיסק — אמת
- כל מערכת הקבצים היא בלוב מוצפן — אמת
- רק קבצים ותיקיות מוצפנים, לא symlinks — שקר
- אינו דורש גישת root — שקר
- הצפנת התקני בלוק — אמת
-
Beamer הוא:
- מנגנון הצפנה
- הייפרוויזור
- תוכנת וירטואליזציה
- רכיב של OpenStack
- כלי מצגות ב-LaTeX
תשובות לתרגילים חקרניים (Answers to Explorational Exercises)
-
רוב ההפצות מגיעות עם Firefox (פיירפוקס) מותקן כברירת מחדל (אם אצלכם לא, יהיה עליכם להתקין אותו קודם). נתקין את התוסף Lightbeam עבור Firefox. תוכלו לעשות זאת על ידי לחיצה על Ctrl + Shift + A וחיפוש “Lightbeam” בשדה החיפוש שייפתח בלשונית, או על ידי ביקור בעמוד התוסף ב-Firefox ולחיצה על כפתור “Install” בעמוד זה: https://addons.mozilla.org/en-US/firefox/addon/lightbeam. לאחר מכן, התחילו את התוסף על ידי לחיצה על הסמל שלו והתחילו לבקר בכמה דפי אינטרנט בכרטיסיות אחרות כדי לראות מה קורה.
זוכרים את קבצי ה-Cookies שאמרנו שיכולים לשתף את הנתונים שלכם עם שירותים שונים כשאתם מבקרים באתר? זה בדיוק מה שהתוסף הזה יציג בפניכם. Lightbeam הוא ניסוי של Mozilla (מוזילה) שמנסה לחשוף את האתרים מהצד הראשון והשלישי שאתם מקיימים איתם אינטראקציה בעת ביקור ב-URL אחד. התוכן הזה בדרך כלל אינו גלוי למשתמש הממוצע, והוא יכול להראות שלעיתים אתר אחד יכול לקיים אינטראקציה עם תריסר או יותר שירותים אחרים. -
מה הדבר החשוב ביותר בשימוש במנהל סיסמאות?
כאשר משתמשים במנהל סיסמאות, הדבר החשוב ביותר שיש לזכור הוא לשנן את סיסמת המאסטר שלכם ולהשתמש בסיסמה אקראית וייחודית עבור כל שירות. -
השתמשו בדפדפן שלכם כדי לנווט לאתר https://haveibeenpwned.com. גלו את מטרת האתר ובדקו אם כתובת הדוא”ל שלכם נכללה בהדלפות נתונים.
האתר מתחזק מסד נתונים של פרטי כניסה שסיסמאותיהם נחשפו כתוצאה מהדלפות סיסמאות. הוא מאפשר חיפוש של כתובת דוא”ל ומציג אם כתובת זו נכללה במסד נתונים ציבורי של אישורי כניסה גנובים. סביר להניח שכתובת הדוא”ל שלכם תושפע מאחת ההדלפות. אם זה המצב, ודאו שהחלפתם את הסיסמאות שלכם לאחרונה. אם עדיין אינכם משתמשים במנהל סיסמאות, בדקו את המנהלים המומלצים בשיעור זה.
