مرجع خط فرمان
بکاند Ogma که با Rust نوشته شده است، میتواند بهعنوان سرور پروکسی محلی، فرایند MCP تعبیهشده یا دستور تست نفوذ بدون رابط گرافیکی اجرا شود.
کاربران نسخهٔ بستهبندیشدهٔ دسکتاپ معمولاً Ogma را از خود برنامه اجرا میکنند. استفاده از خط فرمان برای توسعه، خودکارسازی و تست محلی با الگوی اجرای سرور مفید است.
حالت سرور
bash
ogma \
--listen 127.0.0.1:8080 \
--api-port 127.0.0.1:8181 \
--data-dir ./ogma-dataگزینههای رایج
| گزینه | مقدار پیشفرض | کاربرد |
|---|---|---|
--listen | 127.0.0.1:8080 | نشانی شنوندهٔ پروکسی. |
--api-port | 127.0.0.1:8181 | نشانی REST API و سرور فرانتاند. |
--data-dir | ./ogma-data | پایگاه دادهٔ پروژه، گواهیها، افزونهها، خروجیها و وضعیت محلی. |
--max-plugin-size | 52428800 | حداکثر اندازهٔ بستهٔ افزونه بر حسب بایت. |
--intercept-queue-cap | 1000 | حداکثر تعداد موارد رهگیریشده در صف، پیش از آنکه ترافیک جدید مستقیماً عبور داده شود. |
--ui-dir | تنظیم نشده | پوشهٔ حاوی فایلهای ساختهشدهٔ فرانتاند که سرور API ارائه میکند. |
گزینههای OAST
| گزینه | مقدار پیشفرض | کاربرد |
|---|---|---|
--oast-http-port | 8888 | شنوندهٔ تماس برگشتی HTTP. برای غیرفعال کردن از 0 استفاده کنید. |
--oast-https-port | 8443 | شنوندهٔ تماس برگشتی HTTPS. برای غیرفعال کردن از 0 استفاده کنید. |
--oast-dns-port | 5353 | شنوندهٔ تماس برگشتی DNS. برای غیرفعال کردن از 0 استفاده کنید. |
--oast-smtp-port | 2525 | شنوندهٔ تماس برگشتی SMTP. برای غیرفعال کردن از 0 استفاده کنید. |
--oast-domain | oast.local | دامنهٔ مورد استفاده برای نامهای میزبان تماس برگشتی تولیدشده. |
--oast-public-ip | تنظیم نشده | نشانی IP عمومی که پاسخهای رکورد A در DNS مربوط به OAST برمیگردانند. |
حالت تست نفوذ بدون رابط گرافیکی
زیردستور pentest کشف، تحلیل پسیو و اسکن فعال اختیاری را اجرا میکند و گزارشی با قالب Markdown تولید میکند.
bash
ogma pentest https://example.com \
--depth 3 \
--concurrency 10 \
--min-severity medium \
--output report.mdگزینههای تست نفوذ
| گزینه | مقدار پیشفرض | کاربرد |
|---|---|---|
--depth | 3 | عمق کشف. 0 به معنای نامحدود است. |
--concurrency | 10 | حداکثر تعداد درخواستهای همزمان. |
--no-active | غیرفعال | غیرفعال کردن اسکن فعال؛ فقط کشف و تحلیل پسیو اجرا میشود. |
--min-severity | medium | حداقل شدتی که باعث بازگشت کد خروج 1 میشود. مقادیر معتبر: info، low، medium، high، critical. |
--output | خروجی استاندارد | نوشتن گزارش در فایل بهجای خروجی استاندارد. |
کدهای خروج:
| کد | معنا |
|---|---|
0 | اجرا کامل شد و هیچ یافتهای به آستانهٔ شدت نرسید. |
1 | اجرا کامل شد و دستکم یک یافته به آستانهٔ شدت رسید. |
2 | خطای زمان اجرا یا پیکربندی. |
حالت MCP
MCP را میتوان از تنظیمات Ogma یا با فایل اجرایی مستقل ogma-mcp راهاندازی کرد. گزینههای پنهان بکاند نیز هنگام راهاندازی یک فرایند داخلی MCP توسط Ogma، از حالت MCP تعبیهشده پشتیبانی میکنند.
برای راهاندازی معمول، به راهاندازی MCP مراجعه کنید.
گزینههای ogma-mcp مستقل
bash
ogma-mcp \
--api-url http://127.0.0.1:8181 \
--body-preview-bytes 2048| گزینه | متغیر محیطی | مقدار پیشفرض | کاربرد |
|---|---|---|---|
--api-url | OGMA_API_URL | http://127.0.0.1:8181 | نشانی API بکاند Ogma در حال اجرا. |
--body-preview-bytes | تنظیم نشده | 512 | حداکثر تعداد بایتهای پیشنمایش بدنه که ابزارهای خواندن برمیگردانند. |
--allow-write-findings | OGMA_MCP_ALLOW_WRITE_FINDINGS | غیرفعال | فعال کردن ایجاد و بهروزرسانی یافتهها، برچسبگذاری و پیوند شواهد. |
--allow-export-data | OGMA_MCP_ALLOW_EXPORT_DATA | غیرفعال | فعال کردن ایجاد کارهای خروجیگیری. |
--allow-read-secrets | OGMA_MCP_ALLOW_READ_SECRETS | غیرفعال | برگرداندن مقادیر متغیرهای محیطی بدون پوشاندن آنها. |
--allow-send-requests | OGMA_MCP_ALLOW_SEND_REQUESTS | غیرفعال | فعال کردن ابزارهایی که ترافیک میفرستند، مرورگر را کنترل میکنند، میخزند، کاوش میکنند، احراز هویت را میآزمایند یا به WebSocket متصل میشوند. |
--allow-run-workflows | OGMA_MCP_ALLOW_RUN_WORKFLOWS | غیرفعال | فعال کردن ابزارهای پیشنمایش، اجرا و لغو گردش کار. |
--allow-intercept-control | OGMA_MCP_ALLOW_INTERCEPT_CONTROL | غیرفعال | فعال کردن کنترل صف رهگیری، عبور دادن، حذف و تغییر موارد. |
--tool-profile | OGMA_MCP_TOOL_PROFILE | full | گزینهٔ سازگاری با نسخههای قدیمی. همهٔ ابزارها همواره معرفی میشوند، حتی اگر دستور قدیمی core یا discovery را ارسال کند. --mcp-tool-profile نام مستعار آن است. |
MCP پیامهای پروتکل را در خروجی استاندارد مینویسد؛ بنابراین لاگهای زمان اجرا به خروجی خطای استاندارد میروند.
متغیرهای محیطی بولی مربوط به مجوزها، مقدار true را برای فعال کردن قابلیت میپذیرند. سرور سهمیهٔ فعالیت در هر دقیقه یا هر نشست ندارد؛ محدودیتهای جداگانهٔ هر ابزار همچنان اعمال میشوند. گزینههای سهمیه که حذف شدهاند پذیرفته نمیشوند. گزینههای ورودی و خروجی استاندارد، آن فرایند را مستقل از تنظیمات MCP تعبیهشده پیکربندی میکنند.
ساختهای توسعه
اسکریپتهای ساخت محلی در ریشهٔ مخزن موجودند:
bash
./build-local.sh
./build-desktop-local.shبرای تست تجربهٔ بستهبندیشدهٔ Electron از ساخت دسکتاپ استفاده کنید. برای تست رفتار API و رابط وب از ساخت بکاند و فرانتاند استفاده کنید.