Containers

انسیبل

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

پیش‌نیازها

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

امکانات ارائه‌شده

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

شروع سریع

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

موارد نصب‌شده

  1. Tailscale (VPN مش برای دسترسی امن از راه دور)
  2. فایروال UFW (فقط درگاه‌های SSH + Tailscale)
  3. Docker CE + Compose V2 (بک‌اند پیش‌فرض sandbox عامل)
  4. Node.js و pnpm (OpenClaw به Node 22.22.3+، 24.15+ یا 25.9+ نیاز دارد؛ Node 24 توصیه می‌شود)
  5. OpenClaw که مستقیماً روی میزبان و نه در کانتینر نصب می‌شود
  6. یک سرویس systemd همراه با سخت‌سازی امنیتی

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

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

    bash
    sudo -i -u openclaw
  • اجرای راهنمای شروع به کار

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

  • اتصال کانال‌های پیام‌رسانی

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

    bash
    openclaw channels login --channel <name>
  • تأیید نصب

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

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

  • فرمان‌های سریع

    bash
    # بررسی وضعیت سرویسsudo systemctl status openclaw # مشاهده زنده گزارش‌هاsudo journalctl -u openclaw -f # راه‌اندازی مجدد Gatewaysudo systemctl restart openclaw # ورود به کانال (به‌عنوان کاربر openclaw اجرا شود)sudo -i -u openclawopenclaw channels login --channel <name>

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

    مدل دفاعی چهارلایه:

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

    سطح حمله خارجی خود را بررسی کنید:

    bash
    nmap -p- YOUR_SERVER_IP

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

    Docker برای sandboxهای عامل (اجرای ایزوله ابزارها) نصب می‌شود، نه برای اجرای Gateway. برای پیکربندی sandbox به Sandbox و ابزارهای چندعاملی مراجعه کنید.

    نصب دستی

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

    bash
    sudo apt update && sudo apt install -y ansible git
  • همانندسازی مخزن

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

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

    bash
    ./run-playbook.sh

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

    bash
    ansible-playbook playbook.yml --ask-become-pass# سپس اجرا کنید: /tmp/openclaw-setup.sh
  • به‌روزرسانی

    نصب‌کننده Ansible، ‏OpenClaw را برای به‌روزرسانی دستی تنظیم می‌کند؛ برای روند استاندارد به به‌روزرسانی مراجعه کنید.

    برای اجرای مجدد playbook (برای مثال، پس از تغییرات پیکربندی):

    bash
    cd openclaw-ansible./run-playbook.sh

    این فرایند idempotent است و می‌توان آن را چندین بار با خیال راحت اجرا کرد.

    عیب‌یابی

    فایروال اتصال من را مسدود می‌کند
    • ابتدا از طریق VPN مبتنی بر Tailscale متصل شوید؛ Gateway طبق طراحی فقط از این طریق در دسترس است.
    • SSH (درگاه 22) همیشه مجاز است.
    سرویس شروع نمی‌شود
    bash
    # بررسی گزارش‌هاsudo journalctl -u openclaw -n 100 # بررسی مجوزهاsudo ls -la /opt/openclaw # آزمایش شروع دستیsudo -i -u openclawcd ~/openclawopenclaw gateway run
    مشکلات sandbox در Docker
    bash
    # بررسی اجرای Dockersudo systemctl status docker # بررسی تصویر sandboxsudo docker images | grep openclaw-sandbox # ساخت تصویر sandbox در صورت موجود نبودن (به دریافت کد منبع نیاز دارد)cd /opt/openclaw/openclawsudo -u openclaw ./scripts/sandbox-setup.sh# برای نصب‌های npm بدون دریافت کد منبع، مراجعه کنید به# https://docs.openclaw.ai/gateway/sandboxing#images-and-setup
    ورود به کانال ناموفق است

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

    bash
    sudo -i -u openclawopenclaw channels login --channel <name>

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

    برای معماری امنیتی و عیب‌یابی تفصیلی، به مخزن openclaw-ansible مراجعه کنید:

    مرتبط

    Was this useful?
    On this page

    On this page