Skip to content

Global Configuration

Serg edited this page May 25, 2026 · 2 revisions

Global Settings

This page explains the main settings in configs/config.txt, including scan depth, default concurrency limits, per-function concurrency, and per-function delay values.

Note

This page provides a concise operational overview. Let ReconSR create configs/config.txt automatically, then use the console function selection workflow to enable or disable module functions where possible. See CLI Operations for runtime usage details.

The generated file depends on the functions that modules expose at startup. It can change when API keys are added or removed, when local database files are installed or removed, or when functions are selected from the console. The examples below are for understanding the structure, not for copying as a complete configuration.

Configuration File

The global configuration file is located at:

configs/config.txt

When the file is missing, ReconSR creates it from the functions available at startup. The generated content can change depending on API keys, local databases, and console-selected functions.

Scan Depth Settings

These settings control how far ReconSR continues discovery from the initial target.

max_depth = 0
strict_depth = false
Setting Description
max_depth Maximum scan depth.
strict_depth Controls whether depth handling is strict.

Global Concurrency and Delay Defaults

These settings define default execution limits and safety boundaries.

global_max_concurrency = 200
default_func_concurrency = 30
max_allowed_func_concurrency = 100
default_func_delay = 200
Setting Description
global_max_concurrency Global maximum concurrency limit across function execution.
default_func_concurrency Default per-function concurrency when a module does not provide its own limit.
max_allowed_func_concurrency Maximum allowed per-function concurrency. This protects the system from excessive values configured for individual functions.
default_func_delay Default delay when a function does not provide its own delay value.

If a function is configured with a higher concurrency than the allowed global limits, the global limits take precedence.

Warning

Change concurrency and delay values only when you understand the operational impact. For API-backed modules, confirm that the configured values comply with the limits of your third-party service plan. If you manually override these values in configs/config.txt, ReconSR does not automatically adjust them to match external provider limits.

Function Entries

Module functions are listed under module sections.

Example:

[hunterio]

[dns]
#get_txt concurrency=2 delay=0
#get_mx concurrency=2 delay=0
#get_ns concurrency=2 delay=0

[haveibeenpwned]
get_email_breaches concurrency=15 delay=65

A function entry has this structure:

function_name concurrency=<number> delay=<milliseconds>
Field Description
function_name Function exposed by the module.
concurrency Number of targets passed to that module function at the same time.
delay Wait time, in milliseconds, used by the module when processing a target.

Note

If a function's delay is set to 0, ReconSR does not apply an additional global delay for that function. In that case, pacing may be controlled inside the module itself or by module-specific network timing. See Network Configuration for network timeouts, retry delays, and provider-specific pacing.

Enabling and Disabling Functions

Functions prefixed with # are disabled.

Example disabled function:

[dns]
#get_txt concurrency=2 delay=0

Example enabled function:

[maxmind]
get_ip_asn concurrency=500 delay=0

The preferred way to enable or disable functions is through the console selection workflow. When functions are selected in the console, ReconSR updates configs/config.txt automatically.

Manual editing is also possible:

  • To disable a function, add # at the beginning of the function line.
  • To enable a function, remove # from the beginning of the function line.

API Keys and Local Databases Affect Available Functions

Some modules expose functions only when required API keys or local databases are available.

Examples:

If a module does not expose a function, that function is not returned to the dispatcher and is not scheduled for execution. In configs/config.txt, this can appear as a module section with no function entries.

Example:

[hunterio]

[abuseipdb]

[virustotal]

These empty sections indicate that the modules did not return configurable functions for the generated file.

Partial Example

The following example is intentionally incomplete. It shows the general structure of configs/config.txt, but the actual generated file can differ.

# ReconSR Configuration File
max_depth = 2
strict_depth = false
timeout = 2m0s
global_max_concurrency = 200
default_func_concurrency = 30
max_allowed_func_concurrency = 100
default_func_delay = 200

# Modules and Functions (comment out with # to disable)

[anubis]
get_domains concurrency=3 delay=600

[hunterio]

[hackertarget]
get_hosts concurrency=5 delay=2000

[haveibeenpwned]
#get_email_breaches concurrency=15 delay=65

[whois]
#get_whois concurrency=5 delay=2000

[ip2location]
get_geo_ip concurrency=500 delay=0
get_ip_asn concurrency=500 delay=0

[maxmind]
get_geo_ip concurrency=30 delay=200
get_ip_asn concurrency=500 delay=0

Clone this wiki locally