1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
|
# (Built-in defaults for the arti configuration format.)
# Default port to use when listening to SOCKS connections. We always
# listen on localhost.
#
# Note that only one process can listen on a given port at a time.
socks_port = 9150
# Configure logging
[logging]
# Enable logging to journald where available
journald = false
# Specify filtering directives for tracing.
#
# It can be as simple as a single loglevel, or as complicated as a
# list with per-module settings.
#
# You can override this setting with the -l, --log-level command-line option.
#
# Example:
# trace_filter = "info,tor_proto::channel=trace"
#
# For more information, see https://docs.rs/tracing-subscriber/0.2.20/tracing_subscriber/filter/struct.EnvFilter.html
trace_filter = "debug"
# Locations to use for storing things on disk.
#
# These paths can use ~ to indicate the user's home directory, or a set
# of shell-style variables to indicate platform-specific paths.
#
# Supported variables are APP_CACHE, APP_CONFIG, APP_SHARED_DATA,
# APP_LOCAL_DATA, and USER_HOME.
#
# Multiple processes can share the same cache_dir. If they do, one of them
# will download directory information for all of the others.
#
# The state directory is not yet used.
[storage]
cache_dir = "${APP_CACHE}"
state_dir = "${APP_LOCAL_DATA}"
# Replacement values for consensus parameters. This is an advanced option
# and you probably should leave it alone. Not all parameters are supported.
# These are case-sensitive.
#
#[override_net_params]
#circwindow = 1000
#min_paths_for_circs_pct = 60
# Configuration for timing when and how often we should download directory
# information.
#
# We use a randomized algorithm for determining when to retry. With
# the various retry_* options, "num" is the number of downloads to
# attempt, and "initial_delay" is a parameter determining both our
# _first_ delay before we reattempt, and our _minimum_ delay for
# subsequent attempts.
[download_schedule]
# How to retry our initial bootstrapping when we're trying to start up.
retry_bootstrap = { num = 128, initial_delay = "1 sec" }
# How to retry a single consensus download.
retry_consensus = { num = 3, initial_delay = "1 sec" }
# How to retry a set of authority certificate downloads.
retry_certs = { num = 3, initial_delay = "1 sec" }
# How to retry a set of microdescriptor downloads.
retry_microdescs = { num = 3, initial_delay = "1 sec" }
# How many microdescriptor fetches to launch at once.
microdesc_parallelism = 4
# Tells the circuit manager rule for constructing circuit paths
[path_rules]
# How far apart do relays need to be in IP-space before they can be
# used in the same circuit? For example, "subnets_family_v4"=16 below
# means that two relays cannot appear in the same circuit if their
# IPv4 addresses begin with the same 16 bits.
enforce_distance = { "subnets_family_v4" = 16, "subnets_family_v6" = 32 }
# Rules for how long circuits should survive.
[circuit_timing]
# Once a circuit has been used for a request, we stop giving it out for
# other requests after this time.
max_dirtiness = "10 minutes"
# Rules for how long pending requests should wait for a circuit.
[request_timing]
# When a circuit is requested, we keep trying to build circuits for up
# to this long before the request gives up.
request_timeout = "60 sec"
# When a circuit is requested, we make up to this many attempts to build
# circuits for it before the request gives up.
request_max_retries = 32
# If a circuit is finished that would satisfy a pending request, but the
# request is still waiting for its own circuits to complete, the request
# will wait this long before using the unexpectedly available circuit.
request_loyalty = "50 msec"
# Rules for client configuration
[addr_config]
# Should we allow attempts to make Tor connections to local addresses?
allow_local_addrs = false
|