튜토리얼 카테고리 Skills 소개
ZH EN JA KO
채널 연동

OpenClaw 채널 보안 설정: 화이트리스트 및 개인 메시지 페어링

· 10 분 소요

AI 에이전트를 공개 채팅 플랫폼에 노출할 때 보안 제어는 매우 중요합니다. 제한 없는 AI Bot은 남용될 수 있습니다. 대량의 API 비용 소모, 부적절한 콘텐츠 생성, 민감한 정보 유출 등의 위험이 있습니다. OpenClaw은 누가 AI와 상호작용할 수 있고 어떻게 상호작용할 수 있는지를 제어하기 위한 다층 보안 메커니즘을 제공합니다.

보안 위협 개요

공개 채팅 플랫폼에서 AI Bot을 운영할 때 직면하는 주요 위험:

  • 미승인 사용자가 AI 리소스를 남용하여 고액의 API 비용 발생
  • 악의적 사용자가 프롬프트 인젝션(Prompt Injection)을 통해 AI 행동 조작 시도
  • 그룹 채팅에서 AI가 부적절하게 트리거되어 부적절한 내용 응답
  • AI 응답을 통해 미승인 인원에게 민감한 정보 유출

OpenClaw의 보안 메커니즘은 바로 이러한 시나리오에 대응하기 위해 설계되었습니다.

Allowlist 화이트리스트 메커니즘

Allowlist는 OpenClaw의 가장 기본적이면서도 효과적인 접근 제어 수단입니다. 원리는 간단합니다: 화이트리스트에 있는 사용자만 AI와 상호작용할 수 있고, 다른 사용자의 메시지는 무시됩니다.

전역 화이트리스트

openclaw.json의 최상위에 전역 화이트리스트를 설정하면 모든 채널에 적용됩니다:

{
  "security": {
    "allowlist": {
      "enabled": true,
      "users": [
        {"platform": "telegram", "id": "123456789"},
        {"platform": "whatsapp", "id": "[email protected]"},
        {"platform": "discord", "id": "987654321098765432"}
      ]
    }
  }
}

전역 화이트리스트는 플랫폼명과 사용자 ID 형식으로 사용자를 식별합니다. 이를 통해 한 곳에서 모든 플랫폼의 승인된 사용자를 관리할 수 있습니다.

채널별 화이트리스트

각 채널에도 고유한 화이트리스트를 설정할 수 있으며, 전역 화이트리스트와 합집합으로 적용됩니다:

{
  "channels": {
    "telegram": {
      "allowlist": [123456789, 111222333]
    },
    "whatsapp": {
      "allowlist": ["[email protected]"]
    }
  }
}

화이트리스트 모드

OpenClaw은 두 가지 화이트리스트 모드를 지원합니다:

엄격 모드(strict): 화이트리스트에 있는 사용자만 상호작용할 수 있습니다. 기본 모드이며 프라이빗 배포에 적합합니다.

관대 모드(permissive): 모든 사용자가 상호작용할 수 있지만, 화이트리스트 사용자는 더 높은 우선순위와 더 많은 기능 권한을 가집니다. 예를 들어 일반 사용자는 하루 10건만 메시지를 보낼 수 있지만 화이트리스트 사용자는 제한이 없습니다.

{
  "security": {
    "allowlist": {
      "mode": "strict"
    }
  }
}

개인 메시지 페어링 메커니즘

개인 메시지 페어링(Private Message Pairing)은 OpenClaw의 독특한 보안 기능입니다. 사용자가 먼저 Bot과의 개인 메시지를 통해 신원 인증을 완료한 후에야 그룹 채팅 등의 시나리오에서 AI 기능을 사용할 수 있습니다.

동작 흐름

  1. 사용자가 그룹 채팅에서 처음으로 AI와 상호작용 시도
  2. Bot이 해당 사용자가 미페어링 상태임을 감지하고 개인 메시지를 전송 (또는 사용자에게 Bot에 직접 메시지를 보내도록 안내)
  3. 사용자가 개인 메시지에서 일회성 페어링 코드를 수신
  4. 사용자가 개인 메시지에서 페어링 코드를 회신하여 인증 완료
  5. 인증 성공 후 사용자는 그룹 채팅에서 정상적으로 AI 기능 사용 가능

개인 메시지 페어링 설정

{
  "security": {
    "pairing": {
      "enabled": true,
      "codeExpiry": 300,
      "codeLength": 6,
      "maxAttempts": 3,
      "pairingMessage": "AI 어시스턴트를 활성화하려면 5분 이내에 다음 페어링 코드를 회신해 주세요: {code}"
    }
  }
}

codeExpiry는 페어링 코드의 유효 시간(초), codeLength는 페어링 코드의 자릿수, maxAttempts는 최대 시도 횟수이며 초과 시 페어링을 다시 시작해야 합니다. pairingMessage는 사용자에게 전송되는 안내 메시지 템플릿으로, {code}가 실제 페어링 코드로 대체됩니다.

페어링 상태 영속화

페어링 성공 후 사용자의 인증 상태는 영속적으로 저장됩니다. OpenClaw이 재시작되더라도 사용자는 다시 페어링할 필요가 없습니다. 페어링 기록은 로컬 데이터베이스에 저장되며, 명령으로 관리할 수 있습니다:

openclaw pairing list          # 모든 페어링된 사용자 조회
openclaw pairing revoke <id>   # 특정 사용자의 페어링 해제
openclaw pairing clear         # 모든 페어링 기록 삭제

그룹 채팅 권한 제어

그룹 채팅 시나리오의 보안 제어는 그룹 수준과 사용자 수준의 이중 권한이 관련되어 더 복잡합니다.

그룹 화이트리스트

Bot이 특정 그룹에서만 작동하도록 제한합니다:

{
  "security": {
    "groups": {
      "allowedGroups": {
        "telegram": [-1001234567890],
        "whatsapp": ["[email protected]"],
        "discord": ["guild_id_here"]
      }
    }
  }
}

Bot이 화이트리스트 외의 그룹에 추가되면 모든 메시지를 무시합니다. 미승인 그룹에 추가될 때 자동으로 나가도록 설정할 수도 있습니다.

그룹 역할 권한

역할 시스템을 지원하는 플랫폼(예: Discord, Telegram)에서 사용자의 그룹 역할에 기반한 접근 제어가 가능합니다:

{
  "security": {
    "groups": {
      "roleBasedAccess": {
        "adminOnly": false,
        "allowedRoles": ["ai-user", "premium"]
      }
    }
  }
}

속도 제한

접근 제어 외에도 속도 제한은 중요한 보안 수단입니다. 단일 사용자의 과도한 AI 리소스 사용을 방지합니다:

{
  "security": {
    "rateLimit": {
      "enabled": true,
      "maxRequests": 30,
      "windowSeconds": 3600,
      "cooldownMessage": "사용 횟수가 상한에 도달했습니다. 잠시 후 다시 시도해 주세요."
    }
  }
}

위 설정은 각 사용자의 시간당 최대 30회 AI 상호작용을 제한합니다. 속도 제한은 사용자별로 독립 계산되며 채널 간 공유됩니다. 즉, 같은 사용자가 Telegram에서 20회를 사용하면 Discord에서는 10회만 남습니다.

콘텐츠 보안

OpenClaw은 기본적인 콘텐츠 보안 필터링 기능도 제공합니다. 사용자 입력이나 AI 응답에 특정 키워드가 포함될 때 차단하도록 설정할 수 있습니다:

{
  "security": {
    "contentFilter": {
      "enabled": true,
      "blockedPatterns": ["민감한단어1", "민감한단어2"],
      "action": "block_and_warn"
    }
  }
}

actionblock_silently(무음 차단)와 block_and_warn(차단 및 사용자에게 알림) 두 가지 모드를 지원합니다.

보안 설정 모범 사례

프로덕션 환경에서는 다음 보안 전략 조합을 권장합니다: 전역 화이트리스트의 엄격 모드를 활성화하여 알려진 사용자만 접근 허용, 그룹 채팅 시나리오에서 개인 메시지 페어링을 활성화하여 인증 레이어 추가, 합리적인 속도 제한을 설정하여 남용 방지, 그룹 화이트리스트를 설정하여 Bot이 알 수 없는 그룹에 끌려가는 것을 방지, 정기적으로 페어링 기록과 사용 로그를 검토합니다.

이러한 보안 메커니즘은 유연하게 조합할 수 있습니다. 내부 팀 사용의 경우 화이트리스트와 속도 제한만으로 충분합니다. 대중을 대상으로 하는 서비스의 경우 모든 보안 조치를 활성화하는 것을 권장합니다.

OpenClaw는 무료 오픈소스 개인 AI 어시스턴트로, WhatsApp, Telegram, Discord 등 다양한 플랫폼을 지원합니다