trap-manager: Add option to ignore traffic selectors from acquire events
[strongswan.git] / conf / options / charon.opt
1 charon {}
2         Options for the charon IKE daemon.
3
4         Options for the charon IKE daemon.
5
6         **Note**: Many of the options in this section also apply to **charon-cmd**
7         and other **charon** derivatives.  Just use their respective name (e.g.
8         **charon-cmd** instead of **charon**). For many options defaults can be
9         defined in the **libstrongswan** section.
10
11 charon.accept_unencrypted_mainmode_messages = no
12         Accept unencrypted ID and HASH payloads in IKEv1 Main Mode.
13
14         Accept unencrypted ID and HASH payloads in IKEv1 Main Mode.
15
16         Some implementations send the third Main Mode message unencrypted, probably
17         to find the PSKs for the specified ID for authentication. This is very
18         similar to Aggressive Mode, and has the same security implications: A
19         passive attacker can sniff the negotiated Identity, and start brute forcing
20         the PSK using the HASH payload.
21
22         It is recommended to keep this option to no, unless you know exactly
23         what the implications are and require compatibility to such devices (for
24         example, some SonicWall boxes).
25
26 charon.block_threshold = 5
27         Maximum number of half-open IKE_SAs for a single peer IP.
28
29 charon.cert_cache = yes
30         Whether relations in validated certificate chains should be cached in
31         memory.
32
33 charon.cisco_unity = no
34         Send Cisco Unity vendor ID payload (IKEv1 only).
35
36 charon.close_ike_on_child_failure = no
37         Close the IKE_SA if setup of the CHILD_SA along with IKE_AUTH failed.
38
39 charon.cookie_threshold = 10
40         Number of half-open IKE_SAs that activate the cookie mechanism.
41
42 charon.crypto_test.bench = no
43         Benchmark crypto algorithms and order them by efficiency.
44
45 charon.crypto_test.bench_size = 1024
46         Buffer size used for crypto benchmark.
47
48 charon.crypto_test.bench_time = 50
49         Number of iterations to test each algorithm.
50
51 charon.crypto_test.on_add = no
52         Test crypto algorithms during registration (requires test vectors provided
53         by the _test-vectors_ plugin).
54
55 charon.crypto_test.on_create = no
56         Test crypto algorithms on each crypto primitive instantiation.
57
58 charon.crypto_test.required = no
59         Strictly require at least one test vector to enable an algorithm.
60
61 charon.crypto_test.rng_true = no
62         Whether to test RNG with TRUE quality; requires a lot of entropy.
63
64 charon.dh_exponent_ansi_x9_42 = yes
65         Use ANSI X9.42 DH exponent size or optimum size matched to cryptographic
66         strength.
67
68 charon.dns1
69         DNS server assigned to peer via configuration payload (CP).
70
71 charon.dns2
72         DNS server assigned to peer via configuration payload (CP).
73
74 charon.dos_protection = yes
75         Enable Denial of Service protection using cookies and aggressiveness checks.
76
77 charon.ecp_x_coordinate_only = yes
78         Compliance with the errata for RFC 4753.
79
80 charon.flush_auth_cfg = no
81         Free objects during authentication (might conflict with plugins).
82
83         If enabled objects used during authentication (certificates, identities
84         etc.) are released to free memory once an IKE_SA is established. Enabling
85         this might conflict with plugins that later need access to e.g. the used
86         certificates.
87
88 charon.fragment_size = 0
89         Maximum size (complete IP datagram size in bytes) of a sent IKE fragment
90         when using proprietary IKEv1 or standardized IKEv2 fragmentation (0 for
91         address family specific default values). If specified this limit is used
92         for both IPv4 and IPv6.
93
94 charon.group
95         Name of the group the daemon changes to after startup.
96
97 charon.half_open_timeout = 30
98         Timeout in seconds for connecting IKE_SAs (also see IKE_SA_INIT DROPPING).
99
100 charon.hash_and_url = no
101         Enable hash and URL support.
102
103 charon.host_resolver.max_threads = 3
104         Maximum number of concurrent resolver threads (they are terminated if
105         unused).
106
107 charon.host_resolver.min_threads = 0
108         Minimum number of resolver threads to keep around.
109
110 charon.i_dont_care_about_security_and_use_aggressive_mode_psk = no
111         Allow IKEv1 Aggressive Mode with pre-shared keys as responder.
112
113         If enabled responders are allowed to use IKEv1 Aggressive Mode with
114         pre-shared keys, which is discouraged due to security concerns (offline
115         attacks on the openly transmitted hash of the PSK).
116
117 charon.ignore_routing_tables
118         A space-separated list of routing tables to be excluded from route lookups.
119
120 charon.ignore_acquire_ts = no
121         Whether to ignore the traffic selectors from the kernel's acquire events for
122         IKEv2 connections (they are not used for IKEv1).
123
124         If this is disabled the traffic selectors from the kernel's acquire events,
125         which are derived from the triggering packet, are prepended to the traffic
126         selectors from the configuration for IKEv2 connection. By enabling this,
127         such specific traffic selectors will be ignored and only the ones in the
128         config will     be sent. This always happens for IKEv1 connections as the
129         protocol only supports one set of traffic selectors per CHILD_SA.
130
131 charon.ikesa_limit = 0
132         Maximum number of IKE_SAs that can be established at the same time before
133         new connection attempts are blocked.
134
135 charon.ikesa_table_segments = 1
136         Number of exclusively locked segments in the hash table.
137
138 charon.ikesa_table_size = 1
139         Size of the IKE_SA hash table.
140
141 charon.inactivity_close_ike = no
142         Whether to close IKE_SA if the only CHILD_SA closed due to inactivity.
143
144 charon.init_limit_half_open = 0
145         Limit new connections based on the current number of half open IKE_SAs, see
146         IKE_SA_INIT DROPPING in **strongswan.conf**(5).
147
148 charon.init_limit_job_load = 0
149         Limit new connections based on the number of queued jobs.
150
151         Limit new connections based on the number of jobs currently queued for
152         processing (see IKE_SA_INIT DROPPING).
153
154 charon.initiator_only = no
155         Causes charon daemon to ignore IKE initiation requests.
156
157 charon.install_routes = yes
158         Install routes into a separate routing table for established IPsec tunnels.
159
160 charon.install_virtual_ip = yes
161         Install virtual IP addresses.
162
163 charon.install_virtual_ip_on
164         The name of the interface on which virtual IP addresses should be installed.
165
166         The name of the interface on which virtual IP addresses should be installed.
167         If not specified the addresses will be installed on the outbound interface.
168
169 charon.integrity_test = no
170         Check daemon, libstrongswan and plugin integrity at startup.
171
172 charon.interfaces_ignore
173         A comma-separated list of network interfaces that should be ignored, if
174         **interfaces_use** is specified this option has no effect.
175
176 charon.interfaces_use
177         A comma-separated list of network interfaces that should be used by charon.
178         All other interfaces are ignored.
179
180 charon.keep_alive = 20s
181         NAT keep alive interval.
182
183 charon.leak_detective.detailed = yes
184         Includes source file names and line numbers in leak detective output.
185
186 charon.leak_detective.usage_threshold = 10240
187         Threshold in bytes for leaks to be reported (0 to report all).
188
189 charon.leak_detective.usage_threshold_count = 0
190         Threshold in number of allocations for leaks to be reported (0 to report
191         all).
192
193 charon.load
194         Plugins to load in the IKE daemon charon.
195
196 charon.load_modular = no
197         Determine plugins to load via each plugin's load option.
198
199         If enabled, the list of plugins to load is determined via the value of the
200         _charon.plugins.<name>.load_ options.  In addition to a simple boolean flag
201         that option may take an integer value indicating the priority of a plugin,
202         which would influence the order of a plugin in the plugin list (the default
203         is 1). If two plugins have the same priority their order in the default
204         plugin list is preserved. Enabled plugins not found in that list are ordered
205         alphabetically before other plugins with the same priority.
206
207 charon.max_packet = 10000
208         Maximum packet size accepted by charon.
209
210 charon.make_before_break = no
211         Initiate IKEv2 reauthentication with a make-before-break scheme.
212
213         Initiate IKEv2 reauthentication with a make-before-break instead of a
214         break-before-make scheme. Make-before-break uses overlapping IKE and
215         CHILD_SA during reauthentication by first recreating all new SAs before
216         deleting the old ones. This behavior can be beneficial to avoid connectivity
217         gaps during reauthentication, but requires support for overlapping SAs by
218         the peer. strongSwan can handle such overlapping SAs since version 5.3.0.
219
220 charon.multiple_authentication = yes
221         Enable multiple authentication exchanges (RFC 4739).
222
223 charon.nbns1
224         WINS servers assigned to peer via configuration payload (CP).
225
226 charon.nbns2
227         WINS servers assigned to peer via configuration payload (CP).
228
229 charon.port = 500
230         UDP port used locally. If set to 0 a random port will be allocated.
231
232 charon.port_nat_t = 4500
233         UDP port used locally in case of NAT-T. If set to 0 a random port will be
234         allocated.  Has to be different from **charon.port**, otherwise a random
235         port will be allocated.
236
237 charon.prefer_temporary_addrs = no
238         By default public IPv6 addresses are preferred over temporary ones (RFC
239         4941), to make connections more stable. Enable this option to reverse this.
240
241 charon.process_route = yes
242         Process RTM_NEWROUTE and RTM_DELROUTE events.
243
244 charon.processor.priority_threads {}
245         Section to configure the number of reserved threads per priority class
246         see JOB PRIORITY MANAGEMENT in **strongswan.conf**(5).
247
248 charon.receive_delay = 0
249         Delay in ms for receiving packets, to simulate larger RTT.
250
251 charon.receive_delay_response = yes
252         Delay response messages.
253
254 charon.receive_delay_request = yes
255         Delay request messages.
256
257 charon.receive_delay_type = 0
258         Specific IKEv2 message type to delay, 0 for any.
259
260 charon.replay_window = 32
261         Size of the AH/ESP replay window, in packets.
262
263 charon.retransmit_base = 1.8
264         Base to use for calculating exponential back off, see IKEv2 RETRANSMISSION
265         in **strongswan.conf**(5).
266
267 charon.retransmit_timeout = 4.0
268         Timeout in seconds before sending first retransmit.
269
270 charon.retransmit_tries = 5
271         Number of times to retransmit a packet before giving up.
272
273 charon.retry_initiate_interval = 0
274         Interval to use when retrying to initiate an IKE_SA (e.g. if DNS resolution
275         failed), 0 to disable retries.
276
277 charon.reuse_ikesa = yes
278         Initiate CHILD_SA within existing IKE_SAs.
279
280 charon.routing_table
281         Numerical routing table to install routes to.
282
283 charon.routing_table_prio
284         Priority of the routing table.
285
286 charon.send_delay = 0
287         Delay in ms for sending packets, to simulate larger RTT.
288
289 charon.send_delay_response = yes
290         Delay response messages.
291
292 charon.send_delay_request = yes
293         Delay request messages.
294
295 charon.send_delay_type = 0
296         Specific IKEv2 message type to delay, 0 for any.
297
298 charon.send_vendor_id = no
299         Send strongSwan vendor ID payload
300
301 charon.signature_authentication = yes
302         Whether to enable Signature Authentication as per RFC 7427.
303
304 charon.signature_authentication_constraints = yes
305         Whether to enable constraints against IKEv2 signature schemes.
306
307         If enabled, signature schemes configured in _rightauth_, in addition to
308         getting used as constraints against signature schemes employed in the
309         certificate chain, are also used as constraints against the signature scheme
310         used by peers during IKEv2.
311
312 charon.start-scripts {}
313         Section containing a list of scripts (name = path) that are executed when
314         the daemon is started.
315
316 charon.stop-scripts {}
317         Section containing a list of scripts (name = path) that are executed when
318         the daemon is terminated.
319
320 charon.threads = 16
321         Number of worker threads in charon.
322
323         Number of worker threads in charon. Several of these are reserved for long
324         running tasks in internal modules and plugins. Therefore, make sure you
325         don't set this value too low. The number of idle worker threads listed in
326         _ipsec statusall_ might be used as indicator on the number of reserved
327         threads.
328
329 charon.tls.cipher
330         List of TLS encryption ciphers.
331
332 charon.tls.key_exchange
333         List of TLS key exchange methods.
334
335 charon.tls.mac
336         List of TLS MAC algorithms.
337
338 charon.tls.suites
339         List of TLS cipher suites.
340
341 charon.user
342         Name of the user the daemon changes to after startup.
343
344 charon.x509.enforce_critical = yes
345         Discard certificates with unsupported or unknown critical extensions.