Skip to content

Configuration

Robert Whitney edited this page Dec 28, 2024 · 1 revision

Configuration

This guide provides detailed instructions on configuring BBCrawler. Use the .env file to set up environment variables for the various services. Below is an explanation of each configuration option, along with recommended best practices.


Database Configuration

Variable Description Example Value
MYSQL_USER The username for the MySQL database. app
MYSQL_PASSWORD The password for the MySQL user. Use a secure value. securepassword
MYSQL_ROOT_PASSWORD The root password for the MySQL database. rootsecurepassword
MYSQL_DATABASE The name of the database used by BBCrawler. app
MYSQL_HOST The host where the MySQL server is running. database
MYSQL_PORT The port for connecting to the MySQL database. 3306

Server Configuration

Variable Description Example Value
LISTEN_PORT The port on which the API will listen for requests. 8080
API_URL The URL for accessing the API. http://api:8080
SERVER_STALE_AGE The duration after which a server is considered stale. 18
SERVER_STALE_UNIT The unit for the stale age duration (e.g., MONTH, DAY). MONTH
SERVER_REFRESH_INTERVAL The interval for refreshing server data. 12
SERVER_REFRESH_UNIT The unit for the refresh interval (e.g., HOUR, MINUTE). HOUR

Scanning Configuration

Variable Description Example Value
CONCURRENT_SCANS The number of concurrent scans allowed. 1
CONCURRENT_CONNECTIONS The maximum number of connections during a scan. 50000
SCAN_QUEUE_NAME The name of the RabbitMQ queue for scan jobs. range-scan-queue

Queue Configuration

Variable Description Example Value
QUEUE_NAME The name of the RabbitMQ queue for range scanners. range-scanners
QUEUE_HOST The RabbitMQ host. rabbitmq
QUEUE_USERNAME The RabbitMQ username. app
QUEUE_PASSWORD The RabbitMQ password. Use a secure value. securepassword
RABBITMQ_DEFAULT_USER Default admin username for RabbitMQ. admin
RABBITMQ_DEFAULT_PASS Default admin password for RabbitMQ. Secure it. securepassword

Discord Integration

Variable Description Example Value
DISCORD_WEBHOOK_URL The webhook URL for sending notifications to Discord. https://discordapp.com/...
DISCORD_GUILD_ID The ID of the Discord guild (server). 123456789012345678
PRIVILEGED_USER_IDS Space-separated list of Discord user IDs with special roles. 123456789012345678 987654321098765432
DISCORD_CLIENT_ID The client ID for the Discord bot. discord-client-id
DISCORD_TOKEN The token for the Discord bot. discord-bot-token

Debugging and Logging

Variable Description Example Value
DEBUG Enable debugging output (1 for enabled, 0 for disabled). 0
VERBOSE Enable verbose logging (1 for enabled, 0 for disabled). 0

Geolocation Data

Variable Description Example Value
MAXMIND_LICENSE_KEY The license key for MaxMind geolocation services. Sign up for free at MaxMind. your-license-key

Best Practices

  1. Secure Your Passwords: Replace default passwords with strong, unique ones.
  2. Environment Isolation: Use separate environments for development and production to prevent accidental data exposure.
  3. Monitor Logs: Enable debugging only when needed and monitor logs for potential issues.

For further details on configuring specific components, visit the Components Overview page. If you encounter any issues, refer to the FAQ or reach out on our Discord server.