OpenClaw VPS üzerinde güvenli nasıl kurulur?
OpenClaw shell komutları çalıştırabildiği için risklidir. CVE-2026-32922 açığına karşı unprivileged user ve firewall kullanarak VPS güvenliği nasıl sağlanır?
OpenClaw nedir ve neden önce sıkılaştırılmalıdır
OpenClaw, kendi sunucunuzda barındırılan bir yapay zeka ajanıdır. Onu kendi sunucunuzda çalıştırır, bir büyük dil modeline bağlarsınız; ajan shell komutları çalıştırabilir, bir tarayıcıyı kontrol edebilir, dosyalarınızı okuyup yazabilir ve sohbet uygulamalarından gönderdiğiniz mesajlara göre işlem yapabilir. Bu erişim kapasitesi aracın temel amacıdır, ancak aynı zamanda temel risk faktörüdür. Herhangi bir komutu çalıştırabilen bir ajan, yalnızca üzerinde çalıştığı kutu ve üzerine koyduğunuz limitler kadar güvenlidir.
Bu kılavuzun tonunu iki gerçek belirler. Birincisi, OpenClaw sizin tarafınızdan sıkılaştırılmak üzere tasarlanmıştır. Güvenlik modeli; sıkı araç politikaları, sandboxing ve dikkatli izinler konusundaki sorumluluğu varsayılan güvenli ayarlara değil, operatöre yükler. İkincisi, proje halihazırda ciddi bir güvenlik olayı yaşamıştır: Mart 2026'da, 10 üzerinden 9 puan alan kritik bir yetki yükseltme kusuru (CVE-2026-32922) dahil olmak üzere, dört gün içinde dokuz güvenlik sorunu açıklanmıştır. Bu gerçeklerin hiçbiri OpenClaw'dan kaçınmanız gerektiği anlamına gelmez. Bunlar, ajanı dikkatsizce çalıştırmamanız gerektiği anlamına gelir; bu kılavuz ise dikkatli uygulama yöntemidir.
İyi haberler de mevcuttur. OpenClaw sizin için halihazırda bir güvenli seçim yapmıştır: Her şeyi kontrol eden tek süreç olan gateway, varsayılan olarak loopback adresini dinler; bu nedenle, siz onu dış dünyaya açmak için özel bir çaba sarf etmedikçe internetten erişilemez. Aşağıdaki adımların çoğu, bu durumu korumak ve bir şeyler ters giderse etki alanını sınırlamak üzerinedir.
OpenClaw için ayrı bir yetkisiz kullanıcı oluşturun
Bir ajanı asla root olarak çalıştırmayın. Eğer OpenClaw root olarak çalışırsa ve bir hata, kötü bir talimat veya yukarıdaki gibi bir CVE nedeniyle bir sorun oluşursa, hasarın sınırı olmaz. Giriş kabuğu (login shell) ve sudo yetkisi olmayan özel bir sistem kullanıcısı oluşturun ve ajanı bu kullanıcıyla çalıştırın:
sudo useradd --system --home /opt/openclaw --shell /usr/sbin/nologin openclawOpenClaw'ın sahip olduğu her şey, bu hesaba ait olan /opt/openclaw altında yaşar. Bu en önemli adımdır ve yetkisiz bir kullanıcı olarak servis çalıştırma konusundaki prensiple aynıdır: Bir ajanın çalıştığı hesap, bozabileceği şeylerin sınırını belirler.
OpenClaw kurulumu
OpenClaw bir npm paketi olarak dağıtılır, bu nedenle sunucuda yüklü değilse önce Node.js kurun. Paketi global olarak kurun; bu, openclaw binary dosyasını her kullanıcı için PATH'e ekler, ardından tek seferlik kurulum adımını çalıştırın:
sudo npm install -g openclaw@latest
sudo -u openclaw openclaw onboardKurulumun openclaw kullanıcısı olarak çalıştırılması, ajanın konfigürasyonunun root yerine kendi ev dizinine, yani /opt/openclaw dizinine kaydedilmesi anlamına gelir. Proje ayrıca aynı kurulumu tek satırda yapan bir curl -fsSL https://openclaw.ai/install.sh | bash yükleyicisi sunar. Kurulum sırasında --install-daemon flag'ini atlayın: bu, OpenClaw'ın kendi servisini kaydedecektir ve aşağıda oluşturacağınız sıkılaştırılmış systemd ünitesi daha katıdır.
Gateway'i loopback üzerinde ve bir firewall arkasında tutun
Gateway varsayılan olarak 127.0.0.1 adresine bağlanır. Onu orada bırakın. Bu portu internete açmak için neredeyse hiçbir neden yoktur; bunu yapmak, portu bulan herhangi birine, sürekli komut çalıştıran bir süreç üzerinde uzaktan tutunma noktası sağlar.
Yanlışlıkla hiçbir şeyin dışarı açılmaması için kutunun önüne varsayılan olarak her şeyi engelleyen (default-deny) bir firewall koyun:
sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw enableBurada kaçınılması gereken iki tuzak vardır. Sadece IPv4'ü kapsayan bir firewall, aynı servisin IPv6 üzerinde tamamen açık kalmasına neden olabilir; bu, pek çok kişinin yakalandığı IPv6 firewall gap durumudur. Eğer gateway'e dizüstü bilgisayarınızdan erişmeniz gerekirse, portu açmayın. Bir VPN veya SSH tüneli üzerinden erişin, böylece ajan asla açık interneti dinlemez.
Sırlarını izole edin
OpenClaw, bağladığınız dil modeli ne olursa olsun bir API anahtarına ihtiyaç duyar. Bu anahtar paranızı harcayabilir ve ajan aracılığıyla sizin adınıza işlem yapabilir, bu nedenle ona bir şifre gibi davranın. Onu unit dosyasından ve herhangi bir depodan (repository) uzak tutun. Sadece OpenClaw kullanıcısının okuyabileceği bir dosyaya koyun:
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 keySystemd ünitesi bu dosyayı EnvironmentFile ile yükler, böylece anahtar komut satırında, bir log dosyasında veya shell geçmişinizde bulunmadan sürece iletilir.
Sıkılaştırılmış bir systemd servisi olarak çalıştırın
Ajanı systemd altında çalıştırmak size otomatik yeniden başlatma, journalctl aracılığıyla temiz loglar ve en önemlisi, süreç ele geçirilse bile dokunabileceği alanları daraltan bir dizi kernel seviyesinde sandboxing seçeneği sağlar. Bir ajan için en önemli olanlar şunlardır: yeni yetkiler kazanmaması için NoNewPrivileges, dosya sisteminin sadece yazmaya izin verdiğiniz yerler hariç salt okunur olması için ProtectSystem=strict, kendi izole geçici dizini için PrivateTmp ve ev dizinlerini okuyamaması için ProtectHome.
Burada tam ve sıkılaştırılmış bir unit dosyası oluşturun, ardından bunu /etc/systemd/system/openclaw.service dizinine kopyalayın:
Unit, ajanı kontrol eden uzun süreli süreç olan openclaw gateway'yi başlatır; eğer which openclaw sunucunuzda farklı bir yol gösteriyorsa, ExecStart değerini buna göre ayarlayın. Bu direktiflerin ve daemon-reload ile enable --now'in tam anlatımı bir programı systemd servisi olarak çalıştırma kısmındadır. Unit dosyasını yapıştırdıktan sonraki kısa versiyon:
sudo systemctl daemon-reload
sudo systemctl enable --now openclawÖn kapıyı da sıkılaştırın
Bir ajan kutusu, ancak etrafındaki sunucu kadar güvenlidir. İşi bitirmek için iki katman daha ekleyin. VPS üzerinde SSH sıkılaştırma işleminde olduğu gibi, SSH'ı sadece anahtar tabanlı kimlik doğrulamaya geçirin ve root girişini kapatın; böylece kutuyu yönettiğiniz hesap brute-force saldırılarına maruz kalmaz. Ardından, her açık portu tarayan tarayıcıları uzaklaştırmak için Fail2ban ekleyin. Hiçbiri doğrudan OpenClaw'a dokunmaz, ancak her ikisi de bir saldırganın ona ulaşmak için kullanacağı yolları keser.
Güncel tutun, bilinçli olarak
Mart 2026'daki açıklamalar, güncel kalmak için mümkün olan en net argümandır. Bir ajandaki yetki yükseltme hatası, sıradan bir web uygulamasındakinden çok daha ciddidir, çünkü ajan zaten komutlar çalıştırır. Projenin sürümlerini takip edin, güvenlik güncellemelerini hızlıca uygulayın ve bir OpenClaw yükseltmesini ertelenecek bir şey olarak değil, rutin bir bakım olarak değerlendirin.
Neyi aslında sıkılaştırdığınızı anlamak için OpenClaw tarzı bir ajanın mimarisi hareketli parçaları inceler, VPS üzerinde kendi yapay zeka ajanınızı oluşturma ise herhangi bir ajanın aldığı genel yapıyı kapsar.
FAQ
OpenClaw'ı halka açık bir VPS üzerinde çalıştırmak güvenli mi?
Eğer sıkılaştırırsanız güvenli olabilir. OpenClaw tasarımı gereği güçlüdür: shell komutları çalıştırır ve bir tarayıcıyı kontrol eder, bu nedenle dikkatsiz bir kurulum gerçekten tehlikelidir ve proje halihazırda kritik bir CVE (Mart 2026'da CVE-2026-32922) yaşamıştır. Güvenlik modeli, operatör olarak sizin limitleri eklemenizi bekler. Onu yetkisiz bir kullanıcı olarak çalıştırın, gateway'ini varsayılan olarak her şeyi engelleyen bir firewall arkasında loopback üzerinde tutun, API anahtarlarını izole edin ve sıkılaştırılmış bir systemd servisi olarak çalıştırın.
OpenClaw gateway'ini internete açmalı mıyım?
Hayır. Gateway varsayılan olarak loopback'e bağlanır ve onu orada bırakmalısınız. Bu, ajanı kontrol eden tek süreçtir, bu nedenle açık bir gateway, sürekli komut çalıştıran bir şeye uzaktan erişim yolu sağlar. Uzaktan erişmeniz gerekirse, portu açmak yerine bir VPN veya SSH tüneli kullanın.
OpenClaw hangi kullanıcı olarak çalışmalı?
Giriş kabuğu ve sudo yetkisi olmayan özel bir sistem kullanıcısı olarak, asla root olarak değil. Eğer ajan ele geçirilirse, kullanıcı hesabı hasarın sınırını belirler; bu nedenle o hesap sadece /opt/openclaw gibi bir dizin altındaki kendi dosyalarına sahip olmalı ve başka hiçbir şeye sahip olmamalıdır.
OpenClaw'ın API anahtarlarını nasıl güvenli tutarım?
Onları sadece OpenClaw kullanıcısının okuyabileceği bir dosyada (600 modu) saklayın ve systemd'nin EnvironmentFile özelliği ile servise yükleyin. Anahtarı unit dosyasından, shell geçmişinizden ve herhangi bir git deposundan uzak tutun. Sızıntıdan şüphelenirseniz anahtarı yenileyin.