SSD Nodes Learn
Mga Gabay Matt ConnorNi Matt Connor · Na-update 2026-07-24

Paano i-secure ang OpenClaw sa VPS

Iwasan ang risk ng CVE-2026-32922 sa OpenClaw. Matutunan ang tamang setup gamit ang unprivileged user, firewall, at systemd para sa ligtas na deployment.

Ano ang OpenClaw, at bakit kailangan itong i-harden muna

Ang OpenClaw ay isang self-hosted AI agent. Patatakbuhin mo ito sa sarili mong server, ikokonekta sa isang large language model, at maaari itong magpatakbo ng mga shell command, mag-control ng browser, magbasa at magsulat ng iyong mga file, at kumilos base sa mga mensaheng ipapadala mo mula sa mga chat app. Ang lawak na ito ang pangunahing layunin ng tool, at ito rin ang pangunahing risk. Ang isang agent na kayang magpatakbo ng kahit anong command ay kasing-safe lamang ng server kung saan ito tumatakbo at ng mga limitasyong ilalagay mo rito.

Dalawang katotohanan ang nagtatakda ng tono para sa guide na ito. Una, ang OpenClaw ay idinisenyo para i-harden ng user. Ang security model nito ay inilalagay ang responsibilidad para sa mahigpit na tool policies, sandboxing, at maingat na permissions sa operator, hindi sa isang safe default. Pangalawa, ang project ay nagkaroon na ng seryosong security event: noong March 2026, siyam na security issues ang na-disclose sa loob ng apat na araw, kabilang ang isang critical privilege-escalation flaw, CVE-2026-32922, na may rating na 9.9 out of 10. Hindi ibig sabihin ng mga katotohanang ito na dapat mong iwasan ang OpenClaw. Ang ibig sabihin nito ay hindi mo dapat patakbuhin ito sa paraang "lazy," at ang guide na ito ay ang paraang maingat.

May mabuti ring balita. Ang OpenClaw ay mayroon nang isang safe choice para sa iyo: ang gateway nito, ang single process na nagkokontrol sa lahat, ay nakikinig sa loopback address by default, kaya hindi ito ma-a-access mula sa internet maliban kung sadyain mo itong i-expose. Karamihan sa mga hakbang sa ibaba ay para panatilihin itong ganoon at limitahan ang blast radius kung may maging problema.

Bigyan ang OpenClaw ng sariling unprivileged user

Huwag kailanman patakbuhin ang isang agent bilang root. Kung ang OpenClaw ay tatakbo bilang root at may maging problema—maging bug man ito, maling instruction, o CVE na katulad ng nabanggit sa itaas—walang limitasyon ang pinsalang magagawa nito. Gumawa ng isang dedicated system user na walang login shell at walang sudo, at patakbuhin ang agent gamit ang user na iyon:

sudo useradd --system --home /opt/openclaw --shell /usr/sbin/nologin openclaw

Lahat ng pagmamay-ari ng OpenClaw ay nasa ilalim ng /opt/openclaw, na pagmamay-ari ng account na iyon. Ito ang pinakaimportante na hakbang, at ito ang parehong prinsipyo na tinalakay sa running services as an unprivileged user: ang account kung saan tumatakbo ang agent ang nagsisilbing limitasyon sa kung ano ang maaari nitong masira.

Install ang OpenClaw

Ang OpenClaw ay distributed bilang isang npm package, kaya i-install muna ang Node.js kung wala ito sa server. I-install ang package nang global, na maglalagay sa openclaw binary sa PATH para sa bawat user, pagkatapos ay patakbuhin ang one-time onboarding step:

sudo npm install -g openclaw@latest
sudo -u openclaw openclaw onboard

Ang pagtakbo ng onboarding bilang openclaw user ay nangangahulugang ang configuration ng agent ay mapupunta sa home directory nito, ang /opt/openclaw, at hindi sa sa root. Nag-aalok din ang project ng isang curl -fsSL https://openclaw.ai/install.sh | bash installer na gumagawa ng parehong install sa isang linya. I-skip ang --install-daemon flag habang nag-o-onboarding: ire-register nito ang sariling service ng OpenClaw, samantalang ang hardened systemd unit na bubuuin mo sa ibaba ay mas mahigpit.

Panatilihin ang gateway sa loopback, sa likod ng firewall

Ang gateway ay nag-ba-bind sa 127.0.0.1 by default. Iwanan ito doon. Halos wala nang dahilan para i-publish ang port na iyon sa internet, at ang paggawa nito ay nagbibigay sa sinumang makakahanap nito ng remote foothold sa isang process na ang trabaho ay magpatakbo ng mga command.

Maglagay ng isang default-deny firewall sa harap ng server para walang ma-expose nang hindi sinasadya:

sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw enable

Dalawang trap na dapat iwasan dito. Ang firewall na IPv4 lang ang sakop ay maaaring mag-iwan sa parehong service na bukas sa IPv6, na siyang IPv6 firewall gap na nakaka-catch sa maraming tao. At kung kailangan mong ma-access ang gateway mula sa iyong laptop, huwag buksan ang port. I-access ito sa pamamagitan ng VPN o SSH tunnel, para ang agent ay hindi nakikinig sa open internet.

I-isolate ang mga secrets nito

Kailangan ng OpenClaw ng API key para sa anumang language model na ikokonekta mo rito. Ang key na iyon ay maaaring gumastos ng iyong pera at, sa pamamagitan ng agent, kumilos sa iyong ngalan, kaya ituring ito na parang password. Huwag itong ilalagay sa unit file o sa anumang repository. Ilagay ito sa isang file na ang OpenClaw user lamang ang makakabasa:

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

Ilo-load ng systemd unit ang file na iyon gamit ang EnvironmentFile, kaya ang key ay makakarating sa process nang hindi kailanman nakasulat sa command line, sa log, o sa iyong shell history.

Patakbuhin ito bilang isang hardened systemd service

Ang pagtakbo ng agent sa ilalim ng systemd ay nagbibigay sa iyo ng automatic restarts, malinis na logs sa pamamagitan ng journalctl, at, pinakaimportante, isang set ng kernel-level sandboxing options na nagpapaliit sa kung ano ang maaaring galawin ng process kahit na ito ay ma-compromise. Ang mga pinakaimportante para sa isang agent ay NoNewPrivileges para hindi ito makakuha ng mga bagong kapangyarihan, ProtectSystem=strict para ang filesystem ay read-only maliban sa mga lugar na pinayagan mong isulatan, PrivateTmp para sa sarili nitong isolated temporary directory, at ProtectHome para hindi nito mabasa ang mga home directory.

Mag-generate ng isang kumpleto at hardened na unit dito, pagkatapos ay i-copy ito sa /etc/systemd/system/openclaw.service:

ToolGenerate a hardened systemd unit for the agent

Ang unit ay nag-uumpisa sa openclaw gateway, ang long-running process na nagkokontrol sa agent; kung ang which openclaw ay nagpapakita ng ibang path sa iyong server, i-adjust ang ExecStart para tumugma. Ang buong walkthrough ng mga direktibang ito, pati na ang daemon-reload at enable --now, ay nasa running a program as a systemd service. Ang maikling bersyon kapag na-paste mo na ang unit:

sudo systemctl daemon-reload
sudo systemctl enable --now openclaw

I-harden din ang front door

Ang isang agent box ay kasing-safe lamang ng server sa paligid nito. Dalawa pang layer ang tatapos sa trabaho. I-set ang SSH sa key-only authentication at tanggalin ang root login, gaya ng sa SSH hardening on a VPS, para ang account na ginagamit mo sa pag-administer ng box ay hindi ma-brute-force. Pagkatapos ay idagdag ang Fail2ban para paalisin ang mga scanner na nambubugbog sa bawat public port. Walang direktang epekto ang mga ito sa OpenClaw, ngunit parehong pinuputol ng mga ito ang mga ruta na gagamitin ng attacker para maabot ito.

Panatilihin itong updated, nang may intensyon

Ang mga disclosure noong March 2026 ang pinakamalinaw na argumento para manatiling updated. Ang isang privilege-escalation bug sa isang agent ay mas seryoso kaysa sa isang ordinaryong web app, dahil ang agent ay tumatakbo na ng mga command. Bantayan ang mga releases ng project, i-apply agad ang mga security updates, at ituring ang OpenClaw upgrade bilang routine maintenance sa halip na isang bagay na maaaring ipagpaliban.

Para maunawaan kung ano talaga ang iyong hi-ha-harden, tatalakayin ng the architecture of an OpenClaw-style agent ang mga gumagalaw na bahagi, at ang building your own AI agent on a VPS ay sumasaklaw sa pangkalahatang anyo ng anumang agent.

FAQ

Ligtas ba ang pagtakbo ng OpenClaw sa isang public VPS?

Maaari, kung i-ha-harden mo ito. Ang OpenClaw ay powerful by design: nagpapatakbo ito ng mga shell command at nagkokontrol ng browser, kaya ang isang careless setup ay talagang mapanganib, at ang project ay nagkaroon na ng isang critical CVE (CVE-2026-32922 noong March 2026). Ang security model nito ay umaasa sa iyo, ang operator, na magdadagdag ng mga limitasyon. Patakbuhin ito bilang isang unprivileged user, panatilihin ang gateway nito sa loopback sa likod ng isang default-deny firewall, i-isolate ang mga API key nito, at patakbuhin ito bilang isang hardened systemd service.

Dapat ko bang i-expose ang OpenClaw gateway sa internet?

Hindi. Ang gateway ay nag-ba-bind sa loopback by default, at dapat mo itong iwanan doon. Ito ang single process na nagkokontrol sa agent, kaya ang isang exposed gateway ay isang remote path patungo sa isang bagay na nagpapatakbo ng mga command. Kung kailangan mo itong ma-access nang remote, gumamit ng VPN o SSH tunnel sa halip na buksan ang port.

Anong user ang dapat gamitin ng OpenClaw?

Isang dedicated system user na walang login shell at walang sudo, hindi kailanman root. Kung ma-compromise ang agent, ang user account nito ang limitasyon sa pinsalang magagawa, kaya ang account na iyon ay dapat na nagmamay-ari lamang ng sarili nitong mga file sa ilalim ng isang directory gaya ng /opt/openclaw at wala nang iba.

Paano ko mapapanatiling secure ang mga API key ng OpenClaw?

I-store ang mga ito sa isang file na ang OpenClaw user lamang ang makakabasa (mode 600) at i-load ito sa service gamit ang EnvironmentFile ng systemd. Huwag ilalagay ang key sa unit file, sa iyong shell history, o sa anumang git repository. I-rotate ito kung hinala mong na-leak na ito.