Containers

Ansible

OpenClaw را با openclaw-ansible روی سرورهای تولید مستقر کنید -- یک نصب‌کننده خودکار با معماری امنیت‌محور.

پیش‌نیازها

نیازمندی جزئیات
سیستم‌عامل Debian 11+ یا Ubuntu 20.04+
دسترسی دسترسی root یا امتیازهای sudo
شبکه اتصال اینترنت برای نصب بسته‌ها
Ansible 2.14+ (به‌صورت خودکار توسط اسکریپت شروع سریع نصب می‌شود)

آنچه دریافت می‌کنید

  • امنیت با اولویت فایروال -- ایزوله‌سازی UFW + Docker (فقط SSH + Tailscale در دسترس است)
  • Tailscale VPN -- دسترسی راه دور امن بدون عمومی‌کردن سرویس‌ها
  • Docker -- کانتینرهای sandbox ایزوله، اتصال‌های فقط localhost
  • دفاع چندلایه -- معماری امنیتی ۴ لایه
  • یکپارچه‌سازی Systemd -- شروع خودکار هنگام بوت با سخت‌سازی
  • راه‌اندازی تک‌دستوری -- استقرار کامل در چند دقیقه

شروع سریع

نصب با یک دستور:

curl -fsSL https://raw.githubusercontent.com/openclaw/openclaw-ansible/main/install.sh | bash

چه چیزهایی نصب می‌شود

playbook مربوط به Ansible موارد زیر را نصب و پیکربندی می‌کند:

  1. Tailscale -- VPN مش برای دسترسی راه دور امن
  2. فایروال UFW -- فقط پورت‌های SSH + Tailscale
  3. Docker CE + Compose V2 -- برای backend پیش‌فرض sandbox عامل
  4. Node.js 24 + pnpm -- وابستگی‌های runtime (Node 22 LTS، در حال حاضر 22.14+، همچنان پشتیبانی می‌شود)
  5. OpenClaw -- مبتنی بر میزبان، نه کانتینری‌شده
  6. سرویس Systemd -- شروع خودکار با سخت‌سازی امنیتی

راه‌اندازی پس از نصب

  • تغییر به کاربر openclaw

    sudo -i -u openclaw
    
  • اجرای جادوگر onboarding

    اسکریپت پس از نصب شما را در پیکربندی تنظیمات OpenClaw راهنمایی می‌کند.

  • اتصال ارائه‌دهندگان پیام‌رسانی

    به WhatsApp، Telegram، Discord یا Signal وارد شوید:

    openclaw channels login
    
  • تأیید نصب

    sudo systemctl status openclaw
    sudo journalctl -u openclaw -f
    
  • اتصال به Tailscale

    برای دسترسی راه دور امن، به مش VPN خود بپیوندید.

  • دستورهای سریع

    # Check service status
    sudo systemctl status openclaw
    
    # View live logs
    sudo journalctl -u openclaw -f
    
    # Restart gateway
    sudo systemctl restart openclaw
    
    # Provider login (run as openclaw user)
    sudo -i -u openclaw
    openclaw channels login
    

    معماری امنیتی

    این استقرار از یک مدل دفاعی ۴ لایه استفاده می‌کند:

    1. فایروال (UFW) -- فقط SSH (22) + Tailscale (41641/udp) به‌صورت عمومی در معرض دسترس هستند
    2. VPN (Tailscale) -- Gateway فقط از طریق مش VPN در دسترس است
    3. ایزوله‌سازی Docker -- زنجیره iptables با نام DOCKER-USER از در معرض قرار گرفتن پورت‌های خارجی جلوگیری می‌کند
    4. سخت‌سازی Systemd -- NoNewPrivileges، PrivateTmp، کاربر بدون امتیاز

    برای تأیید سطح حمله خارجی خود:

    nmap -p- YOUR_SERVER_IP
    

    فقط پورت 22 (SSH) باید باز باشد. همه سرویس‌های دیگر (Gateway، Docker) قفل شده‌اند.

    Docker برای sandboxهای عامل (اجرای ایزوله ابزارها) نصب می‌شود، نه برای اجرای خود Gateway. برای پیکربندی sandbox، Multi-Agent Sandbox and Tools را ببینید.

    نصب دستی

    اگر کنترل دستی را به خودکارسازی ترجیح می‌دهید:

  • نصب پیش‌نیازها

    sudo apt update && sudo apt install -y ansible git
    
  • کلون کردن مخزن

    git clone https://github.com/openclaw/openclaw-ansible.git
    cd openclaw-ansible
    
  • نصب مجموعه‌های Ansible

    ansible-galaxy collection install -r requirements.yml
    
  • اجرای playbook

    ./run-playbook.sh
    

    یا می‌توانید مستقیما اجرا کنید و سپس اسکریپت راه‌اندازی را به‌صورت دستی اجرا کنید:

    ansible-playbook playbook.yml --ask-become-pass
    # Then run: /tmp/openclaw-setup.sh
    
  • به‌روزرسانی

    نصب‌کننده Ansible، OpenClaw را برای به‌روزرسانی‌های دستی آماده می‌کند. برای جریان استاندارد به‌روزرسانی، Updating را ببینید.

    برای اجرای دوباره playbook مربوط به Ansible (برای مثال، برای تغییرات پیکربندی):

    cd openclaw-ansible
    ./run-playbook.sh
    

    این کار idempotent است و اجرای چندباره آن امن است.

    عیب‌یابی

    فایروال اتصال من را مسدود می‌کند
    • ابتدا مطمئن شوید می‌توانید از طریق Tailscale VPN دسترسی داشته باشید
    • دسترسی SSH (پورت 22) همیشه مجاز است
    • Gateway طبق طراحی فقط از طریق Tailscale در دسترس است
    سرویس شروع نمی‌شود
    # Check logs
    sudo journalctl -u openclaw -n 100
    
    # Verify permissions
    sudo ls -la /opt/openclaw
    
    # Test manual start
    sudo -i -u openclaw
    cd ~/openclaw
    openclaw gateway run
    
    مشکلات sandbox در Docker
    # Verify Docker is running
    sudo systemctl status docker
    
    # Check sandbox image
    sudo docker images | grep openclaw-sandbox
    
    # Build sandbox image if missing (requires source checkout)
    cd /opt/openclaw/openclaw
    sudo -u openclaw ./scripts/sandbox-setup.sh
    # For npm installs without a source checkout, see
    # https://docs.openclaw.ai/gateway/sandboxing#images-and-setup
    
    ورود ارائه‌دهنده ناموفق است

    مطمئن شوید به‌عنوان کاربر openclaw اجرا می‌کنید:

    sudo -i -u openclaw
    openclaw channels login
    

    پیکربندی پیشرفته

    برای معماری امنیتی دقیق و عیب‌یابی، مخزن openclaw-ansible را ببینید:

    مرتبط