לכל המאמרים DEVSECOPS · CONTAINERS

קונטיינר Distroless: מה הוא מצמצם ומה עדיין צריך לאבטח?

מדריך ל־Distroless: הפרדת build ו־runtime, משתמש nonroot, סריקת תלויות, image קבוע ותכנון אבחון ללא shell.

מה משתנה בתמונת הריצה

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

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

להפריד את כלי הבנייה מסביבת ההפעלה

ב־multi-stage build מתקינים ומריצים כלי בנייה בשלב נפרד, ומעתיקים לתמונת הריצה רק את מה שנדרש. לפני ההעתקה בדקו אילו קבצים מגיעים לתוצר: קוד שנבנה, תלויות ריצה וקבצים סטטיים. קובצי סודות, היסטוריה וכלי פיתוח אינם חלק אוטומטי מהמסירה.

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

להגדיר גם את תנאי ההפעלה

בחרו משתמש שאינו root כאשר היישום מאפשר זאת, תכננו מערכת קבצים לקריאה בלבד והגבילו יכולות ומשאבים בהתאם לצורך. אם יש צורך בכתיבה, הגדירו נתיב ייעודי והרשאות מתאימות. הגבלות ללא בדיקת הפעלה עלולות ליצור כשל תפעולי שקשה לזהות.

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

לתכנן אבחון לפני שמסירים shell

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

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

לשמור את ההקשחה לאורך חיי המוצר

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

  • ה־image נבדק בתנאי ריצה דומים לייצור.
  • אין בו קובצי סודות או תלויות פיתוח מיותרות.
  • יש נתיב אבחון ללא shell בייצור.
  • יש בעלים לעדכוני בסיס ולממצאי סריקה.
מהקריאה לעבודה משותפתDevOps, ענן ותשתיות

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

על הרקע המקצועי של בכור
LET’S MAKE IT REAL

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

יש רעיון, צורך או שאלה שעדיין לא הסתדרה? בואו נבין יחד מה נכון לעשות.

בואו נדבר שיחה ישירה. כיוון ברור. צעד שמתאים לכם.

התאמות נגישות

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

אפשר גם להגדיל את האתר בזום של הדפדפן. הגדרת צמצום התנועה במכשיר מכובדת תמיד.

הצהרת נגישות ויצירת קשר

פרטיות ועוגיות

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

מה נשמר במכשיר שלכם
שםמטרהסוגמשך
bechor:accessibility:v1זוכר את התאמות הנגישות שבחרתםפונקציונלי, לבקשתכםעד שתמחקו
bechor:privacy-notice:2026-10-07זוכר שסגרתם את הודעת הפרטיותחיוניעד שתמחקו

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

מדיניות הפרטיות המלאה