Skip to content

Advanced Configuration

Casey Barnett edited this page Apr 29, 2025 · 3 revisions

Advanced Configuration ⚖️

This guide covers advanced tuning options for StatusZERO. Use these to customize performance, batch behavior, and UI preferences.

⚠️ Warning: Incorrect settings may result in DNS rate limiting or inaccurate results. Proceed with care.

You must restart the app after modifying the .env

🔁 Batch Limit and Cron Hour

StatusZERO supports modifying two key operational settings:

1. BATCH_LIMIT

Controls how many DNSBL queries are sent in parallel. Defaults to 256, but can be increased to 512, 1024, or more depending on your server and DNS resolver performance.

Set it in your .env file:

BATCH_LIMIT=512

Higher values can improve performance but may risk DNS rate limits.

Reminder: *To prevent accidental rate limits, a minimum sleep period is enforced. This means that batches smaller than 256, will have the same sleep period as a batch of 256.

2. CRON_HOUR

Determines the hour (in 24h format) at which daily batch checks run. This uses your server's local time.

Set it in your .env file:

CRON_HOUR=3

This will trigger all IPs to be checked daily at 03:00 local time.


🎨 UI Customizations

You may customize:

  • Theme defaults (data-bs-theme="dark" in HTML root)
  • Text or metadata (/views/index.ejs)

All UI files are located in the public/ and views/ folders.


🔐 Token Rotation

To rotate your Admin Token:

  1. Stop the app.
  2. Open .env
  3. Replace the adminToken value
  4. Restart the app

The new token will be required for all future IP modifications.


🌐 Rate Limit Safeguards

If you're checking many IPs, consider:

  • Lowering your BATCH_LIMIT if DNS rate limits occur
  • Using a local DNS resolver

Failure to respect these limits may cause temporary blacklist bans or IP throttling.


For all other technical details, feel free to explore the source code or open an issue in GitHub!

Need help? See the FAQ or Security Model for more specifics.

Clone this wiki locally