שיעור 04: הצפנה ומפתחות¶
מדריך עזר לתלמיד
מטרות השיעור¶
- הצפנת נתונים
- ניהול הרשאות מודרני
- פתרונות לארגונים
סקירה¶
בעלות מערכת והצפנה (System Ownership & FileVault)¶
מסמך זה מרכז את כלל המושגים, הפקודות והכלים הרלוונטיים לשיעור 4, העוסק באסימוני אבטחה (Secure Token), מנגנון ההצפנה FileVault, ומנגנוני אסימון האתחול (Bootstrap Token) בסביבות ניהול והפצה (Deployment).
מילון מושגים ומונחי ליבה¶
- Secure Token: שרשרת קריפטוגרפית (עטופה בסיסמת המשתמש) המאפשרת לחשבון המקומי במק לקבל "בעלות" קריפטוגרפית על Volume הנתונים, ולאשר משימות קריטיות כמו הפעלת FileVault או עדכוני תוכנה במחשבי Apple Silicon. המשתמש הראשון שנוצר דרך Setup Assistant מקבל אותו אוטומטית.
- FileVault: ההצפנה המובנית ב-macOS המצפינה את Volume הנתונים (Data Volume) באופן מלא באמצעות XTS-AES-128. במחשבי Apple Silicon, הנתונים מוצפנים מובנית ברמת החומרה תמיד, והפעלת FileVault למעשה "עוטפת" את המפתח הקיים בסיסמת המשתמש ללא פגיעה בביצועים.
- Volume Ownership: מנגנון במחשבי Apple Silicon שדורש הרשאות מיוחדות כדי לבצע משימות ברמת המערכת כמו מחיקת מק, שינוי הגדרות אתחול או שדרוג מערכת ההפעלה. נגזר ישירות ממשתמשים שיש להם Secure Token.
- Bootstrap Token: "מפתח מאסטר" זמני וארגוני הנדחף לשרת ה-MDM בשלב הרישום למערכת (Enrollment). האסימון נשמר ב-MDM (בתהליך Escrow) ויכול להעניק אוטומטית Secure Token למשתמשים קבועים או לחשבונות ענן (כמו Managed Apple Account - MAID) שמתחברים מאוחר יותר, מבלי להזדקק לסיסמה של המשתמש המקורי.
עושים סדר במושגי ה-Tokens וה-Certificates בארגון
במערכת macOS וסביבות הניהול של אפל קיימים מגוון אסימונים (Tokens) ותעודות (Certificates). להלן סדר במונחים הנפוצים:
- APNs Certificate / Token: מאבטח ומאמת את ערוץ התקשורת המוצפן בין ה-MDM, השרתים של אפל והמכשירים.
- Service Token: מאמת את שרת ה-MDM מול שירות Apple Business Manager (ABM).
- Content Token: מאמת את שרת ה-MDM מול ספריית האפליקציות והספרים Apps & Books (VPP).
- Secure Token: אסימון קריפטוגרפי מקומי ב-macOS המאפשר למשתמש לפתוח דיסק המוצפן ב-FileVault.
- Bootstrap Token: אסימון מוסדי המאפשר ל-MDM להעניק Secure Token למשתמשים ללא מעורבות משתמש קצה.
| מאפיין | תעודה (Certificate) | אסימון (Token) |
|---|---|---|
| מטרה | הוכחת זהות (כמו דרכון) | הענקת הרשאה זמנית למשאב (כמו כרטיס עלייה למטוס) |
| גורם מנפיק | Certificate Authority (CA) | שרת אימות / Identity Provider (IdP) |
| תוקף | ארוך טווח (חודשים / שנים) | משתנה / קצר טווח (דקות / שעות) |
| פורמט | X.509 (.crt, .cer, .pem) |
JWT, SAML, Opaque String |
| שיטת אימות | שרשרת תעודות מול CA (מפתח ציבורי) | בדיקת חתימה ותוקף מקומית |
- סביבת השחזור (Recovery) Key - Recovery Key - PRK/IRK: כאשר מדליקים את מנגנון ההצפנה FileVault, נוצר מפתח גיבוי למקרה שאבדה סיסמת ההתחברות.
- PRK - Personal Recovery Key: מפתח אלפאנומרי שמוצג למשתמש כדי לשמור בבטחה, או לחלופין, נשמר בחשבון ה-iCloud (ב-Tahoe לרוב יופעל גיבוי iCloud אוטומטית למשתמשים ביתיים).
- IRK - Institutional Recovery Key: מפתח המשמש ארגונים באמצעות MDM, כך שרק מנהלי הארגון יוכלו לשחרר כוננים נעולים באמצעות Payload מיוחד. כיום הסטנדרט הוא להשתמש ב-PRK אישי שמגובה ב-MDM.
- VEK (Volume Encryption Key) & KEK (Key Encryption Key): VEK הוא מפתח הצפנת החומרה השמור ב-Secure Enclave. KEK הוא המפתח הנגזר מסיסמת המשתמש שלך, המשמש כדי "לעטוף" את ה-VEK ולשחרר את הנעילה שלו באתחול.
- וירטואליזציה (Exclaves): ב-macOS 26 Tahoe, הצפנת FileVault נתמכת גם במכונות וירטואליות בזכות טכנולוגיית Exclave המדמה Secure Enclave.
- SSH Pre-boot: ב-macOS 26 Tahoe נוספה היכולת להתחבר מרחוק ב-SSH לשרתים נטולי-מסך בשלב ה-Pre-boot כדי לשחרר את FileVault.
היסטוריית גרסאות FileVault בקצרה:
| גרסת FileVault | שנת שחרור (מערכת) | שיטת הצפנה | מאפיינים בולטים |
|---|---|---|---|
| FileVault 1 | 2003 (Panther 10.3) | קובץ תמונת דיסק (DMG) | הצפין רק את תיקיית הבית, נחשב שברירי וקל לפריצה (כלי בשם VileFault הדגים זאת). |
| FileVault 2 | 2011 (Lion 10.7) | תוכנה דרך ה-CPU | הצפנת כלל הדיסק, יצר עומס קל ופגע במעט בביצועים. |
| מודרני | 2017+ (T2 / Apple Silicon) | חומרה (מנוע AES ו-Secure Enclave) | אפס פגיעה בביצועים, הצפנה מובנית ברמת שבב העובדת בשיטת עטיפת מפתחות. |
רשימת פקודות טרמינל (CLI) מאסיבית לניהול הצפנה ואסימונים¶
ניהול מערך ה-Secure Token וה-FileVault נעשה בעיקר על ידי פקודות sysadminctl ו-fdesetup. אלה פקודות הליבה שכל תומך או מנהל רשת ב-macOS חייב להכיר לעומק.
ניהול אסימוני אבטחה (Secure Token) באמצעות sysadminctl¶
- בדיקת סטטוס Secure Token למשתמש נוכחי:
sysadminctl -secureTokenStatus $USER
- בדיקת סטטוס למשתמש ספציפי (לדוגמה
johndoe):
sysadminctl -secureTokenStatus johndoe
-
הענקת Secure Token למשתמש אחר: (דורש משתמש אדמין שכבר יש לו Secure Token)
sysadminctl -secureTokenOn newuser -password newuserpass -adminUser adminname -adminPassword adminpass -
הסרת Secure Token ממשתמש: (זהירות - מחיקת האסימון לכלל המשתמשים עלולה לנעול את המחשב מהרשאות קריטיות!)
sysadminctl -secureTokenOff otheruser -password userpass -adminUser adminname -adminPassword adminpass
ניהול FileVault באמצעות fdesetup¶
- בדיקת סטטוס FileVault (האם פעיל או לא ומי מצפין את ה-Volume):
fdesetup status
- הפעלת FileVault דרך הטרמינל (עבור המשתמש הנוכחי):
sudo fdesetup enable
- ביטול והסרת ההצפנה (פענוח ה-Volume - Decryption):
sudo fdesetup disable
- הצגת רשימת המשתמשים המורשים לשחרר את ההצפנה בשלב הבוט:
sudo fdesetup list
- הסרת משתמש ספציפי (לדוגמה
johndoe) ממורשי שחרור הדיסק:
sudo fdesetup remove -user johndoe
- החלפת מפתח השחזור האישי (PRK) ויצירת מפתח חדש:
sudo fdesetup changerecovery -personal
- סנכרון מיידי של ה-FileVault (בדיקה אם נדרש רענון למפתחות או סיסמאות שהשתנו):
sudo fdesetup sync
- הפעלת מנגנון הצפנה עם קובץ Plist שקט (אידיאלי להפצה בתהליכי MDM - דורש הרשאות אדמין והגדרת XML):
sudo fdesetup enable -inputplist < /path/to/fdesetup.plist
אבחון קריפטוגרפי מתקדם עם diskutil ו-profiles¶
- הצגת כל המשתמשים הקריפטוגרפיים (Cryptographic Users) עבור Container הנתונים ב-APFS:
diskutil apfs listcryptousers /
- בדיקת הסטטוס של אסימון האתחול (Bootstrap Token) מול שרת ה-MDM:
sudo profiles status -type bootstraptoken
profiles: Bootstrap Token supported on server או escrowed to server, מעידה שהאסימון נשמר בהצלחה בשרת ומחכה למשוך אסימוני אבטחה עתידיים).
- דחיפה יזומה לשרת הניהול:
sudo profiles install -type bootstraptoken
אבחון תקלות ופתרונות מהירים (Cheat Codes)¶
- בעיה: "משתמש חסר בהרשאות" – יצרתם Local Account (מנהל - Admin) נוסף, אך הוא אינו יכול לאשר עדכוני מערכת הפעלה במק עם Apple Silicon, או לבטל את ההצפנה FileVault.
-
הפתרון: המשתמש חסר ב-Secure Token וכפועל יוצא מכך חסרה לו "בעלות Volume" (Volume Ownership). בדקו בעזרת
sysadminctl -secureTokenStatus. אם חסר, השתמשו בחשבון המנהל המקורי (שעבר את ה-Setup Assistant) כדי להעניק לו Secure Token בעזרת הפקודהsysadminctl -secureTokenOn. -
בעיה: עליכם לסובב (לשנות) Recovery Key שידוע שדלף בארגון.
-
הפתרון: השתמשו ב-
sudo fdesetup changerecovery -personal(למפתח אישי), או ודאו דרך מערכת ה-MDM שהרצתם פקודתEscrowמחדש כדי לאלץ יצירת PRK מחודש מול קטלוג הניהול. -
בעיה: FileVault נדלק ופועל, אך משתמש חדש שיצרנו מקומית (בסביבה שאינה מנוהלת MDM עם Bootstrap Token) לא מופיע במסך הלוגין מיד לאחר הפעלה מחדש.
-
הפתרון: רק למשתמשים עם Secure Token שמופיעים ברשימת ה-
fdesetup listיש יכולת לעבור את מנגנון ה-Preboot Authentication שרץ על החומרה עוד לפני שהמערכת עולה. התחברו עם המשתמש הראשי, הוסיפו את המשתמש בעזרתsysadminctlוודאו שנוסף לרשימה הקריפטוגרפית. -
בעיה: סיסמה שונתה מחוץ למק, וכעת נדרשת הסיסמה הישנה לפתיחת ה-FileVault.
- הפתרון: ה-KEK עדיין מוגן על ידי הסיסמה הישנה. המשתמש צריך לעדכן את הסיסמה בצורה מוסדרת דרך הגדרות המערכת (System Settings) כדי לסנכרן את המפתח ב-Secure Enclave מחדש.
קישורים מומלצים ולקריאה נוספת¶
- Use secure token, bootstrap token, and volume ownership in deployments - מאמר טכני למנהלי IT על איך מתבצע אימות הצפנה בארגון.
- Intro to FileVault for Mac - סקירת עומק טכנית של ארכיטקטורת ההצפנה במעבדי Apple Silicon.
- Manage FileVault with mobile device management - מדריך לניהול מפתחות שחזור ארגוניים ל-FileVault.
- Protect data on your Mac with FileVault - מדריך בסיסי למשתמש איך להדליק את ההצפנה ולהגן על הקבצים.
סרטון סיכום¶
המחשה ויזואלית (עזר לתלמיד)
תמונות אלו ממחישות את הממשק או המנגנון הרלוונטי לנושא השיעור.
