איך להריץ OpenClaw בבטחה על VPS
הדרכה להגנה על OpenClaw מפני פרצות קריטיות כמו CVE-2026-32922. למד כיצד להשתמש ב-unprivileged user, firewall ו-systemd כדי לאבטח את הסוכן.
מה זה OpenClaw, ולמה יש להגן עליו (harden) תחילה
OpenClaw הוא סוכן AI המאוחזר באופן עצמאי (self-hosted). אתה מריץ אותו על השרת שלך, מחבר אותו למודל שפה גדול, והוא יכול להריץ פקודות shell, לשלוט בדפדפן, לקרוא ולכתוב קבצים שלך, ולפעול על פי ההודעות שאתה שולח לו מאפליקציות צ'אט. הטווח הרחב הזה הוא המטרה של הכלי, והוא גם מקור הסיכון כולו. סוכן שיכול להריץ כל פקודה בטוח רק بقدر שהמכונה עליה הוא רצה והמגבלות שתשים סביבו.
שתי עובדות קובעות את הטון למדריך זה. ראשית, OpenClaw תוכנן כך שאתה תבצע לו hardening. מודל האבטחה שלו מטיל את האחריות על הגדרת מדיניות כלים קשיחה, sandboxing והרשאות זהירות על המפעיל, ולא על הגדרת ברירת מחדל בטוחה. שנית, לפרויקט כבר היו אירועי אבטחה חמורים: במרץ 2026, נחשפו תשעה פרצות אבטחה בתוך ארבעה ימים, כולל פרצת Privilege-escalation קריטית, CVE-2026-32922, עם דירוג של 9.9 מתוך 10. אף אחת מהעובדות הללו אינה אומרת שעליך להימנע מ-OpenClaw. המשמעות היא שאל תריץ אותו בדרך עצלנית, והמדריך הזה הוא הדרך הזהירה.
יש גם חדשות טובות. OpenClaw כבר מבצע בחירה בטוחה אחת עבורך: ה-gateway שלו, התהליך היחיד ששולט בהכל, מאזין לכתובת ה-loopback כברירת מחדל, כך שהוא אינו נגיש מהאינטרנט אלא אם תתאמץ לחשוף אותו. רוב העבודה להלן היא לשמור על המצב הזה ולהגביל את רדיוס הפגיעה (blast radius) אם משהו ישתבש.
הקצה ל-OpenClaw משתמש (user) ייעודי ללא הרשאות
לעולם אל תריץ סוכן כ-root. אם OpenClaw רץ כ-root ומתרחש משהו שגוי, בין אם מדובר בבאג, הוראה שגויה או CVE כמו זה שצוין לעיל, הנזק אינו מוגבל. צור משתמש מערכת ייעודי ללא login shell וללא sudo, והרץ את הסוכן תחת המשתמש הזה:
sudo useradd --system --home /opt/openclaw --shell /usr/sbin/nologin openclawכל מה ש-OpenClaw מחזיק נמצא תחת /opt/openclaw, בבעלות החשבון הזה. זהו הצעד החשוב ביותר, והוא אותו עיקרון המפורט ב-running services as an unprivileged user: החשבון שבו הסוכן רץ הוא התקרה למה שהוא יכול לשבור.
התקנת OpenClaw
OpenClaw מופץ כחבילת npm, לכן התקן Node.js תחילה אם השרת אינו כולל אותו. התקן את החבילה באופן גלובלי, מה שישים את ה-binary של openclaw ב-PATH עבור כל משתמש, ולאחר מכן הרץ את שלב ההתקנה (onboarding) החד-פעמי:
sudo npm install -g openclaw@latest
sudo -u openclaw openclaw onboardהרצת ה-onboarding כמשתמש openclaw פירושה שקובצי ההגדרות של הסוכן יישמרו בתיקיית הבית שלו, /opt/openclaw, ולא בתיקיית הבית של root. הפרויקט מציע גם מתקין curl -fsSL https://openclaw.ai/install.sh | bash שמבצע את אותה התקנה בשורה אחת. דלג על הדגל --install-daemon במהלך ה-onboarding: הוא יירשם כשירות (service) של OpenClaw, וה-systemd unit המוגן שתבנה להלן הוא מחמיר יותר.
שמור על ה-gateway ב-loopback, מאחורי חומת אש (firewall)
ה-gateway קושר (binds) ל-127.0.0.1 כברירת מחדל. השאר אותו שם. כמעט ואין סיבה לחשוף את הפורט הזה לאינטרנט, ועשייה כזו מעניקה לכל מי שמוצא אותו נקודת אחיזה מרחוק בתהליך שמריץ פקודות כעיסוקו העיקרי.
הצב חומת אש במצב default-deny לפני השרת כדי ששום דבר לא ייחשף בטעות:
sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw enableשתי מלכודות שיש להימנע מהן כאן. חומת אש המכסה רק IPv4 יכולה להשאיר את אותו שירות פתוח לחלוטין ב-IPv6, וזה בדיוק ה-IPv6 firewall gap שתופס כל כך הרבה אנשים. ואם עליך להגיע ל-gateway מהלפטופ שלך, אל תפתח את הפורט. פעל דרך VPN או tunnel של SSH, כדי שהסוכן לעולם לא יאזין לאינטרנט הפתוח.
בודד את הסודות שלו (secrets)
OpenClaw זקוק למפתח API עבור כל מודל שפה שתחבר אליו. המפתח הזה יכול לבזבז את הכסף שלך, ודרך הסוכן, לפעול בשמך, לכן התייחס אליו כמו לסיסמה. שמור אותו מחוץ לקובץ ה-unit ומחוץ לכל מאגר (repository). שים אותו בקובץ שרק משתמש OpenClaw יכול לקרוא:
sudo install -o openclaw -g openclaw -m 600 /dev/null /opt/openclaw/openclaw.env
sudoedit /opt/openclaw/openclaw.env # add ANTHROPIC_API_KEY=... or your model provider's keyה-systemd unit טוען את הקובץ הזה באמצעות EnvironmentFile, כך שהמפתח מגיע לתהליך מבלי לשבת בשורת הפקודה, בלוג או בהיסטוריית ה-shell שלך.
הרץ אותו כשירות systemd מוגן (hardened)
הרצת הסוכן תחת systemd מעניקה לך הפעלה מחדש אוטומטית, לוגים נקיים דרך journalctl, וחשוב מכל, סט של אפשרויות sandboxing ברמת ה-kernel שמצמצמות את מה שהתהליך יכול לגעת בו גם אם הוא נפרץ. אלו החשובים ביותר עבור סוכן הם NoNewPrivileges כדי שלא יוכל לרכוש כוחות חדשים, ProtectSystem=strict כדי שFileSystem יהיה read-only למעט המקומות שבהם אישרת כתיבה, PrivateTmp עבור תיקיית זמנית מבודדת משלו, ו-ProtectHome כדי שלא יוכל לקרוא תיקיות בית (home directories).
צור unit מלא ומוגן כאן, ואז העתק אותו ל-/etc/systemd/system/openclaw.service:
ה-unit מריץ את openclaw gateway, התהליך רחב-ההפעלה ששולט בסוכן; אם which openclaw מציג נתיב שונה בשרת שלך, התאם את ExecStart בהתאם. המדריך המלא להנחיות אלו, ול-daemon-reload ו-enable --now, נמצא ב-running a program as a systemd service. הגרסה המקוצרת לאחר שהדבקת את ה-unit:
sudo systemctl daemon-reload
sudo systemctl enable --now openclawהגן גם על "דלת הכניסה"
שרת סוכן בטוח רק بقدر השרת שסביבו. שתי שכבות נוספות משלימות את העבודה. העבר את SSH לאימות באמצעות מפתח בלבד (key-only) ובטל כניסת root, כפי שמוסבר ב-SSH hardening on a VPS, כדי שהחשבון שממנו אתה מנהל את השרת לא יהיה חשוף להתקפות brute-force. לאחר מכן הוסף את Fail2ban כדי להדיף סורקים (scanners) שמתקפים כל פורט ציבורי. אף אחד מהם אינו נוגע ישירות ב-OpenClaw, אך שניהם חוסמים את הנתיבים שתוקף ישתמש בהם כדי להגיע אליו.
שמור על עדכונים, בכוונה
החשיפות ממרץ 2026 הן הטיעון הברור ביותר לשמירה על עדכניות. באג של Privilege-escalation בסו代理 הוא חמור הרבה יותר מאשר באפליקציית Web רגילה, מכיוון שהסוכן כבר מריץ פקודות. עקוב אחר הגרסאות של הפרויקט, החל בשידורי עדכוני אבטחה במהירות, והתייחס לשדרוג של OpenClaw כאל תחזוקה שגרתית ולא כמשהו שניתן לדחות.
כדי להבין מה אתה באמת מגן עליו, the architecture of an OpenClaw-style agent סוקר את החלקים הפועלים, ו-building your own AI agent on a VPS מכסה את המבנה הכללי של כל סו代理.
FAQ
האם בטוח להריץ OpenClaw על VPS ציבורי?
זה יכול להיות בטוח, אם תבצע לו hardening. OpenClaw חזק מעצם תכנונו: הוא מריץ פקודות shell ושולט בדפדפן, לכן הגדרה לא זהירה היא מסוכנת באמת, ולפרויקט כבר היו CVE קריטי (CVE-2026-32922 במרץ 2026). מודל האבטחה שלו מצפה ממך, המפעיל, להוסיף את המגבלות. הרץ אותו כמשתמש ללא הרשאות, שמור על ה-gateway ב-loopback מאחורי חומת אש במצב default-deny, בודד את מפתחות ה-API שלו, והרץ אותו כשירות systemd מוגן.
האם כדאי לחשוף את ה-gateway של OpenClaw לאינטרנט?
לא. ה-gateway קושר ל-loopback כברירת מחדל, ועליך להשאיר אותו שם. זהו התהליך היחיד ששולט בסוכן, לכן gateway חשוף הוא נתיב מרחוק אל משהו שמריץ פקודות כעיסוקו העיקרי. אם עליך להגיע אליו מרחוק, השתמש ב-VPN או ב-SSH tunnel במקום לפתוח את הפורט.
באיזה משתמש כדאי להריץ את OpenClaw?
משתמש מערכת ייעודי ללא login shell וללא sudo, לעולם לא root. אם הסוכן נפרץ, חשבון המשתמש שלו הוא התקרה לנזק, לכן חשבון זה צריך להיות הבעלים של הקבצים שלו בלבד תחת תיקייה כמו /opt/openclaw ולא יותר.
איך שומרים על אבטחת מפתחות ה-API של OpenClaw?
אחסן אותם בקובץ שניתן לקריאה רק על ידי משתמש OpenClaw (מצב 600) וטען אותו לשירות באמצעות EnvironmentFile של systemd. שמור את המפתח מחוץ לקובץ ה-unit, מחוץ להיסטוריית ה-shell שלך ומחוץ לכל מאגר git. בצע rotation למפתח אם אי פעם תחשוד שהוא דלף.