Annotation of embedaddon/strongswan/conf/options/charon.opt, revision 1.1.1.1
1.1 misho 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_private_algs = no
12: Deliberately violate the IKE standard's requirement and allow the use of
13: private algorithm identifiers, even if the peer implementation is unknown.
14:
15: charon.accept_unencrypted_mainmode_messages = no
16: Accept unencrypted ID and HASH payloads in IKEv1 Main Mode.
17:
18: Accept unencrypted ID and HASH payloads in IKEv1 Main Mode.
19:
20: Some implementations send the third Main Mode message unencrypted, probably
21: to find the PSKs for the specified ID for authentication. This is very
22: similar to Aggressive Mode, and has the same security implications: A
23: passive attacker can sniff the negotiated Identity, and start brute forcing
24: the PSK using the HASH payload.
25:
26: It is recommended to keep this option to no, unless you know exactly
27: what the implications are and require compatibility to such devices (for
28: example, some SonicWall boxes).
29:
30: charon.block_threshold = 5
31: Maximum number of half-open IKE_SAs for a single peer IP.
32:
33: charon.cert_cache = yes
34: Whether relations in validated certificate chains should be cached in
35: memory.
36:
37: charon.cache_crls = no
38: Whether Certificate Revocation Lists (CRLs) fetched via HTTP or LDAP should
39: be saved under a unique file name derived from the public key of the
40: Certification Authority (CA) to **/etc/ipsec.d/crls** (stroke) or
41: **/etc/swanctl/x509crl** (vici), respectively.
42:
43: charon.cisco_unity = no
44: Send Cisco Unity vendor ID payload (IKEv1 only).
45:
46: charon.close_ike_on_child_failure = no
47: Close the IKE_SA if setup of the CHILD_SA along with IKE_AUTH failed.
48:
49: charon.cookie_threshold = 10
50: Number of half-open IKE_SAs that activate the cookie mechanism.
51:
52: charon.crypto_test.bench = no
53: Benchmark crypto algorithms and order them by efficiency.
54:
55: charon.crypto_test.bench_size = 1024
56: Buffer size used for crypto benchmark.
57:
58: charon.crypto_test.bench_time = 50
59: Time in ms during which crypto algorithm performance is measured.
60:
61: charon.crypto_test.on_add = no
62: Test crypto algorithms during registration (requires test vectors provided
63: by the _test-vectors_ plugin).
64:
65: charon.crypto_test.on_create = no
66: Test crypto algorithms on each crypto primitive instantiation.
67:
68: charon.crypto_test.required = no
69: Strictly require at least one test vector to enable an algorithm.
70:
71: charon.crypto_test.rng_true = no
72: Whether to test RNG with TRUE quality; requires a lot of entropy.
73:
74: charon.delete_rekeyed = no
75: Delete CHILD_SAs right after they got successfully rekeyed (IKEv1 only).
76:
77: Delete CHILD_SAs right after they got successfully rekeyed (IKEv1 only).
78: Reduces the number of stale CHILD_SAs in scenarios with a lot of rekeyings.
79: However, this might cause problems with implementations that continue to
80: use rekeyed SAs until they expire.
81:
82: charon.delete_rekeyed_delay = 5
83: Delay in seconds until inbound IPsec SAs are deleted after rekeyings (IKEv2
84: only).
85:
86: Delay in seconds until inbound IPsec SAs are deleted after rekeyings (IKEv2
87: only). To process delayed packets the inbound part of a CHILD_SA is kept
88: installed up to the configured number of seconds after it got replaced
89: during a rekeying. If set to 0 the CHILD_SA will be kept installed until it
90: expires (if no lifetime is set it will be destroyed immediately).
91:
92: charon.dh_exponent_ansi_x9_42 = yes
93: Use ANSI X9.42 DH exponent size or optimum size matched to cryptographic
94: strength.
95:
96: charon.dlopen_use_rtld_now = no
97: Use RTLD_NOW with dlopen when loading plugins and IMV/IMCs to reveal missing
98: symbols immediately.
99:
100: charon.dns1
101: DNS server assigned to peer via configuration payload (CP).
102:
103: charon.dns2
104: DNS server assigned to peer via configuration payload (CP).
105:
106: charon.dos_protection = yes
107: Enable Denial of Service protection using cookies and aggressiveness checks.
108:
109: charon.ecp_x_coordinate_only = yes
110: Compliance with the errata for RFC 4753.
111:
112: charon.flush_auth_cfg = no
113: Free objects during authentication (might conflict with plugins).
114:
115: If enabled objects used during authentication (certificates, identities
116: etc.) are released to free memory once an IKE_SA is established. Enabling
117: this might conflict with plugins that later need access to e.g. the used
118: certificates.
119:
120: charon.follow_redirects = yes
121: Whether to follow IKEv2 redirects (RFC 5685).
122:
123: charon.fragment_size = 1280
124: Maximum size (complete IP datagram size in bytes) of a sent IKE fragment
125: when using proprietary IKEv1 or standardized IKEv2 fragmentation, defaults
126: to 1280 (use 0 for address family specific default values, which uses a
127: lower value for IPv4). If specified this limit is used for both IPv4 and
128: IPv6.
129:
130: charon.group
131: Name of the group the daemon changes to after startup.
132:
133: charon.half_open_timeout = 30
134: Timeout in seconds for connecting IKE_SAs (also see IKE_SA_INIT DROPPING).
135:
136: charon.hash_and_url = no
137: Enable hash and URL support.
138:
139: charon.host_resolver.max_threads = 3
140: Maximum number of concurrent resolver threads (they are terminated if
141: unused).
142:
143: charon.host_resolver.min_threads = 0
144: Minimum number of resolver threads to keep around.
145:
146: charon.i_dont_care_about_security_and_use_aggressive_mode_psk = no
147: Allow IKEv1 Aggressive Mode with pre-shared keys as responder.
148:
149: If enabled responders are allowed to use IKEv1 Aggressive Mode with
150: pre-shared keys, which is discouraged due to security concerns (offline
151: attacks on the openly transmitted hash of the PSK).
152:
153: charon.ignore_routing_tables
154: A space-separated list of routing tables to be excluded from route lookups.
155:
156: charon.ignore_acquire_ts = no
157: Whether to ignore the traffic selectors from the kernel's acquire events for
158: IKEv2 connections (they are not used for IKEv1).
159:
160: If this is disabled the traffic selectors from the kernel's acquire events,
161: which are derived from the triggering packet, are prepended to the traffic
162: selectors from the configuration for IKEv2 connection. By enabling this,
163: such specific traffic selectors will be ignored and only the ones in the
164: config will be sent. This always happens for IKEv1 connections as the
165: protocol only supports one set of traffic selectors per CHILD_SA.
166:
167: charon.ikesa_limit = 0
168: Maximum number of IKE_SAs that can be established at the same time before
169: new connection attempts are blocked.
170:
171: charon.ikesa_table_segments = 1
172: Number of exclusively locked segments in the hash table.
173:
174: charon.ikesa_table_size = 1
175: Size of the IKE_SA hash table.
176:
177: charon.inactivity_close_ike = no
178: Whether to close IKE_SA if the only CHILD_SA closed due to inactivity.
179:
180: charon.init_limit_half_open = 0
181: Limit new connections based on the current number of half open IKE_SAs, see
182: IKE_SA_INIT DROPPING in **strongswan.conf**(5).
183:
184: charon.init_limit_job_load = 0
185: Limit new connections based on the number of queued jobs.
186:
187: Limit new connections based on the number of jobs currently queued for
188: processing (see IKE_SA_INIT DROPPING).
189:
190: charon.initiator_only = no
191: Causes charon daemon to ignore IKE initiation requests.
192:
193: charon.install_routes = yes
194: Install routes into a separate routing table for established IPsec tunnels.
195:
196: charon.install_virtual_ip = yes
197: Install virtual IP addresses.
198:
199: charon.install_virtual_ip_on
200: The name of the interface on which virtual IP addresses should be installed.
201:
202: The name of the interface on which virtual IP addresses should be installed.
203: If not specified the addresses will be installed on the outbound interface.
204:
205: charon.integrity_test = no
206: Check daemon, libstrongswan and plugin integrity at startup.
207:
208: charon.interfaces_ignore
209: A comma-separated list of network interfaces that should be ignored, if
210: **interfaces_use** is specified this option has no effect.
211:
212: charon.interfaces_use
213: A comma-separated list of network interfaces that should be used by charon.
214: All other interfaces are ignored.
215:
216: charon.keep_alive = 20s
217: NAT keep alive interval.
218:
219: charon.leak_detective.detailed = yes
220: Includes source file names and line numbers in leak detective output.
221:
222: charon.leak_detective.usage_threshold = 10240
223: Threshold in bytes for leaks to be reported (0 to report all).
224:
225: charon.leak_detective.usage_threshold_count = 0
226: Threshold in number of allocations for leaks to be reported (0 to report
227: all).
228:
229: charon.load
230: Plugins to load in the IKE daemon charon.
231:
232: charon.load_modular = no
233: Determine plugins to load via each plugin's load option.
234:
235: If enabled, the list of plugins to load is determined via the value of the
236: _charon.plugins.<name>.load_ options. In addition to a simple boolean flag
237: that option may take an integer value indicating the priority of a plugin,
238: which would influence the order of a plugin in the plugin list (the default
239: is 1). If two plugins have the same priority their order in the default
240: plugin list is preserved. Enabled plugins not found in that list are ordered
241: alphabetically before other plugins with the same priority.
242:
243: charon.max_ikev1_exchanges = 3
244: Maximum number of IKEv1 phase 2 exchanges per IKE_SA to keep state about and
245: track concurrently.
246:
247: charon.max_packet = 10000
248: Maximum packet size accepted by charon.
249:
250: charon.make_before_break = no
251: Initiate IKEv2 reauthentication with a make-before-break scheme.
252:
253: Initiate IKEv2 reauthentication with a make-before-break instead of a
254: break-before-make scheme. Make-before-break uses overlapping IKE and
255: CHILD_SA during reauthentication by first recreating all new SAs before
256: deleting the old ones. This behavior can be beneficial to avoid connectivity
257: gaps during reauthentication, but requires support for overlapping SAs by
258: the peer. strongSwan can handle such overlapping SAs since version 5.3.0.
259:
260: charon.multiple_authentication = yes
261: Enable multiple authentication exchanges (RFC 4739).
262:
263: charon.nbns1
264: WINS servers assigned to peer via configuration payload (CP).
265:
266: charon.nbns2
267: WINS servers assigned to peer via configuration payload (CP).
268:
269: charon.port = 500
270: UDP port used locally. If set to 0 a random port will be allocated.
271:
272: charon.port_nat_t = 4500
273: UDP port used locally in case of NAT-T. If set to 0 a random port will be
274: allocated. Has to be different from **charon.port**, otherwise a random
275: port will be allocated.
276:
277: charon.prefer_best_path = no
278: Whether to prefer updating SAs to the path with the best route.
279:
280: By default, charon keeps SAs on the routing path with addresses it
281: previously used if that path is still usable. By setting this option to
282: yes, it tries more aggressively to update SAs with MOBIKE on routing
283: priority changes using the cheapest path. This adds more noise, but allows
284: to dynamically adapt SAs to routing priority changes. This option has no
285: effect if MOBIKE is not supported or disabled.
286:
287: charon.prefer_configured_proposals = yes
288: Prefer locally configured proposals for IKE/IPsec over supplied ones as
289: responder (disabling this can avoid keying retries due to INVALID_KE_PAYLOAD
290: notifies).
291:
292: charon.prefer_temporary_addrs = no
293: Controls whether permanent or temporary IPv6 addresses are used as source,
294: or announced as additional addresses if MOBIKE is used.
295:
296: By default, permanent IPv6 source addresses are preferred over temporary
297: ones (RFC 4941), to make connections more stable. Enable this option to
298: reverse this.
299:
300: It also affects which IPv6 addresses are announced as additional addresses
301: if MOBIKE is used. If the option is disabled, only permanent addresses are
302: sent, and only temporary ones if it is enabled.
303:
304: charon.process_route = yes
305: Process RTM_NEWROUTE and RTM_DELROUTE events.
306:
307: charon.processor.priority_threads {}
308: Section to configure the number of reserved threads per priority class
309: see JOB PRIORITY MANAGEMENT in **strongswan.conf**(5).
310:
311: charon.rdn_matching = strict
312: How RDNs in subject DNs of certificates are matched against configured
313: identities (_strict_, _reordered_, or _relaxed_).
314:
315: How RDNs in subject DNs of certificates are matched against configured
316: identities. Possible values are _strict_ (the default), _reordered_, and
317: _relaxed_. With _strict_ the number, type and order of all RDNs has to
318: match, wildcards (*) for the values of RDNs are allowed (that's the case
319: for all three variants). Using _reordered_ also matches DNs if the RDNs
320: appear in a different order, the number and type still has to match.
321: Finally, _relaxed_ also allows matches of DNs that contain more RDNs than
322: the configured identity (missing RDNs are treated like a wildcard match).
323:
324: Note that _reordered_ and _relaxed_ impose a considerable overhead on memory
325: usage and runtime, in particular, for mismatches, compared to _strict_.
326:
327: charon.receive_delay = 0
328: Delay in ms for receiving packets, to simulate larger RTT.
329:
330: charon.receive_delay_response = yes
331: Delay response messages.
332:
333: charon.receive_delay_request = yes
334: Delay request messages.
335:
336: charon.receive_delay_type = 0
337: Specific IKEv2 message type to delay, 0 for any.
338:
339: charon.replay_window = 32
340: Size of the AH/ESP replay window, in packets.
341:
342: charon.retransmit_base = 1.8
343: Base to use for calculating exponential back off, see IKEv2 RETRANSMISSION
344: in **strongswan.conf**(5).
345:
346: charon.retransmit_timeout = 4.0
347: Timeout in seconds before sending first retransmit.
348:
349: charon.retransmit_tries = 5
350: Number of times to retransmit a packet before giving up.
351:
352: charon.retransmit_jitter = 0
353: Maximum jitter in percent to apply randomly to calculated retransmission
354: timeout (0 to disable).
355:
356: charon.retransmit_limit = 0
357: Upper limit in seconds for calculated retransmission timeout (0 to disable).
358:
359: charon.retry_initiate_interval = 0
360: Interval in seconds to use when retrying to initiate an IKE_SA (e.g. if DNS
361: resolution failed), 0 to disable retries.
362:
363: charon.reuse_ikesa = yes
364: Initiate CHILD_SA within existing IKE_SAs (always enabled for IKEv1).
365:
366: charon.routing_table
367: Numerical routing table to install routes to.
368:
369: charon.routing_table_prio
370: Priority of the routing table.
371:
372: charon.rsa_pss = no
373: Whether to use RSA with PSS padding instead of PKCS#1 padding by default.
374:
375: charon.send_delay = 0
376: Delay in ms for sending packets, to simulate larger RTT.
377:
378: charon.send_delay_response = yes
379: Delay response messages.
380:
381: charon.send_delay_request = yes
382: Delay request messages.
383:
384: charon.send_delay_type = 0
385: Specific IKEv2 message type to delay, 0 for any.
386:
387: charon.send_vendor_id = no
388: Send strongSwan vendor ID payload
389:
390: charon.signature_authentication = yes
391: Whether to enable Signature Authentication as per RFC 7427.
392:
393: charon.signature_authentication_constraints = yes
394: Whether to enable constraints against IKEv2 signature schemes.
395:
396: If enabled, signature schemes configured in _rightauth_, in addition to
397: getting used as constraints against signature schemes employed in the
398: certificate chain, are also used as constraints against the signature scheme
399: used by peers during IKEv2.
400:
401: charon.spi_label = 0x0000000000000000
402: Value mixed into the local IKE SPIs after applying _spi_mask_.
403:
404: charon.spi_mask = 0x0000000000000000
405: Mask applied to local IKE SPIs before mixing in _spi_label_ (bits set will
406: be replaced with _spi_label_).
407:
408: charon.spi_min = 0xc0000000
409: The lower limit for SPIs requested from the kernel for IPsec SAs.
410:
411: The lower limit for SPIs requested from the kernel for IPsec SAs. Should not
412: be set lower than 0x00000100 (256), as SPIs between 1 and 255 are reserved
413: by IANA.
414:
415: charon.spi_max = 0xcfffffff
416: The upper limit for SPIs requested from the kernel for IPsec SAs.
417:
418: charon.start-scripts {}
419: Section containing a list of scripts (name = path) that are executed when
420: the daemon is started.
421:
422: charon.stop-scripts {}
423: Section containing a list of scripts (name = path) that are executed when
424: the daemon is terminated.
425:
426: charon.threads = 16
427: Number of worker threads in charon.
428:
429: Number of worker threads in charon. Several of these are reserved for long
430: running tasks in internal modules and plugins. Therefore, make sure you
431: don't set this value too low. The number of idle worker threads listed in
432: _ipsec statusall_ might be used as indicator on the number of reserved
433: threads.
434:
435: charon.tls.cipher
436: List of TLS encryption ciphers.
437:
438: charon.tls.key_exchange
439: List of TLS key exchange methods.
440:
441: charon.tls.mac
442: List of TLS MAC algorithms.
443:
444: charon.tls.suites
445: List of TLS cipher suites.
446:
447: charon.user
448: Name of the user the daemon changes to after startup.
449:
450: charon.x509.enforce_critical = yes
451: Discard certificates with unsupported or unknown critical extensions.
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>