1 .TH STRONGSWAN.CONF 5 "2010-09-09" "@IPSEC_VERSION@" "strongSwan"
3 strongswan.conf \- strongSwan configuration file
7 configuration file is well suited to define IPsec related configuration
8 parameters, it is not useful for other strongSwan applications to read options
10 The file is hard to parse and only
12 is capable of doing so. As the number of components of the strongSwan project
13 is continually growing, a more flexible configuration file was needed, one that
14 is easy to extend and can be used by all components. With strongSwan 4.2.1
15 .IR strongswan.conf (5)
16 was introduced which meets these requirements.
19 The format of the strongswan.conf file consists of hierarchical
23 in each section. Each section has a name, followed by C-Style curly brackets
24 defining the section body. Each section body contains a set of subsections
28 settings := (section|keyvalue)*
29 section := name { settings }
30 keyvalue := key = value\\n
33 Values must be terminated by a newline.
35 Comments are possible using the \fB#\fP-character, but be careful: The parser
36 implementation is currently limited and does not like brackets in comments.
38 Section names and keys may contain any printable character except:
44 An example file in this format might look like this:
61 Indentation is optional, you may use tabs or spaces.
64 Values are accessed using a dot-separated section list and a key.
65 With reference to the example above, accessing
66 .B section-one.subsection.othervalue
71 The following keys are currently defines (using dot notation). The default
72 value (if any) is listed in brackets after the key.
76 .BR charon.block_threshold " [5]"
77 Maximum number of half-open IKE_SAs for a single peer IP
79 .BR charon.close_ike_on_child_failure " [no]"
80 Close the IKE_SA if setup of the CHILD_SA along with IKE_AUTH failed
82 .BR charon.cookie_threshold " [10]"
83 Number of half-open IKE_SAs that activate the cookie mechanism
88 DNS servers assigned to peer via configuration payload (CP)
90 .BR charon.dos_protection " [yes]"
91 Enable Denial of Service protection using cookies and aggressiveness checks
93 .BR charon.hash_and_url " [no]"
94 Enable hash and URL support
96 .BR charon.ikesa_table_segments " [1]"
97 Number of exclusively locked segments in the hash table
99 .BR charon.ikesa_table_size " [1]"
100 Size of the IKE_SA hash table
102 .BR charon.inactivity_close_ike " [no]"
103 Whether to close IKE_SA if the only CHILD_SA closed due to inactivity
105 .BR charon.install_routes " [yes]"
106 Install routes into a separate routing table for established IPsec tunnels
108 .BR charon.keep_alive " [20s]"
109 NAT keep alive interval
112 Plugins to load in IKEv2 charon daemon
114 .BR charon.multiple_authentication " [yes]"
115 Enable multiple authentication exchanges (RFC 4739)
120 WINS servers assigned to peer via configuration payload (CP)
122 .BR charon.process_route " [yes]"
123 Process RTM_NEWROUTE and RTM_DELROUTE events
125 .BR charon.retransmit_base " [1.8]"
126 Base to use for calculating exponential back off, see IKEv2 RETRANSMISSION below
128 .BR charon.retransmit_timeout " [4.0]
129 Timeout in seconds before sending first retransmit
131 .BR charon.retransmit_tries " [5]"
132 Number of times to retransmit a packet before giving up
134 .BR charon.reuse_ikesa " [yes]
135 Initiate CHILD_SA within existing IKE_SAs
137 .BR charon.routing_table
138 Numerical routing table to install routes to
140 .BR charon.routing_table_prio
141 Priority of the routing table
143 .BR charon.send_vendor_id " [no]
144 Send strongSwan vendor ID payload
146 .BR charon.threads " [16]"
147 Number of worker threads in charon
148 .SS charon.plugins subsection
150 .BR charon.plugins.dhcp.identity_lease " [no]"
151 Derive user-defined MAC address from hash of IKEv2 identity
153 .BR charon.plugins.dhcp.server " [255.255.255.255]"
154 DHCP server unicast or broadcast IP address
156 .BR charon.plugins.eap-aka.request_identity " [yes]"
158 .BR charon.plugins.eap-aka-3ggp2.seq_check
160 .BR charon.plugins.eap-gtc.pam_service " [login]"
161 PAM service to be used for authentication
163 .BR charon.plugins.eap-radius.secret
164 Shared secret between RADIUS and NAS
166 .BR charon.plugins.eap-radius.server
167 IP/Hostname of RADIUS server
169 .BR charon.plugins.eap-radius.port " [1812]"
170 Port of RADIUS server (authentication)
172 .BR charon.plugins.eap-radius.sockets " [5]"
173 Number of sockets (ports) to use, increase for high load
175 .BR charon.plugins.eap-radius.nas_identifier " [strongSwan]"
176 NAS-Identifier to include in RADIUS messages
178 .BR charon.plugins.eap-radius.eap_start " [no]"
179 Send EAP-Start instead of EAP-Identity to start RADIUS conversation
181 .BR charon.plugins.eap-radius.id_prefix
182 Prefix to EAP-Identity, some AAA servers use a IMSI prefix to select the EAP method
184 .BR charon.plugins.eap-sim.request_identity " [yes]"
187 .BR charon.plugins.eap-tls.fragment_size " [1024]"
188 Maximum size of an EAP-TLS packet
190 .BR charon.plugins.eap-tls.max_message_count " [32]"
191 Maximum number of processed EAP-TLS packets
193 .BR charon.plugins.eap-ttls.fragment_size " [1024]"
194 Maximum size of an EAP-TTLS packet
196 .BR charon.plugins.eap-ttls.max_message_count " [32]"
197 Maximum number of processed EAP-TTLS packets
199 .BR charon.plugins.eap-ttls.phase2_method " [md5]"
200 Phase2 EAP client authentication method
202 .BR charon.plugins.eap-ttls.phase2_piggyback " [no]"
203 Phase2 EAP Identity request piggybacked by server onto TLS Finished message
205 .BR charon.plugins.eap-ttls.request_peer_auth " [no]"
206 Request peer authentication based on a client certificate
208 .BR charon.plugins.ha.fifo_interface " [yes]"
211 .BR charon.plugins.ha.local
214 .BR charon.plugins.ha.monitor " [yes]"
217 .BR charon.plugins.ha.remote
220 .BR charon.plugins.ha.resync " [yes]"
223 .BR charon.plugins.ha.secret
226 .BR charon.plugins.ha.segment_count " [1]"
229 .BR charon.plugins.kernel-klips.ipsec_dev_mtu " [0]"
230 Set MTU of ipsecN device
232 .BR charon.plugins.load-tester.enable " [no]"
233 Enable the load testing plugin
235 .BR charon.plugins.load-tester.initiators " [0]"
236 Number of concurrent initiator threads to use in load test
238 .BR charon.plugins.load-tester.iterations " [1]"
239 Number of IKE_SAs to initate to self by each initiator in load test
241 .BR charon.plugins.load-tester.delay " [0]"
242 Delay between initiatons for each thread
244 .BR charon.plugins.load-tester.proposal " [aes128-sha1-modp1024]"
245 IKE proposal to use in load test
247 .BR charon.plugins.load-tester.initiator_auth " [pubkey]"
248 Authentication method(s) the intiator uses
250 .BR charon.plugins.load-tester.responder_auth " [pubkey]"
251 Authentication method(s) the responder uses
253 .BR charon.plugins.load-tester.fake_kernel " [no]"
254 Fake the kernel interface to allow load-testing against self
256 .BR charon.plugins.load-tester.delete_after_established " [no]"
257 Delete an IKE_SA as soon as it has been established
259 .BR charon.plugins.load-tester.request_virtual_ip " [no]"
260 Request an INTERNAL_IPV4_ADDR from the server
262 .BR charon.plugins.load-tester.pool
263 Provide INTERNAL_IPV4_ADDRs from a named pool
265 .BR charon.plugins.load-tester.remote " [127.0.0.1]"
266 Address to initiation connections to
268 .BR charon.plugins.load-tester.ike_rekey " [0]"
269 Seconds to start IKE_SA rekeying after setup
271 .BR charon.plugins.load-tester.child_rekey " [600]"
272 Seconds to start CHILD_SA rekeying after setup
274 .BR charon.plugins.resolve.file " [/etc/resolv.conf]"
275 File where to add DNS server entries
277 .BR charon.plugins.sql.database
278 Database URI for charons SQL plugin
280 .BR charon.plugins.sql.loglevel " [-1]"
281 Loglevel for logging to SQL database
282 .SS libstrongswan section
284 .BR libstrongswan.dh_exponent_ansi_x9_42 " [yes]"
285 Use ANSI X9.42 DH exponent size or optimum size matched to cryptographical strength
287 .BR libstrongswan.crypto_test.on_add " [no]"
288 Test crypto algorithms during registration
290 .BR libstrongswan.crypto_test.on_create " [no]"
291 Test crypto algorithms on each crypto primitive instantiation
293 .BR libstrongswan.crypto_test.required " [no]"
294 Strictly require at least one test vector to enable an algorithm
296 .BR libstrongswan.crypto_test.rng_true " [no]"
297 Whether to test RNG with TRUE quality; requires a lot of entropy
299 .BR libstrongswan.ecp_x_coordinate_only " [yes]"
300 Compliance with the errata for RFC 4753
302 .BR libstrongswan.integrity_test " [no]"
303 Check daemon, libstrongswan and plugin integrity at startup
304 .SS libstrongswan.plugins subsection
306 .BR libstrongswan.plugins.attr-sql.database
307 Database URI for attr-sql plugin used by charon and pluto
309 .BR libstrongswan.plugins.attr-sql.lease_history " [yes]"
310 Enable logging of SQL IP pool leases
312 .BR libstrongswan.plugins.gcrypt.quick_random " [no]"
313 Use faster random numbers in gcrypt; for testing only, produces weak keys!
315 .BR libstrongswan.plugins.openssl.engine_id " [pkcs11]"
316 ENGINE ID to use in the OpenSSL plugin
318 .BR libstrongswan.plugins.x509.enforce_critical " [no]"
319 Discard certificates with unsupported or unknown critical extensions
323 List of TLS encryption ciphers
325 .BR libtls.key_exchange
326 List of TLS key exchange methods
329 List of TLS MAC algorithms
333 Credential database URI for manager
335 .BR manager.debug " [no]"
336 Enable debugging in manager
339 Plugins to load in manager
342 FastCGI socket of manager, to run it statically
344 .BR manager.threads " [10]"
345 Threads to use for request handling
347 .BR manager.timeout " [15m]"
348 Session timeout for manager
349 .SS mediation client section
352 Mediation client database URI
354 .BR medcli.dpd " [5m]"
355 DPD timeout to use in mediation client plugin
357 .BR medcli.rekey " [20m]"
358 Rekeying time on mediation connections in mediation client plugin
359 .SS mediation server section
362 Mediation server database URI
364 .BR medsrv.debug " [no]"
365 Debugging in mediation server web application
367 .BR medsrv.dpd " [5m]"
368 DPD timeout to use in mediation server plugin
371 Plugins to load in mediation server plugin
373 .BR medsrv.password_length " [6]"
374 Minimum password length required for mediation server user accounts
376 .BR medsrv.rekey " [20m]"
377 Rekeying time on mediation connections in mediation server plugin
380 Run Mediation server web application statically on socket
382 .BR medsrv.threads " [5]"
383 Number of thread for mediation service web application
385 .BR medsrv.timeout " [15m]"
386 Session timeout for mediation service
390 Plugins to load in ipsec openac tool
394 Plugins to load in ipsec pki tool
400 DNS servers assigned to peer via configuration payload (CP)
403 Plugins to load in IKEv1 pluto daemon
408 WINS servers assigned to peer via configuration payload (CP)
412 Plugins to load in ipsec pool tool
413 .SS scepclient section
416 Plugins to load in ipsec scepclient tool
419 .BR starter.load_warning " [yes]"
420 Disable charon/pluto plugin load option warning
422 .SH IKEv2 RETRANSMISSION
423 Retransmission timeouts in the IKEv2 daemon charon can be configured globally
424 using the three keys listed below:
428 .BR charon.retransmit_base " [1.8]"
429 .BR charon.retransmit_timeout " [4.0]"
430 .BR charon.retransmit_tries " [5]"
434 The following algorithm is used to calculate the timeout:
437 relative timeout = retransmit_timeout * retransmit_base ^ (n-1)
442 is the current retransmission count.
444 Using the default values, packets are retransmitted in:
450 Retransmission Relative Timeout Absolute Timeout
463 ipsec.conf (5), ipsec.secrets (5)
466 .UR http://www.strongswan.org
469 by Tobias Brunner, Andreas Steffen and Martin Willi.