Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
canarytokens-docker — Конфигурация Docker для быстрого развёртывания собственных Canarytokens. | Kitploit
Инструменты/GitHubGitHub/thinkst/canarytokens-docker
Оборонительные ИнструментыСетевая безопасностьОбнаружение ВторженийРеагирование на Инциденты
GitHubthinkst/canarytokens-docker

canarytokens-docker

Конфигурация Docker для быстрого развёртывания собственных Canarytokens.

Репозиторий
658119192 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Dockerized Canarytokens

от Thinkst Applied Research

Обзор

Canarytokens помогают отслеживать активность и действия в вашей сети.

Если у вас возникли проблемы, пожалуйста, ознакомьтесь с нашим FAQ здесь или создайте issue, и мы постараемся ответить вам как можно скорее.

Содержание

  • Кодекс поведения
  • Предварительные требования
  • Переход на v3
  • Настройка (в Ubuntu)
  • Сохранение данных
  • Как включить HTTPS
  • Включение базовой аутентификации для вашего сайта Canarytokens
  • Что нового?
  • FAQ
  • Участие в разработке

Кодекс поведения

Этот проект и все, кто участвует в нём, регулируются Кодексом поведения. Участвуя, вы обязуетесь соблюдать этот кодекс. Пожалуйста, сообщайте о неприемлемом поведении на [email protected].

Предварительные требования

  • Как минимум одно доменное имя. Если вы хотите включить отслеживание открытия PDF-файлов, нужно как минимум два домена.
  • Docker-хост с доступом в интернет. Вы можете быстро установить Docker на Linux-хост.

Переход на v3

  • В зависимости от того, используете ли вы letsencrypt: docker compose -f docker-compose.yml down или docker compose -f docker-compose-letsencrypt.yml down
  • Если вы используете более старую версию Docker, вам потребуется обновить её.
  • docker-compose больше не работает, и перед запуском вашего экземпляра Canarytokens с помощью docker compose необходимо выполнить docker network prune. Canarytokens v2 по-прежнему будет работать.
  • Скачайте последнюю версию репозитория canarytokens-docker.
  • И соответственно: docker compose -f docker-compose.yml up -d или docker compose -f docker-compose-letsencrypt.yml up -d

Примечание: в обновлённом репозитории canarytokens-docker больше нет Dockerfile для Canarytokens v2, поэтому для его запуска необходимо использовать образ с тегом thinkst/canarytokens:v2_latest. Мы настоятельно рекомендуем перейти на v3. Пожалуйста, свяжитесь с нами, если у вас возникли проблемы с миграцией.

Настройка (в Ubuntu)

  • Запустите ваш Docker-хост и запишите публичный IP-адрес.
  • Настройте ваши домены так, чтобы их серверы имён указывали на публичный IP-адрес Docker-хоста. Это требует изменения у вашего регистратора. Простого изменения NS-записей в зонном файле недостаточно. Вам понадобится A-запись вашего домена, указывающая на ваш публичный IP-адрес.
  • Клонируйте Docker-настройку:
$ git clone https://github.com/thinkst/canarytokens-docker
$ cd canarytokens-docker
  • Установите Docker compose (если он ещё не установлен):
$ sudo apt-get install python3-pip python3-dev
$ sudo pip install -U docker-compose
#if this breaks with PyYAML errors, install the libyaml development package
# sudo apt-get install libyaml-dev
  • Мы распространяем два файла .env, которые будут использоваться для настройки, а именно switchboard.env.dist и frontend.env.dist. Вам нужно скопировать/переименовать их в switchboard.env и frontend.env соответственно (это гарантирует, что ваша конфигурация не будет потеряна при загрузке изменений). После этого вы можете отредактировать их:
  1. Пожалуйста, просмотрите оба ваших новых файла конфигурации, switchboard.env и frontend.env, и заполните раздел Required Settings. Раздел Optional Settings не обязателен для работы и имеет разумные значения по умолчанию, поэтому не меняйте их, если в этом нет необходимости.

  2. Затем решите, какого почтового провайдера вы хотите использовать для отправки уведомлений. Вам нужно выбрать между mailgun, SMTP и sendgrid. Соответствующие необходимые детали можно найти в соответствующем файле .env.

  3. Сгенерируйте единственный уникальный ключ-зерно WireGuard, чтобы установить его как CANARY_WG_PRIVATE_KEY_SEED в обоих файлах switchboard.env и frontend.env, с помощью команды:

dd bs=32 count=1 if=/dev/urandom 2>/dev/null | base64
  • Вот примеры файлов для настройки, в которой используются:
    • домены example1.com, example2.com и example3.com (для PDF) для срабатываний canarytoken через switchboard

    • публичный IP-адрес 1.1.1.1 для срабатываний switchboard

    • домен 'my.domain' для обслуживания фронтенда

    • доменное имя Mailgun 'x.y' и API-ключ 'zzzzzzzzzz'

    • ключ-зерно WireGuard vk/GD+frlhve/hDTTSUvqpQ/WsQtioKAri0Rt5mg7dw=

    • frontend.env

#These domains are used for general purpose tokens
CANARY_PUBLIC_IP=1.1.1.1
CANARY_DOMAINS=example1.com,example2.com

#These domains are only used for PDF tokens
CANARY_NXDOMAINS=example3.com

#Requires a Google Cloud API key to generate an incident map on the history page with the Maps JavaScript API
CANARY_GOOGLE_API_KEY=<grab google maps api key>
LOG_FILE=frontend.log
  • switchboard.env (Пример использования Mailgun для электронной почты)
CANARY_PUBLIC_DOMAIN=mydomain.com
LOG_FILE=switchboard.log
CANARY_MAILGUN_DOMAIN_NAME=x.y
CANARY_MAILGUN_API_KEY=zzzzzzzzzz
[email protected]
CANARY_ALERT_EMAIL_FROM_DISPLAY="Example Canarytokens"
CANARY_ALERT_EMAIL_SUBJECT="Canarytoken"
CANARY_WG_PRIVATE_KEY_SEED=vk/GD+frlhve/hDTTSUvqpQ/WsQtioKAri0Rt5mg7dw=
  • Наконец, загрузите и запустите образы:
$ docker compose up
  • Фронтенд и switchboard теперь будут работать в режиме переднего плана. Фронтенд доступен по адресу http://example1.com/generate. Если вы хотите запустить их в фоновом режиме, вы можете использовать
$ docker compose up -d

ПРИМЕЧАНИЕ: Если у вас только один домен, и вы хотите использовать PDF-токены, вы можете использовать поддомены для CANARY_NXDOMAINS. Используя example.com в качестве вашего домена, вы можете установить CANARY_NXDOMAINS в nx.example.com. Затем войдите в консоль вашего DNS-менеджера (где вы можете редактировать DNS-записи вашего домена) и добавьте NS-запись nx.example.com, указывающую на example.com.

Сохранение данных

Токены сохраняются в файле базы данных Redis, который находится вне Docker-контейнеров. Ищите dump.rdb в каталоге canarytokens-docker/data.

Если вы хотите удалить все свои токены, удалите dump.rdb.

Как включить HTTPS

У нас есть отдельный файл docker-compose, который автоматизирует (в основном) запуск сервера Canarytokens с HTTPS. Вам нужно сделать следующее:

  • Отредактируйте certbot.env. Вам нужно указать ваш домен и адрес электронной почты (они необходимы для процесса регистрации certbot). Например:
# Specify a single domain name
MY_DOMAIN_NAME=example.com

# or multiple domains names with this different key (comment out MY_DOMAIN_NAME above if you do):
# MY_DOMAIN_NAMES=example.com anotherexample.net thirdexample.org

[email protected]
  • Теперь, когда вы хотите запустить ваш сервер, используйте docker compose -f docker-compose-letsencrypt.yml up, что запустит сервер в режиме переднего плана, чтобы вы могли убедиться, что всё запускается правильно.

  • Если всё работает, вы можете нажать CTRL+C, выполнить docker compose -f docker-compose-letsencrypt.yml down для перехода в чистое состояние, а затем снова выполнить docker compose -f docker-compose-letsencrypt.yml up -d с добавленным -d для запуска сервера в фоновом режиме (в режиме демона).

  • Имейте в виду, что при использовании метода HTTPS для регистрации сертификата будут использованы указанные вами адрес электронной почты и доменное имя. Вы можете прочитать о процессе Let's Encrypt (с использованием certbot) здесь. Процесс включает проверку того, что вы являетесь владельцем указанного домена, и регистрацию вас в Let's Encrypt.

Скачать инструмент