CLI 참조
Ogma의 Rust 백엔드는 로컬 프록시 서버, 내장 MCP 프로세스 또는 헤드리스 침투 테스트 명령으로 실행할 수 있습니다.
패키지로 배포된 데스크톱 버전 사용자는 보통 애플리케이션에서 Ogma를 시작합니다. CLI는 개발, 자동화, 서버 방식의 로컬 테스트에 유용합니다.
서버 모드
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 | 미설정 | OAST DNS A 레코드 응답에서 반환할 공인 IP입니다. |
헤드리스 침투 테스트 모드
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 | stdout | 표준 출력 대신 파일에 보고서를 씁니다. |
종료 코드:
| 코드 | 의미 |
|---|---|
0 | 완료되었으며 심각도 기준을 충족하는 발견 사항이 없습니다. |
1 | 완료되었으며 심각도 기준을 충족하는 발견 사항이 하나 이상 있습니다. |
2 | 실행 또는 설정 오류입니다. |
MCP 모드
MCP는 Ogma 설정에서 시작하거나 독립 실행형 ogma-mcp 바이너리로 시작할 수 있습니다. 숨겨진 백엔드 플래그는 Ogma가 내부 MCP 프로세스를 실행할 때 내장 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 | 실행 중인 Ogma 백엔드의 API URL입니다. |
--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는 프로토콜 메시지를 stdout에 쓰므로 실행 로그는 stderr로 출력합니다.
불리언 권한 환경 변수는 true를 지정하면 해당 기능을 허용합니다. 서버에는 분당 또는 세션당 활동 할당량이 없지만 개별 도구의 제한은 계속 적용됩니다. 제거된 할당량 플래그는 허용되지 않습니다. Stdio 플래그는 내장 MCP 설정과 별개로 해당 프로세스를 설정합니다.
개발용 빌드
저장소 루트에 로컬 빌드 스크립트가 있습니다:
bash
./build-local.sh
./build-desktop-local.sh패키지로 배포되는 Electron 환경을 테스트할 때는 데스크톱 빌드를 사용하세요. API와 웹 UI 동작을 테스트할 때는 백엔드/프런트엔드 빌드를 사용하세요.