c8e7316657205b59b4b51862227199afa2325d7a
[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.ikesa_limit = 0
121         Maximum number of IKE_SAs that can be established at the same time before
122         new connection attempts are blocked.
123
124 charon.ikesa_table_segments = 1
125         Number of exclusively locked segments in the hash table.
126
127 charon.ikesa_table_size = 1
128         Size of the IKE_SA hash table.
129
130 charon.inactivity_close_ike = no
131         Whether to close IKE_SA if the only CHILD_SA closed due to inactivity.
132
133 charon.init_limit_half_open = 0
134         Limit new connections based on the current number of half open IKE_SAs, see
135         IKE_SA_INIT DROPPING in **strongswan.conf**(5).
136
137 charon.init_limit_job_load = 0
138         Limit new connections based on the number of queued jobs.
139
140         Limit new connections based on the number of jobs currently queued for
141         processing (see IKE_SA_INIT DROPPING).
142
143 charon.initiator_only = no
144         Causes charon daemon to ignore IKE initiation requests.
145
146 charon.install_routes = yes
147         Install routes into a separate routing table for established IPsec tunnels.
148
149 charon.install_virtual_ip = yes
150         Install virtual IP addresses.
151
152 charon.install_virtual_ip_on
153         The name of the interface on which virtual IP addresses should be installed.
154
155         The name of the interface on which virtual IP addresses should be installed.
156         If not specified the addresses will be installed on the outbound interface.
157
158 charon.integrity_test = no
159         Check daemon, libstrongswan and plugin integrity at startup.
160
161 charon.interfaces_ignore
162         A comma-separated list of network interfaces that should be ignored, if
163         **interfaces_use** is specified this option has no effect.
164
165 charon.interfaces_use
166         A comma-separated list of network interfaces that should be used by charon.
167         All other interfaces are ignored.
168
169 charon.keep_alive = 20s
170         NAT keep alive interval.
171
172 charon.leak_detective.detailed = yes
173         Includes source file names and line numbers in leak detective output.
174
175 charon.leak_detective.usage_threshold = 10240
176         Threshold in bytes for leaks to be reported (0 to report all).
177
178 charon.leak_detective.usage_threshold_count = 0
179         Threshold in number of allocations for leaks to be reported (0 to report
180         all).
181
182 charon.load
183         Plugins to load in the IKE daemon charon.
184
185 charon.load_modular = no
186         Determine plugins to load via each plugin's load option.
187
188         If enabled, the list of plugins to load is determined via the value of the
189         _charon.plugins.<name>.load_ options.  In addition to a simple boolean flag
190         that option may take an integer value indicating the priority of a plugin,
191         which would influence the order of a plugin in the plugin list (the default
192         is 1). If two plugins have the same priority their order in the default
193         plugin list is preserved. Enabled plugins not found in that list are ordered
194         alphabetically before other plugins with the same priority.
195
196 charon.max_packet = 10000
197         Maximum packet size accepted by charon.
198
199 charon.make_before_break = no
200         Initiate IKEv2 reauthentication with a make-before-break scheme.
201
202         Initiate IKEv2 reauthentication with a make-before-break instead of a
203         break-before-make scheme. Make-before-break uses overlapping IKE and
204         CHILD_SA during reauthentication by first recreating all new SAs before
205         deleting the old ones. This behavior can be beneficial to avoid connectivity
206         gaps during reauthentication, but requires support for overlapping SAs by
207         the peer. strongSwan can handle such overlapping SAs since version 5.3.0.
208
209 charon.multiple_authentication = yes
210         Enable multiple authentication exchanges (RFC 4739).
211
212 charon.nbns1
213         WINS servers assigned to peer via configuration payload (CP).
214
215 charon.nbns2
216         WINS servers assigned to peer via configuration payload (CP).
217
218 charon.port = 500
219         UDP port used locally. If set to 0 a random port will be allocated.
220
221 charon.port_nat_t = 4500
222         UDP port used locally in case of NAT-T. If set to 0 a random port will be
223         allocated.  Has to be different from **charon.port**, otherwise a random
224         port will be allocated.
225
226 charon.prefer_temporary_addrs = no
227         By default public IPv6 addresses are preferred over temporary ones (RFC
228         4941), to make connections more stable. Enable this option to reverse this.
229
230 charon.process_route = yes
231         Process RTM_NEWROUTE and RTM_DELROUTE events.
232
233 charon.processor.priority_threads {}
234         Section to configure the number of reserved threads per priority class
235         see JOB PRIORITY MANAGEMENT in **strongswan.conf**(5).
236
237 charon.receive_delay = 0
238         Delay in ms for receiving packets, to simulate larger RTT.
239
240 charon.receive_delay_response = yes
241         Delay response messages.
242
243 charon.receive_delay_request = yes
244         Delay request messages.
245
246 charon.receive_delay_type = 0
247         Specific IKEv2 message type to delay, 0 for any.
248
249 charon.replay_window = 32
250         Size of the AH/ESP replay window, in packets.
251
252 charon.retransmit_base = 1.8
253         Base to use for calculating exponential back off, see IKEv2 RETRANSMISSION
254         in **strongswan.conf**(5).
255
256 charon.retransmit_timeout = 4.0
257         Timeout in seconds before sending first retransmit.
258
259 charon.retransmit_tries = 5
260         Number of times to retransmit a packet before giving up.
261
262 charon.retry_initiate_interval = 0
263         Interval to use when retrying to initiate an IKE_SA (e.g. if DNS resolution
264         failed), 0 to disable retries.
265
266 charon.reuse_ikesa = yes
267         Initiate CHILD_SA within existing IKE_SAs.
268
269 charon.routing_table
270         Numerical routing table to install routes to.
271
272 charon.routing_table_prio
273         Priority of the routing table.
274
275 charon.send_delay = 0
276         Delay in ms for sending packets, to simulate larger RTT.
277
278 charon.send_delay_response = yes
279         Delay response messages.
280
281 charon.send_delay_request = yes
282         Delay request messages.
283
284 charon.send_delay_type = 0
285         Specific IKEv2 message type to delay, 0 for any.
286
287 charon.send_vendor_id = no
288         Send strongSwan vendor ID payload
289
290 charon.signature_authentication = yes
291         Whether to enable Signature Authentication as per RFC 7427.
292
293 charon.signature_authentication_constraints = yes
294         Whether to enable constraints against IKEv2 signature schemes.
295
296         If enabled, signature schemes configured in _rightauth_, in addition to
297         getting used as constraints against signature schemes employed in the
298         certificate chain, are also used as constraints against the signature scheme
299         used by peers during IKEv2.
300
301 charon.start-scripts {}
302         Section containing a list of scripts (name = path) that are executed when
303         the daemon is started.
304
305 charon.stop-scripts {}
306         Section containing a list of scripts (name = path) that are executed when
307         the daemon is terminated.
308
309 charon.threads = 16
310         Number of worker threads in charon.
311
312         Number of worker threads in charon. Several of these are reserved for long
313         running tasks in internal modules and plugins. Therefore, make sure you
314         don't set this value too low. The number of idle worker threads listed in
315         _ipsec statusall_ might be used as indicator on the number of reserved
316         threads.
317
318 charon.tls.cipher
319         List of TLS encryption ciphers.
320
321 charon.tls.key_exchange
322         List of TLS key exchange methods.
323
324 charon.tls.mac
325         List of TLS MAC algorithms.
326
327 charon.tls.suites
328         List of TLS cipher suites.
329
330 charon.user
331         Name of the user the daemon changes to after startup.
332
333 charon.x509.enforce_critical = yes
334         Discard certificates with unsupported or unknown critical extensions.