asynchronous Python tool for real-time subdomain monitoring. Utilizes certificate transparency logs, performs DNS resolution, and supports multiple output methods (stdout, Telegram, RabbitMQ)
-
Clone the repository:
git clone https://github.com/bodier123/SubWatcher.git cd SubWatcher -
Install the required dependencies:
pip install -r requirements.txt
SubWatcher supports multiple input methods and output options:
-
Command-line arguments:
python subwatcher.py example.com example.org --stdout
-
File input:
python subwatcher.py -f domains.txt --stdout
-
Piped input:
echo "example.com" | python subwatcher.py --stdout
-
Output to file:
python subwatcher.py example.com -o results.txt
You can combine these methods:
echo "example.net" | python subwatcher.py example.com -f more_domains.txt -o results.txt --stdout --telegramdomains: Space-separated list of domains to monitor-f, --file: File containing list of domains (one per line)--stdout: Enable output to standard output--telegram: Enable Telegram notifications--rabbitmq: Enable RabbitMQ output-o, --output: Specify an output file for results
When using Telegram or RabbitMQ outputs, set the following environment variables:
TELEGRAM_BOT_TOKEN: Your Telegram Bot API tokenTELEGRAM_CHAT_ID: The chat ID to send notifications toRABBITMQ_URL: The URL of your RabbitMQ server
- Docker
- Docker Compose
-
Build the Docker image:
docker-compose build
-
Run SubWatcher using Docker:
docker-compose run --rm subwatcher example.com --stdout