Mon May 4 22:28:31 2009 UTC ()
Remove superfluous spaces around parentheses.


(wiz)
diff -r1.55 -r1.56 src/crypto/dist/ipsec-tools/src/racoon/racoon.conf.5

cvs diff -r1.55 -r1.56 src/crypto/dist/ipsec-tools/src/racoon/racoon.conf.5 (switch to unified diff)

--- src/crypto/dist/ipsec-tools/src/racoon/racoon.conf.5 2009/03/12 15:18:57 1.55
+++ src/crypto/dist/ipsec-tools/src/racoon/racoon.conf.5 2009/05/04 22:28:30 1.56
@@ -1,1553 +1,1553 @@ @@ -1,1553 +1,1553 @@
1.\" $NetBSD: racoon.conf.5,v 1.55 2009/03/12 15:18:57 wiz Exp $ 1.\" $NetBSD: racoon.conf.5,v 1.56 2009/05/04 22:28:30 wiz Exp $
2.\" 2.\"
3.\" Id: racoon.conf.5,v 1.54 2006/08/22 18:17:17 manubsd Exp 3.\" Id: racoon.conf.5,v 1.54 2006/08/22 18:17:17 manubsd Exp
4.\" 4.\"
5.\" Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. 5.\" Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
6.\" All rights reserved. 6.\" All rights reserved.
7.\" 7.\"
8.\" Redistribution and use in source and binary forms, with or without 8.\" Redistribution and use in source and binary forms, with or without
9.\" modification, are permitted provided that the following conditions 9.\" modification, are permitted provided that the following conditions
10.\" are met: 10.\" are met:
11.\" 1. Redistributions of source code must retain the above copyright 11.\" 1. Redistributions of source code must retain the above copyright
12.\" notice, this list of conditions and the following disclaimer. 12.\" notice, this list of conditions and the following disclaimer.
13.\" 2. Redistributions in binary form must reproduce the above copyright 13.\" 2. Redistributions in binary form must reproduce the above copyright
14.\" notice, this list of conditions and the following disclaimer in the 14.\" notice, this list of conditions and the following disclaimer in the
15.\" documentation and/or other materials provided with the distribution. 15.\" documentation and/or other materials provided with the distribution.
16.\" 3. Neither the name of the project nor the names of its contributors 16.\" 3. Neither the name of the project nor the names of its contributors
17.\" may be used to endorse or promote products derived from this software 17.\" may be used to endorse or promote products derived from this software
18.\" without specific prior written permission. 18.\" without specific prior written permission.
19.\" 19.\"
20.\" THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND 20.\" THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23.\" ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE 23.\" ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30.\" SUCH DAMAGE. 30.\" SUCH DAMAGE.
31.\" 31.\"
32.Dd March 12, 2009 32.Dd March 12, 2009
33.Dt RACOON.CONF 5 33.Dt RACOON.CONF 5
34.Os 34.Os
35.\" 35.\"
36.Sh NAME 36.Sh NAME
37.Nm racoon.conf 37.Nm racoon.conf
38.Nd configuration file for racoon 38.Nd configuration file for racoon
39.\" 39.\"
40.\" .Sh SYNOPSIS 40.\" .Sh SYNOPSIS
41.\" 41.\"
42.Sh DESCRIPTION 42.Sh DESCRIPTION
43.Nm 43.Nm
44is the configuration file for the 44is the configuration file for the
45.Xr racoon 8 45.Xr racoon 8
46ISAKMP daemon. 46ISAKMP daemon.
47.Xr racoon 8 47.Xr racoon 8
48negotiates security associations for itself (ISAKMP SA, or phase 1 SA) 48negotiates security associations for itself (ISAKMP SA, or phase 1 SA)
49and for kernel IPsec (IPsec SA, or phase 2 SA). 49and for kernel IPsec (IPsec SA, or phase 2 SA).
50The file consists of a sequence of directives and statements. 50The file consists of a sequence of directives and statements.
51Each directive is composed by a tag and statements, enclosed by 51Each directive is composed by a tag and statements, enclosed by
52.Ql { 52.Ql {
53and 53and
54.Ql } . 54.Ql } .
55Lines beginning with 55Lines beginning with
56.Ql # 56.Ql #
57are comments. 57are comments.
58.\" 58.\"
59.Ss Meta Syntax 59.Ss Meta Syntax
60Keywords and special characters that the parser expects exactly are 60Keywords and special characters that the parser expects exactly are
61displayed using 61displayed using
62.Ic this 62.Ic this
63font. 63font.
64Parameters are specified with 64Parameters are specified with
65.Ar this 65.Ar this
66font. 66font.
67Square brackets 67Square brackets
68.Po 68.Po
69.Ql \&[ 69.Ql \&[
70and 70and
71.Ql \&] 71.Ql \&]
72.Pc 72.Pc
73are used to show optional keywords and parameters. 73are used to show optional keywords and parameters.
74Note that 74Note that
75you have to pay attention when this manual is describing 75you have to pay attention when this manual is describing
76.Ar port 76.Ar port
77numbers. 77numbers.
78The 78The
79.Ar port 79.Ar port
80number is always enclosed by 80number is always enclosed by
81.Ql \&[ 81.Ql \&[
82and 82and
83.Ql \&] . 83.Ql \&] .
84In this case, the port number is not an optional keyword. 84In this case, the port number is not an optional keyword.
85If it is possible to omit the 85If it is possible to omit the
86.Ar port 86.Ar port
87number, 87number,
88the expression becomes 88the expression becomes
89.Bq Bq Ar port . 89.Bq Bq Ar port .
90The vertical bar 90The vertical bar
91.Pq Ql \&| 91.Pq Ql \&|
92is used to indicate 92is used to indicate
93a choice between optional parameters. 93a choice between optional parameters.
94Parentheses 94Parentheses
95.Po 95.Po
96.Ql \&( 96.Ql \&(
97and 97and
98.Ql \&) 98.Ql \&)
99.Pc 99.Pc
100are used to group keywords and parameters when necessary. 100are used to group keywords and parameters when necessary.
101Major parameters are listed below. 101Major parameters are listed below.
102.Pp 102.Pp
103.Bl -tag -width addressx -compact 103.Bl -tag -width addressx -compact
104.It Ar number 104.It Ar number
105means a hexadecimal or a decimal number. 105means a hexadecimal or a decimal number.
106The former must be prefixed with 106The former must be prefixed with
107.Ql Li 0x . 107.Ql Li 0x .
108.It Ar string 108.It Ar string
109.It Ar path 109.It Ar path
110.It Ar file 110.It Ar file
111means any string enclosed in 111means any string enclosed in
112.Ql \&" 112.Ql \&"
113.Pq double quotes . 113.Pq double quotes .
114.It Ar address 114.It Ar address
115means IPv6 and/or IPv4 address. 115means IPv6 and/or IPv4 address.
116.It Ar port 116.It Ar port
117means a TCP/UDP port number. 117means a TCP/UDP port number.
118The port number is always enclosed by 118The port number is always enclosed by
119.Ql \&[ 119.Ql \&[
120and 120and
121.Ql \&] . 121.Ql \&] .
122.It Ar timeunit 122.It Ar timeunit
123is one of following: 123is one of following:
124.Ic sec , secs , second , seconds , 124.Ic sec , secs , second , seconds ,
125.Ic min , mins , minute , minutes , 125.Ic min , mins , minute , minutes ,
126.Ic hour , hours . 126.Ic hour , hours .
127.El 127.El
128.\" 128.\"
129.Ss Privilege separation 129.Ss Privilege separation
130.Bl -tag -width Ds -compact 130.Bl -tag -width Ds -compact
131.It Ic privsep { Ar statements Ic } 131.It Ic privsep { Ar statements Ic }
132Specifies privilege separation parameters. 132Specifies privilege separation parameters.
133When enabled, these enable 133When enabled, these enable
134.Xr racoon 8 134.Xr racoon 8
135to operate with an unprivileged instance doing most of the work, while 135to operate with an unprivileged instance doing most of the work, while
136a privileged instance takes care of performing the following operations 136a privileged instance takes care of performing the following operations
137as root: reading PSK and private keys, launching hook scripts, and 137as root: reading PSK and private keys, launching hook scripts, and
138validating passwords against system databases or against PAM. 138validating passwords against system databases or against PAM.
139Please note that using privilege separation makes changes to the 139Please note that using privilege separation makes changes to the
140.Ar listen 140.Ar listen
141and 141and
142.Ar paths 142.Ar paths
143sections ignored upon configuration reloads. 143sections ignored upon configuration reloads.
144A 144A
145.Xr racoon 8 145.Xr racoon 8
146restart is required if you want such changes to be taken into account. 146restart is required if you want such changes to be taken into account.
147.Pp 147.Pp
148.Bl -tag -width Ds -compact 148.Bl -tag -width Ds -compact
149.It Ic user Ar user ; 149.It Ic user Ar user ;
150The user to which the unprivileged instance of 150The user to which the unprivileged instance of
151.Xr racoon 8 , 151.Xr racoon 8 ,
152should switch. 152should switch.
153This can be a quoted user name or a numeric UID. 153This can be a quoted user name or a numeric UID.
154.It Ic group Ar group ; 154.It Ic group Ar group ;
155The group the unprivileged instance of 155The group the unprivileged instance of
156.Xr racoon 8 , 156.Xr racoon 8 ,
157should switch. 157should switch.
158This can be a quoted group name or a numeric GID. 158This can be a quoted group name or a numeric GID.
159.It Ic chroot Ar path ; 159.It Ic chroot Ar path ;
160A directory to which the unprivileged instance of 160A directory to which the unprivileged instance of
161.Xr racoon 8 161.Xr racoon 8
162should 162should
163.Xr chroot 2 . 163.Xr chroot 2 .
164This directory should hold a tree where the following files must be 164This directory should hold a tree where the following files must be
165reachable: 165reachable:
166.Bl -tag -width Ds -compact 166.Bl -tag -width Ds -compact
167.It Pa /dev/random 167.It Pa /dev/random
168.It Pa /dev/urandom 168.It Pa /dev/urandom
169.It The certificates 169.It The certificates
170.It The file containing the Xauth banner 170.It The file containing the Xauth banner
171.El 171.El
172.Pp 172.Pp
173The PSK file, the private keys, and the hook scripts are accessed through the 173The PSK file, the private keys, and the hook scripts are accessed through the
174privileged instance of 174privileged instance of
175.Xr racoon 8 175.Xr racoon 8
176and do not need to be reachable in the 176and do not need to be reachable in the
177.Xr chroot 2 Ap ed 177.Xr chroot 2 Ap ed
178tree. 178tree.
179.El 179.El
180.El 180.El
181.Ss Path Specification 181.Ss Path Specification
182This section specifies various paths used by racoon. 182This section specifies various paths used by racoon.
183When running in privilege separation mode, 183When running in privilege separation mode,
184.Ic certificate 184.Ic certificate
185and 185and
186.Ic script 186.Ic script
187paths are mandatory. 187paths are mandatory.
188A 188A
189.Xr racoon 8 189.Xr racoon 8
190restart is required if you want path changes to be taken into account. 190restart is required if you want path changes to be taken into account.
191.Bl -tag -width Ds -compact 191.Bl -tag -width Ds -compact
192.It Ic path include Ar path ; 192.It Ic path include Ar path ;
193Specifies a path to include a file. 193Specifies a path to include a file.
194See 194See
195.Sx File Inclusion . 195.Sx File Inclusion .
196.It Ic path pre_shared_key Ar file ; 196.It Ic path pre_shared_key Ar file ;
197Specifies a file containing pre-shared key(s) for various ID(s). 197Specifies a file containing pre-shared key(s) for various ID(s).
198See 198See
199.Sx Pre-shared key File . 199.Sx Pre-shared key File .
200.It Ic path certificate Ar path ; 200.It Ic path certificate Ar path ;
201.Xr racoon 8 201.Xr racoon 8
202will search this directory if a certificate or certificate request is received. 202will search this directory if a certificate or certificate request is received.
203If you run with privilege separation, 203If you run with privilege separation,
204.Xr racoon 8 204.Xr racoon 8
205will refuse to use a certificate stored outside of this directory. 205will refuse to use a certificate stored outside of this directory.
206.It Ic path backupsa Ar file ; 206.It Ic path backupsa Ar file ;
207Specifies a file to which SA information negotiated by 207Specifies a file to which SA information negotiated by
208racoon should be stored. 208racoon should be stored.
209.Xr racoon 8 209.Xr racoon 8
210will install SA(s) from the file when started with the 210will install SA(s) from the file when started with the
211.Fl B 211.Fl B
212flag. 212flag.
213The file is growing because 213The file is growing because
214.Xr racoon 8 214.Xr racoon 8
215simply adds SAs to it. 215simply adds SAs to it.
216You should maintain the file manually. 216You should maintain the file manually.
217.It Ic path script Ar path ; 217.It Ic path script Ar path ;
218.Xr racoon 8 218.Xr racoon 8
219will search this directory for scripts hooks. 219will search this directory for scripts hooks.
220If you run with privilege separation, 220If you run with privilege separation,
221.Xr racoon 8 221.Xr racoon 8
222will refuse to execute a script stored outside of this directory. 222will refuse to execute a script stored outside of this directory.
223.It Ic path pidfile Ar file ; 223.It Ic path pidfile Ar file ;
224Specifies file where to store PID of process. 224Specifies file where to store PID of process.
225If path starts with 225If path starts with
226.Pa / 226.Pa /
227it is treated as an absolute path. 227it is treated as an absolute path.
228Otherwise, it is treated as a relative 228Otherwise, it is treated as a relative
229path to the VARRUN directory specified at compilation time. 229path to the VARRUN directory specified at compilation time.
230Default is 230Default is
231.Pa racoon.pid . 231.Pa racoon.pid .
232.El 232.El
233.\" 233.\"
234.Ss File Inclusion 234.Ss File Inclusion
235.Bl -tag -width Ds -compact 235.Bl -tag -width Ds -compact
236.It Ic include Ar file 236.It Ic include Ar file
237Specifies other configuration files to be included. 237Specifies other configuration files to be included.
238.El 238.El
239.\" 239.\"
240.Ss Timer Specification 240.Ss Timer Specification
241.Bl -tag -width Ds -compact 241.Bl -tag -width Ds -compact
242.It Ic timer { Ar statements Ic } 242.It Ic timer { Ar statements Ic }
243This section specifies various timer values used by racoon. 243This section specifies various timer values used by racoon.
244.Pp 244.Pp
245.Bl -tag -width Ds -compact 245.Bl -tag -width Ds -compact
246.It Ic counter Ar number ; 246.It Ic counter Ar number ;
247The maximum number of retries to send. 247The maximum number of retries to send.
248The default is 5. 248The default is 5.
249.It Ic interval Ar number Ar timeunit ; 249.It Ic interval Ar number Ar timeunit ;
250The interval to resend, in seconds. 250The interval to resend, in seconds.
251The default time is 10 seconds. 251The default time is 10 seconds.
252.It Ic persend Ar number ; 252.It Ic persend Ar number ;
253The number of packets per send. 253The number of packets per send.
254The default is 1. 254The default is 1.
255.It Ic phase1 Ar number Ar timeunit ; 255.It Ic phase1 Ar number Ar timeunit ;
256The maximum time it should take to complete phase 1. 256The maximum time it should take to complete phase 1.
257The default time is 15 seconds. 257The default time is 15 seconds.
258.It Ic phase2 Ar number Ar timeunit ; 258.It Ic phase2 Ar number Ar timeunit ;
259The maximum time it should take to complete phase 2. 259The maximum time it should take to complete phase 2.
260The default time is 10 seconds. 260The default time is 10 seconds.
261.It Ic natt_keepalive Ar number Ar timeunit ; 261.It Ic natt_keepalive Ar number Ar timeunit ;
262The interval between sending NAT-Traversal keep-alive packets. 262The interval between sending NAT-Traversal keep-alive packets.
263The default time is 20 seconds. 263The default time is 20 seconds.
264Set to 0s to disable keep-alive packets. 264Set to 0s to disable keep-alive packets.
265.El 265.El
266.El 266.El
267.\" 267.\"
268.Ss Listening Port Specification 268.Ss Listening Port Specification
269.Bl -tag -width Ds -compact 269.Bl -tag -width Ds -compact
270.It Ic listen { Ar statements Ic } 270.It Ic listen { Ar statements Ic }
271If no 271If no
272.Ar listen 272.Ar listen
273directive is specified, 273directive is specified,
274.Xr racoon 8 274.Xr racoon 8
275will listen on all available interface addresses. 275will listen on all available interface addresses.
276The following is the list of valid statements: 276The following is the list of valid statements:
277.Pp 277.Pp
278.Bl -tag -width Ds -compact 278.Bl -tag -width Ds -compact
279.\" How do I express bold brackets; `[' and `]' . 279.\" How do I express bold brackets; `[' and `]' .
280.\" Answer: For bold brackets, do "Ic \&[ foo \&]". 280.\" Answer: For bold brackets, do "Ic \&[ foo \&]".
281.\" Is the "Bq Ic [ Ar port ] ;" buggy ? 281.\" Is the "Bq Ic [ Ar port ] ;" buggy ?
282.It Ic isakmp Ar address Bq Bq Ar port ; 282.It Ic isakmp Ar address Bq Bq Ar port ;
283If this is specified, 283If this is specified,
284.Xr racoon 8 284.Xr racoon 8
285will only listen on the defined 285will only listen on the defined
286.Ar address . 286.Ar address .
287The default port is 500, which is specified by IANA. 287The default port is 500, which is specified by IANA.
288You can provide more than one address definition. 288You can provide more than one address definition.
289.It Ic isakmp_natt Ar address Bq Ar port ; 289.It Ic isakmp_natt Ar address Bq Ar port ;
290Same as 290Same as
291.Ic isakmp 291.Ic isakmp
292but also sets the socket options to accept UDP-encapsulated ESP traffic for 292but also sets the socket options to accept UDP-encapsulated ESP traffic for
293NAT-Traversal. 293NAT-Traversal.
294If you plan to use NAT-T, you should provide at least one address 294If you plan to use NAT-T, you should provide at least one address
295with port 4500, which is specified by IANA. 295with port 4500, which is specified by IANA.
296There is no default. 296There is no default.
297.It Ic strict_address ; 297.It Ic strict_address ;
298Requires that all addresses for ISAKMP be bound. 298Requires that all addresses for ISAKMP be bound.
299This statement will be ignored if you do not specify address definitions. 299This statement will be ignored if you do not specify address definitions.
300.El 300.El
301When running in privilege separation mode, you need to restart 301When running in privilege separation mode, you need to restart
302.Xr racoon 8 302.Xr racoon 8
303to have changes to the 303to have changes to the
304.Ar listen 304.Ar listen
305section taken into account. 305section taken into account.
306.Pp 306.Pp
307The 307The
308.Ar listen 308.Ar listen
309section can also be used to specify the admin socket mode and ownership 309section can also be used to specify the admin socket mode and ownership
310if racoon was built with support for admin port. 310if racoon was built with support for admin port.
311.Bl -tag -width Ds -compact 311.Bl -tag -width Ds -compact
312.It Ic adminsock Ar path Op Ar owner\ group\ mode ; 312.It Ic adminsock Ar path Op Ar owner\ group\ mode ;
313The 313The
314.Ar path , 314.Ar path ,
315.Ar owner , 315.Ar owner ,
316and 316and
317.Ar group 317.Ar group
318values specify the socket path, owner, and group. 318values specify the socket path, owner, and group.
319They must be quoted. 319They must be quoted.
320The defaults are 320The defaults are
321.Pa /var/racoon/racoon.sock , 321.Pa /var/racoon/racoon.sock ,
322UID 0, and GID 0. 322UID 0, and GID 0.
323.Ar mode 323.Ar mode
324is the access mode in octal. 324is the access mode in octal.
325The default is 0600. 325The default is 0600.
326.It Ic adminsock disabled ; 326.It Ic adminsock disabled ;
327This directive tells racoon to not listen on the admin socket. 327This directive tells racoon to not listen on the admin socket.
328.El 328.El
329.El 329.El
330.\" 330.\"
331.Ss Miscellaneous Global Parameters 331.Ss Miscellaneous Global Parameters
332.Bl -tag -width Ds -compact 332.Bl -tag -width Ds -compact
333.It Ic gss_id_enc Ar enctype ; 333.It Ic gss_id_enc Ar enctype ;
334Older versions of 334Older versions of
335.Xr racoon 8 335.Xr racoon 8
336used ISO-Latin-1 as the encoding of the GSS-API identifier attribute. 336used ISO-Latin-1 as the encoding of the GSS-API identifier attribute.
337For interoperability with Microsoft Windows' GSS-API authentication 337For interoperability with Microsoft Windows' GSS-API authentication
338scheme, the default encoding has been changed to UTF-16LE. 338scheme, the default encoding has been changed to UTF-16LE.
339The 339The
340.Ic gss_id_enc 340.Ic gss_id_enc
341parameter allows 341parameter allows
342.Xr racoon 8 342.Xr racoon 8
343to be configured to use the old encoding for compatibility with existing 343to be configured to use the old encoding for compatibility with existing
344.Xr racoon 8 344.Xr racoon 8
345installations. 345installations.
346The following are valid values for 346The following are valid values for
347.Ar enctype : 347.Ar enctype :
348.Pp 348.Pp
349.Bl -tag -width Ds -compact 349.Bl -tag -width Ds -compact
350.It Ic utf-16le 350.It Ic utf-16le
351Use UTF-16LE to encode the GSS-API identifier attribute. 351Use UTF-16LE to encode the GSS-API identifier attribute.
352This is the default encoding. 352This is the default encoding.
353This encoding is compatible with Microsoft Windows. 353This encoding is compatible with Microsoft Windows.
354.It Ic latin1 354.It Ic latin1
355Use ISO-Latin-1 to encode the GSS-API identifier attribute. 355Use ISO-Latin-1 to encode the GSS-API identifier attribute.
356This is the encoding used by older versions of 356This is the encoding used by older versions of
357.Xr racoon 8 . 357.Xr racoon 8 .
358.El 358.El
359.El 359.El
360.\" 360.\"
361.Pp 361.Pp
362.Bl -tag -width Ds -compact 362.Bl -tag -width Ds -compact
363.It Ic pfkey_buffer Ar kBytes 363.It Ic pfkey_buffer Ar kBytes
364Specifies the socket send/receive buffer size in kilobytes. 364Specifies the socket send/receive buffer size in kilobytes.
365Numerous kernel PF_KEY implementations have problems with dumping 365Numerous kernel PF_KEY implementations have problems with dumping
366SAD/SDP with large amount of entries (this happens when 100s to 366SAD/SDP with large amount of entries (this happens when 100s to
3671000s of tunnels are configured). 3671000s of tunnels are configured).
368.Pp 368.Pp
369The default value of 0 leaves everything at the OS-specific default value. 369The default value of 0 leaves everything at the OS-specific default value.
370If the default buffer size is greater than what is specified here racoon 370If the default buffer size is greater than what is specified here racoon
371will not decrease it. 371will not decrease it.
372.Pp 372.Pp
373This problem is known to be fixed in Linux 2.6.25 and later. 373This problem is known to be fixed in Linux 2.6.25 and later.
374.El 374.El
375.\" 375.\"
376.Ss Remote Nodes Specifications 376.Ss Remote Nodes Specifications
377.Bl -tag -width Ds -compact 377.Bl -tag -width Ds -compact
378.It Xo 378.It Xo
379.Ic remote Ar name 379.Ic remote Ar name
380.Bq Ic inherit Ar parent_name 380.Bq Ic inherit Ar parent_name
381.Ic { Ar statements Ic } 381.Ic { Ar statements Ic }
382.Xc 382.Xc
383Specifies the IKE phase 1 parameters for each remote node. 383Specifies the IKE phase 1 parameters for each remote node.
384.Pp 384.Pp
385If connection is initiated using racoonctl, a unique match using the 385If connection is initiated using racoonctl, a unique match using the
386remote IP must be found or the remote block name has to be given. 386remote IP must be found or the remote block name has to be given.
387For received acquires (kernel notices traffic requiring a new SA) the 387For received acquires (kernel notices traffic requiring a new SA) the
388remote IP and remoteid from matching sainfo block are used to decide 388remote IP and remoteid from matching sainfo block are used to decide
389the remoteblock. 389the remoteblock.
390If no uniquely matching remoteblock is found using 390If no uniquely matching remoteblock is found using
391these criteria, no connection attempt is done. 391these criteria, no connection attempt is done.
392.Pp 392.Pp
393When acting as responder, racoon picks the first proposal that has one 393When acting as responder, racoon picks the first proposal that has one
394or more acceptable remote configurations. 394or more acceptable remote configurations.
395When determining if a remote 395When determining if a remote
396specification is matching the following information is checked: 396specification is matching the following information is checked:
397.Bl -bullet -tag -width Ds -compact 397.Bl -bullet -tag -width Ds -compact
398.It 398.It
399The remote IP is checked against 399The remote IP is checked against
400.Ic remote_address . 400.Ic remote_address .
401.It 401.It
402ISAKMP exchange type is checked against 402ISAKMP exchange type is checked against
403.Ic exchange_mode . 403.Ic exchange_mode .
404.It 404.It
405ISAKMP SA attributes must match a 405ISAKMP SA attributes must match a
406.Ic proposal 406.Ic proposal
407block. 407block.
408.It 408.It
409The remote identity is matched against 409The remote identity is matched against
410.Ic peers_identifier 410.Ic peers_identifier
411if 411if
412.Ic verify_identifier 412.Ic verify_identifier
413is on. 413is on.
414.It 414.It
415If a certificate request was received, it must match the issuer of 415If a certificate request was received, it must match the issuer of
416.Ic "certificate_type x509" 416.Ic "certificate_type x509"
417certificate. 417certificate.
418If certificate request without issuer name was sent, the 418If certificate request without issuer name was sent, the
419.Ic match_empty_cr 419.Ic match_empty_cr
420parameter specifies whether or not remote block matches. 420parameter specifies whether or not remote block matches.
421.El 421.El
422.Pp 422.Pp
423Sections with 423Sections with
424.Ic inherit Ar parent 424.Ic inherit Ar parent
425statements (where 425statements (where
426.Ar parent 426.Ar parent
427is either 427is either
428.Ar address 428.Ar address
429or a keyword 429or a keyword
430.Ic anonymous ) 430.Ic anonymous )
431that have all values predefined to those of a given 431that have all values predefined to those of a given
432.Ar parent . 432.Ar parent .
433In these sections it is enough to redefine only the changed parameters. 433In these sections it is enough to redefine only the changed parameters.
434.Pp 434.Pp
435The following are valid statements. 435The following are valid statements.
436.Pp 436.Pp
437.Bl -tag -width Ds -compact 437.Bl -tag -width Ds -compact
438.\" 438.\"
439.It Ic remote_address Ar address ; 439.It Ic remote_address Ar address ;
440Defines the IP address of the peer. 440Defines the IP address of the peer.
441.\" 441.\"
442.It Ic exchange_mode ( main | aggressive | base ) ; 442.It Ic exchange_mode ( main | aggressive | base ) ;
443Defines the exchange mode for phase 1 when racoon is the initiator. 443Defines the exchange mode for phase 1 when racoon is the initiator.
444It also means the acceptable exchange mode when racoon is the responder. 444It also means the acceptable exchange mode when racoon is the responder.
445More than one mode can be specified by separating them with a comma. 445More than one mode can be specified by separating them with a comma.
446All of the modes are acceptable. 446All of the modes are acceptable.
447The first exchange mode is what racoon uses when it is the initiator. 447The first exchange mode is what racoon uses when it is the initiator.
448.\" 448.\"
449.It Ic doi Ic ipsec_doi ; 449.It Ic doi Ic ipsec_doi ;
450Means to use IPsec DOI as specified in RFC 2407. 450Means to use IPsec DOI as specified in RFC 2407.
451You can omit this statement. 451You can omit this statement.
452.\" 452.\"
453.It Ic situation Ic identity_only ; 453.It Ic situation Ic identity_only ;
454Means to use SIT_IDENTITY_ONLY as specified in RFC 2407. 454Means to use SIT_IDENTITY_ONLY as specified in RFC 2407.
455You can omit this statement. 455You can omit this statement.
456.\" 456.\"
457.It Xo 457.It Xo
458.Ic my_identifier Bq Ar qualifier 458.Ic my_identifier Bq Ar qualifier
459.Ar idtype ... ; 459.Ar idtype ... ;
460.Xc 460.Xc
461Specifies the identifier sent to the remote host 461Specifies the identifier sent to the remote host
462and the type to use in the phase 1 negotiation. 462and the type to use in the phase 1 negotiation.
463.Ic address, fqdn , user_fqdn , keyid , 463.Ic address, fqdn , user_fqdn , keyid ,
464and 464and
465.Ic asn1dn 465.Ic asn1dn
466can be used as an 466can be used as an
467.Ar idtype . 467.Ar idtype .
468The 468The
469.Ar qualifier 469.Ar qualifier
470is currently only used for 470is currently only used for
471.Ic keyid , 471.Ic keyid ,
472and can be either 472and can be either
473.Ic file 473.Ic file
474or 474or
475.Ic tag . 475.Ic tag .
476The possible values are : 476The possible values are :
477.Bl -tag -width Ds -compact 477.Bl -tag -width Ds -compact
478.It Ic my_identifier Ic address Bq Ar address ; 478.It Ic my_identifier Ic address Bq Ar address ;
479The type is the IP address. 479The type is the IP address.
480This is the default type if you do not specify an identifier to use. 480This is the default type if you do not specify an identifier to use.
481.It Ic my_identifier Ic user_fqdn Ar string ; 481.It Ic my_identifier Ic user_fqdn Ar string ;
482The type is a USER_FQDN (user fully-qualified domain name). 482The type is a USER_FQDN (user fully-qualified domain name).
483.It Ic my_identifier Ic fqdn Ar string ; 483.It Ic my_identifier Ic fqdn Ar string ;
484The type is a FQDN (fully-qualified domain name). 484The type is a FQDN (fully-qualified domain name).
485.It Xo 485.It Xo
486.Ic my_identifier Ic keyid Bq Ic file 486.Ic my_identifier Ic keyid Bq Ic file
487.Ar file ; 487.Ar file ;
488.Xc 488.Xc
489The type is a KEY_ID, read from the file. 489The type is a KEY_ID, read from the file.
490.It Ic my_identifier Ic keyid Ic tag Ar string ; 490.It Ic my_identifier Ic keyid Ic tag Ar string ;
491The type is a KEY_ID, specified in the quoted string. 491The type is a KEY_ID, specified in the quoted string.
492.It Ic my_identifier Ic asn1dn Bq Ar string ; 492.It Ic my_identifier Ic asn1dn Bq Ar string ;
493The type is an ASN.1 distinguished name. 493The type is an ASN.1 distinguished name.
494If 494If
495.Ar string 495.Ar string
496is omitted, 496is omitted,
497.Xr racoon 8 497.Xr racoon 8
498will get the DN from the Subject field in the certificate. 498will get the DN from the Subject field in the certificate.
499.El 499.El
500.\" 500.\"
501.It Ic xauth_login Bq Ar string ; 501.It Ic xauth_login Bq Ar string ;
502Specifies the login to use in client-side Hybrid authentication. 502Specifies the login to use in client-side Hybrid authentication.
503It is available only if 503It is available only if
504.Xr racoon 8 504.Xr racoon 8
505has been built with this option. 505has been built with this option.
506The associated password is looked up in the pre-shared key files, 506The associated password is looked up in the pre-shared key files,
507using the login 507using the login
508.Ic string 508.Ic string
509as the key id. 509as the key id.
510.\" 510.\"
511.It Ic peers_identifier Ar idtype ... ; 511.It Ic peers_identifier Ar idtype ... ;
512Specifies the peer's identifier to be received. 512Specifies the peer's identifier to be received.
513If it is not defined then 513If it is not defined then
514.Xr racoon 8 514.Xr racoon 8
515will not verify the peer's identifier in ID payload transmitted from the peer. 515will not verify the peer's identifier in ID payload transmitted from the peer.
516If it is defined, the behavior of the verification depends on the flag of 516If it is defined, the behavior of the verification depends on the flag of
517.Ic verify_identifier . 517.Ic verify_identifier .
518The usage of 518The usage of
519.Ar idtype 519.Ar idtype
520is the same as 520is the same as
521.Ic my_identifier 521.Ic my_identifier
522except that the individual component values of an 522except that the individual component values of an
523.Ic asn1dn 523.Ic asn1dn
524identifier may specified as 524identifier may specified as
525.Ic * 525.Ic *
526to match any value (e.g. "C=XX, O=MyOrg, OU=*, CN=Mine"). 526to match any value (e.g. "C=XX, O=MyOrg, OU=*, CN=Mine").
527The format of the 527The format of the
528specification should correspond to RFC 2253; in particular, commas and certain 528specification should correspond to RFC 2253; in particular, commas and certain
529other characters - 529other characters -
530.Ic ,=+\*[Lt]\*[Gt]#; 530.Ic ,=+\*[Lt]\*[Gt]#;
531- may be included in a name by preceeding them with a backslash "\e", and 531- may be included in a name by preceeding them with a backslash "\e", and
532arbitrary characters may be inserted in a name with the "\enn" escape, where 532arbitrary characters may be inserted in a name with the "\enn" escape, where
533nn is the hex representation of the ascii value of the desired character. 533nn is the hex representation of the ascii value of the desired character.
534Alternative acceptable peer identifiers may be specified by repeating the 534Alternative acceptable peer identifiers may be specified by repeating the
535.Ic peers_identifier 535.Ic peers_identifier
536statement. 536statement.
537.\" 537.\"
538.It Ic verify_identifier (on | off) ; 538.It Ic verify_identifier (on | off) ;
539If you want to verify the peer's identifier, 539If you want to verify the peer's identifier,
540set this to on. 540set this to on.
541In this case, if the value defined by 541In this case, if the value defined by
542.Ic peers_identifier 542.Ic peers_identifier
543is not the same as the peer's identifier in the ID payload, 543is not the same as the peer's identifier in the ID payload,
544the negotiation will fail. 544the negotiation will fail.
545The default is off. 545The default is off.
546.\" 546.\"
547.It Ic certificate_type Ar certspec ; 547.It Ic certificate_type Ar certspec ;
548Specifies a certificate specification. 548Specifies a certificate specification.
549.Ar certspec 549.Ar certspec
550is one of followings: 550is one of followings:
551.Bl -tag -width Ds -compact 551.Bl -tag -width Ds -compact
552.It Ic x509 Ar certfile Ar privkeyfile ; 552.It Ic x509 Ar certfile Ar privkeyfile ;
553.Ar certfile 553.Ar certfile
554means a file name of a certificate. 554means a file name of a certificate.
555.Ar privkeyfile 555.Ar privkeyfile
556means a file name of a secret key. 556means a file name of a secret key.
557.El 557.El
558.Bl -tag -width Ds -compact 558.Bl -tag -width Ds -compact
559.It Ic plain_rsa Ar privkeyfile ; 559.It Ic plain_rsa Ar privkeyfile ;
560.Ar privkeyfile 560.Ar privkeyfile
561means a file name of a private key generated by 561means a file name of a private key generated by
562.Xr plainrsa-gen 8 . 562.Xr plainrsa-gen 8 .
563Required 563Required
564for RSA authentication. 564for RSA authentication.
565.El 565.El
566.It Ic ca_type Ar cacertspec ; 566.It Ic ca_type Ar cacertspec ;
567Specifies a root certificate authority specification. 567Specifies a root certificate authority specification.
568.Ar cacertspec 568.Ar cacertspec
569is one of followings: 569is one of followings:
570.Bl -tag -width Ds -compact 570.Bl -tag -width Ds -compact
571.It Ic x509 Ar cacertfile ; 571.It Ic x509 Ar cacertfile ;
572.Ar cacertfile 572.Ar cacertfile
573means a file name of the root certificate authority. 573means a file name of the root certificate authority.
574Default is 574Default is
575.Pa /etc/openssl/cert.pem 575.Pa /etc/openssl/cert.pem
576.El 576.El
577.\" 577.\"
578.It Ic mode_cfg (on | off) ; 578.It Ic mode_cfg (on | off) ;
579Gather network information through ISAKMP mode configuration. 579Gather network information through ISAKMP mode configuration.
580Default is off. 580Default is off.
581.\" 581.\"
582.It Ic weak_phase1_check (on | off) ; 582.It Ic weak_phase1_check (on | off) ;
583Tells racoon to act on unencrypted deletion messages during phase 1. 583Tells racoon to act on unencrypted deletion messages during phase 1.
584This is a small security risk, so the default is off, meaning that 584This is a small security risk, so the default is off, meaning that
585racoon will keep on trying to establish a connection even if the 585racoon will keep on trying to establish a connection even if the
586user credentials are wrong, for instance. 586user credentials are wrong, for instance.
587.\" 587.\"
588.It Ic peers_certfile ( dnssec | Ar certfile | Ic plain_rsa Ar pubkeyfile ) ; 588.It Ic peers_certfile ( dnssec | Ar certfile | Ic plain_rsa Ar pubkeyfile ) ;
589If 589If
590.Ic dnssec 590.Ic dnssec
591is defined, 591is defined,
592.Xr racoon 8 592.Xr racoon 8
593will ignore the CERT payload from the peer, 593will ignore the CERT payload from the peer,
594and try to get the peer's certificate from DNS instead. 594and try to get the peer's certificate from DNS instead.
595If 595If
596.Ar certfile 596.Ar certfile
597is defined, 597is defined,
598.Xr racoon 8 598.Xr racoon 8
599will ignore the CERT payload from the peer, 599will ignore the CERT payload from the peer,
600and will use this certificate as the peer's certificate. 600and will use this certificate as the peer's certificate.
601If 601If
602.Ic plain_rsa 602.Ic plain_rsa
603is defined, 603is defined,
604.Xr racoon 8 604.Xr racoon 8
605will expect 605will expect
606.Ar pubkeyfile 606.Ar pubkeyfile
607to be the peer's public key that was generated by 607to be the peer's public key that was generated by
608.Xr plainrsa-gen 8 . 608.Xr plainrsa-gen 8 .
609.\" 609.\"
610.It Ic script Ar script Ic phase1_up 610.It Ic script Ar script Ic phase1_up
611.It Ic script Ar script Ic phase1_down 611.It Ic script Ar script Ic phase1_down
612Shell scripts that get executed when a phase 1 SA goes up or down. 612Shell scripts that get executed when a phase 1 SA goes up or down.
613Both scripts get either 613Both scripts get either
614.Ic phase1_up 614.Ic phase1_up
615or 615or
616.Ic phase1_down 616.Ic phase1_down
617as first argument, and the following 617as first argument, and the following
618variables are set in their environment: 618variables are set in their environment:
619.Bl -tag -width Ds -compact 619.Bl -tag -width Ds -compact
620.It Ev LOCAL_ADDR 620.It Ev LOCAL_ADDR
621The local address of the phase 1 SA. 621The local address of the phase 1 SA.
622.It Ev LOCAL_PORT 622.It Ev LOCAL_PORT
623The local port used for IKE for the phase 1 SA. 623The local port used for IKE for the phase 1 SA.
624.It Ev REMOTE_ADDR 624.It Ev REMOTE_ADDR
625The remote address of the phase 1 SA. 625The remote address of the phase 1 SA.
626.It Ev REMOTE_PORT 626.It Ev REMOTE_PORT
627The remote port used for IKE for the phase 1 SA. 627The remote port used for IKE for the phase 1 SA.
628.El 628.El
629The following variables are only set if 629The following variables are only set if
630.Ic mode_cfg 630.Ic mode_cfg
631was enabled: 631was enabled:
632.Bl -tag -width Ds -compact 632.Bl -tag -width Ds -compact
633.It INTERNAL_ADDR4 633.It INTERNAL_ADDR4
634An IPv4 internal address obtained by ISAKMP mode config. 634An IPv4 internal address obtained by ISAKMP mode config.
635.It INTERNAL_NETMASK4 635.It INTERNAL_NETMASK4
636An IPv4 internal netmask obtained by ISAKMP mode config. 636An IPv4 internal netmask obtained by ISAKMP mode config.
637.It INTERNAL_CIDR4 637.It INTERNAL_CIDR4
638An IPv4 internal netmask obtained by ISAKMP mode config, in CIDR notation. 638An IPv4 internal netmask obtained by ISAKMP mode config, in CIDR notation.
639.It INTERNAL_DNS4 639.It INTERNAL_DNS4
640The first internal DNS server IPv4 address obtained by ISAKMP mode config. 640The first internal DNS server IPv4 address obtained by ISAKMP mode config.
641.It INTERNAL_DNS4_LIST 641.It INTERNAL_DNS4_LIST
642A list of internal DNS servers IPv4 address obtained by ISAKMP mode config, 642A list of internal DNS servers IPv4 address obtained by ISAKMP mode config,
643separated by spaces. 643separated by spaces.
644.It INTERNAL_WINS4 644.It INTERNAL_WINS4
645The first internal WINS server IPv4 address obtained by ISAKMP mode config. 645The first internal WINS server IPv4 address obtained by ISAKMP mode config.
646.It INTERNAL_WINS4_LIST 646.It INTERNAL_WINS4_LIST
647A list of internal WINS servers IPv4 address obtained by ISAKMP mode config, 647A list of internal WINS servers IPv4 address obtained by ISAKMP mode config,
648separated by spaces. 648separated by spaces.
649.It SPLIT_INCLUDE 649.It SPLIT_INCLUDE
650The space separated list of IPv4 addresses and masks (address slash mask) 650The space separated list of IPv4 addresses and masks (address slash mask)
651that define the networks to be encrypted (as opposed to the default where 651that define the networks to be encrypted (as opposed to the default where
652all the traffic should be encrypted) ; obtained by ISAKMP mode config ; 652all the traffic should be encrypted) ; obtained by ISAKMP mode config ;
653SPLIT_INCLUDE and SPLIT_LOCAL are mutually exclusive. 653SPLIT_INCLUDE and SPLIT_LOCAL are mutually exclusive.
654.It SPLIT_LOCAL 654.It SPLIT_LOCAL
655The space separated list of IPv4 addresses and masks (address slash mask) 655The space separated list of IPv4 addresses and masks (address slash mask)
656that define the networks to be considered local, and thus excluded from the 656that define the networks to be considered local, and thus excluded from the
657tunnels ; obtained by ISAKMP mode config. 657tunnels ; obtained by ISAKMP mode config.
658.It SPLIT_INCLUDE_CIDR 658.It SPLIT_INCLUDE_CIDR
659Same as SPLIT_INCLUDE, with netmasks in CIDR notation. 659Same as SPLIT_INCLUDE, with netmasks in CIDR notation.
660.It SPLIT_LOCAL_CIDR 660.It SPLIT_LOCAL_CIDR
661Same as SPLIT_LOCAL, with netmasks in CIDR notation. 661Same as SPLIT_LOCAL, with netmasks in CIDR notation.
662.It DEFAULT_DOMAIN 662.It DEFAULT_DOMAIN
663The DNS default domain name obtained by ISAKMP mode config. 663The DNS default domain name obtained by ISAKMP mode config.
664.El 664.El
665.\" 665.\"
666.\" 666.\"
667.It Ic send_cert (on | off) ; 667.It Ic send_cert (on | off) ;
668If you do not want to send a certificate, set this to off. 668If you do not want to send a certificate, set this to off.
669The default is on. 669The default is on.
670.\" 670.\"
671.It Ic send_cr (on | off) ; 671.It Ic send_cr (on | off) ;
672If you do not want to send a certificate request, set this to off. 672If you do not want to send a certificate request, set this to off.
673The default is on. 673The default is on.
674.\" 674.\"
675.It Ic match_empty_cr (on | off) ; 675.It Ic match_empty_cr (on | off) ;
676Specifies whether this remote block is a valid match when a non-specific 676Specifies whether this remote block is a valid match when a non-specific
677certificate request is received. 677certificate request is received.
678The default is on. 678The default is on.
679.\" 679.\"
680.It Ic verify_cert (on | off) ; 680.It Ic verify_cert (on | off) ;
681By default, the identifier sent by the remote host (as specified in its 681By default, the identifier sent by the remote host (as specified in its
682.Ic my_identifier 682.Ic my_identifier
683statement) is compared with the credentials in the certificate 683statement) is compared with the credentials in the certificate
684used to authenticate the remote host as follows: 684used to authenticate the remote host as follows:
685.Bl -tag -width Ds -compact 685.Bl -tag -width Ds -compact
686.It Type Ic asn1dn : 686.It Type Ic asn1dn :
687The entire certificate subject name is compared with the identifier, 687The entire certificate subject name is compared with the identifier,
688e.g. "C=XX, O=YY, ...". 688e.g. "C=XX, O=YY, ...".
689.It Type Ic address, fqdn, or user_fqdn : 689.It Type Ic address, fqdn, or user_fqdn :
690The certificate's subjectAltName is compared with the identifier. 690The certificate's subjectAltName is compared with the identifier.
691.El 691.El
692If the two do not match the negotiation will fail. 692If the two do not match the negotiation will fail.
693If you do not want to verify the identifier using the peer's certificate, 693If you do not want to verify the identifier using the peer's certificate,
694set this to off. 694set this to off.
695.\" 695.\"
696.It Ic lifetime time Ar number Ar timeunit ; 696.It Ic lifetime time Ar number Ar timeunit ;
697Define a lifetime of a certain time 697Define a lifetime of a certain time
698which will be proposed in the phase 1 negotiations. 698which will be proposed in the phase 1 negotiations.
699Any proposal will be accepted, and the attribute(s) will not be proposed to 699Any proposal will be accepted, and the attribute(s) will not be proposed to
700the peer if you do not specify it (them). 700the peer if you do not specify it (them).
701They can be individually specified in each proposal. 701They can be individually specified in each proposal.
702.\" 702.\"
703.It Ic ike_frag (on | off | force) ; 703.It Ic ike_frag (on | off | force) ;
704Enable receiver-side IKE fragmentation if 704Enable receiver-side IKE fragmentation if
705.Xr racoon 8 705.Xr racoon 8
706has been built with this feature. 706has been built with this feature.
707If set to on, racoon will advertise 707If set to on, racoon will advertise
708itself as being capable of receiving packets split by IKE fragmentation. 708itself as being capable of receiving packets split by IKE fragmentation.
709This extension is there to work around broken firewalls that do not 709This extension is there to work around broken firewalls that do not
710work with fragmented UDP packets. 710work with fragmented UDP packets.
711IKE fragmentation is always enabled on the sender-side, and it is 711IKE fragmentation is always enabled on the sender-side, and it is
712used if the peer advertises itself as IKE fragmentation capable. 712used if the peer advertises itself as IKE fragmentation capable.
713By selecting force, IKE Fragmentation will 713By selecting force, IKE Fragmentation will
714be used when racoon is acting as the initiator even before the remote 714be used when racoon is acting as the initiator even before the remote
715peer has advertised itself as IKE fragmentation capable. 715peer has advertised itself as IKE fragmentation capable.
716.\" 716.\"
717.It Ic esp_frag Ar fraglen ; 717.It Ic esp_frag Ar fraglen ;
718This option is only relevant if you use NAT traversal in tunnel mode. 718This option is only relevant if you use NAT traversal in tunnel mode.
719Its purpose is to work around broken DSL routers that reject UDP 719Its purpose is to work around broken DSL routers that reject UDP
720fragments, by fragmenting the IP packets before ESP encapsulation. 720fragments, by fragmenting the IP packets before ESP encapsulation.
721The result is ESP over UDP of fragmented packets instead of fragmented 721The result is ESP over UDP of fragmented packets instead of fragmented
722ESP over UDP packets (i.e., IP:UDP:ESP:frag(IP) instead of 722ESP over UDP packets (i.e., IP:UDP:ESP:frag(IP) instead of
723frag(IP:UDP:ESP:IP)). 723frag(IP:UDP:ESP:IP)).
724.Ar fraglen 724.Ar fraglen
725is the maximum size of the fragments. 725is the maximum size of the fragments.
726552 should work anywhere, 726552 should work anywhere,
727but the higher 727but the higher
728.Ar fraglen 728.Ar fraglen
729is, the better the performance. 729is, the better the performance.
730.Pp 730.Pp
731Note that because PMTU discovery is broken on many sites, you will 731Note that because PMTU discovery is broken on many sites, you will
732have to use MSS clamping if you want TCP to work correctly. 732have to use MSS clamping if you want TCP to work correctly.
733.\" 733.\"
734.It Ic initial_contact (on | off) ; 734.It Ic initial_contact (on | off) ;
735Enable this to send an INITIAL-CONTACT message. 735Enable this to send an INITIAL-CONTACT message.
736The default value is 736The default value is
737.Ic on . 737.Ic on .
738This message is useful only when the responder implementation chooses an 738This message is useful only when the responder implementation chooses an
739old SA when there are multiple SAs with different established time and the 739old SA when there are multiple SAs with different established time and the
740initiator reboots. 740initiator reboots.
741If racoon did not send the message, 741If racoon did not send the message,
742the responder would use an old SA even when a new SA was established. 742the responder would use an old SA even when a new SA was established.
743For systems that use a KAME derived IPSEC stack, the 743For systems that use a KAME derived IPSEC stack, the
744.Xr sysctl 8 744.Xr sysctl 8
745variable net.key.preferred_oldsa can be used to control this preference. 745variable net.key.preferred_oldsa can be used to control this preference.
746When the value is zero, the stack always uses a new SA. 746When the value is zero, the stack always uses a new SA.
747.\" 747.\"
748.It Ic passive (on | off) ; 748.It Ic passive (on | off) ;
749If you do not want to initiate the negotiation, set this to on. 749If you do not want to initiate the negotiation, set this to on.
750The default value is 750The default value is
751.Ic off . 751.Ic off .
752It is useful for a server. 752It is useful for a server.
753.\" 753.\"
754.It Ic proposal_check Ar level ; 754.It Ic proposal_check Ar level ;
755Specifies the action of lifetime length, key length, and PFS of the phase 2 755Specifies the action of lifetime length, key length, and PFS of the phase 2
756selection on the responder side, and the action of lifetime check in 756selection on the responder side, and the action of lifetime check in
757phase 1. 757phase 1.
758The default level is 758The default level is
759.Ic strict . 759.Ic strict .
760If the 760If the
761.Ar level 761.Ar level
762is: 762is:
763.Bl -tag -width Ds -compact 763.Bl -tag -width Ds -compact
764.It Ic obey 764.It Ic obey
765The responder will obey the initiator anytime. 765The responder will obey the initiator anytime.
766.It Ic strict 766.It Ic strict
767If the responder's lifetime length is longer than the initiator's or 767If the responder's lifetime length is longer than the initiator's or
768the responder's key length is shorter than the initiator's, 768the responder's key length is shorter than the initiator's,
769the responder will use the initiator's value. 769the responder will use the initiator's value.
770Otherwise, the proposal will be rejected. 770Otherwise, the proposal will be rejected.
771If PFS is not required by the responder, the responder will obey the proposal. 771If PFS is not required by the responder, the responder will obey the proposal.
772If PFS is required by both sides and the responder's group is not equal to 772If PFS is required by both sides and the responder's group is not equal to
773the initiator's, then the responder will reject the proposal. 773the initiator's, then the responder will reject the proposal.
774.It Ic claim 774.It Ic claim
775If the responder's lifetime length is longer than the initiator's or 775If the responder's lifetime length is longer than the initiator's or
776the responder's key length is shorter than the initiator's, 776the responder's key length is shorter than the initiator's,
777the responder will use the initiator's value. 777the responder will use the initiator's value.
778If the responder's lifetime length is shorter than the initiator's, 778If the responder's lifetime length is shorter than the initiator's,
779the responder uses its own length AND sends a RESPONDER-LIFETIME notify 779the responder uses its own length AND sends a RESPONDER-LIFETIME notify
780message to an initiator in the case of lifetime (phase 2 only). 780message to an initiator in the case of lifetime (phase 2 only).
781For PFS, this directive behaves the same as 781For PFS, this directive behaves the same as
782.Ic strict . 782.Ic strict .
783.It Ic exact 783.It Ic exact
784If the initiator's lifetime or key length is not equal to the responder's, 784If the initiator's lifetime or key length is not equal to the responder's,
785the responder will reject the proposal. 785the responder will reject the proposal.
786If PFS is required by both sides and the responder's group is not equal to 786If PFS is required by both sides and the responder's group is not equal to
787the initiator's, then the responder will reject the proposal. 787the initiator's, then the responder will reject the proposal.
788.El 788.El
789.\" 789.\"
790.It Ic support_proxy (on | off) ; 790.It Ic support_proxy (on | off) ;
791If this value is set to on, then both values of ID payloads in the 791If this value is set to on, then both values of ID payloads in the
792phase 2 exchange are always used as the addresses of end-point of 792phase 2 exchange are always used as the addresses of end-point of
793IPsec-SAs. 793IPsec-SAs.
794The default is off. 794The default is off.
795.\" 795.\"
796.It Ic generate_policy (on | off | require | unique) ; 796.It Ic generate_policy (on | off | require | unique) ;
797This directive is for the responder. 797This directive is for the responder.
798Therefore you should set 798Therefore you should set
799.Ic passive 799.Ic passive
800to on in order that 800to on in order that
801.Xr racoon 8 801.Xr racoon 8
802only becomes a responder. 802only becomes a responder.
803If the responder does not have any policy in SPD during phase 2 803If the responder does not have any policy in SPD during phase 2
804negotiation, and the directive is set to on, then 804negotiation, and the directive is set to on, then
805.Xr racoon 8 805.Xr racoon 8
806will choose the first proposal in the 806will choose the first proposal in the
807SA payload from the initiator, and generate policy entries from the proposal. 807SA payload from the initiator, and generate policy entries from the proposal.
808It is useful to negotiate with clients whose IP address is allocated 808It is useful to negotiate with clients whose IP address is allocated
809dynamically. 809dynamically.
810Note that an inappropriate policy might be installed into the responder's SPD 810Note that an inappropriate policy might be installed into the responder's SPD
811by the initiator, 811by the initiator,
812so other communications might fail if such policies are installed 812so other communications might fail if such policies are installed
813due to a policy mismatch between the initiator and the responder. 813due to a policy mismatch between the initiator and the responder.
814.Ic on 814.Ic on
815and 815and
816.Ic require 816.Ic require
817values mean the same thing (generate a require policy). 817values mean the same thing (generate a require policy).
818.Ic unique 818.Ic unique
819tells racoon to set up unique policies, with a monotoning increasing 819tells racoon to set up unique policies, with a monotoning increasing
820reqid number (between 1 and IPSEC_MANUAL_REQID_MAX). 820reqid number (between 1 and IPSEC_MANUAL_REQID_MAX).
821This directive is ignored in the initiator case. 821This directive is ignored in the initiator case.
822The default value is 822The default value is
823.Ic off . 823.Ic off .
824.\" 824.\"
825.\" 825.\"
826.It Ic nat_traversal (on | off | force) ; 826.It Ic nat_traversal (on | off | force) ;
827This directive enables use of the NAT-Traversal IPsec extension 827This directive enables use of the NAT-Traversal IPsec extension
828(NAT-T). 828(NAT-T).
829NAT-T allows one or both peers to reside behind a NAT gateway (i.e., 829NAT-T allows one or both peers to reside behind a NAT gateway (i.e.,
830doing address- or port-translation). 830doing address- or port-translation).
831If a NAT gateway is detected during the phase 1 handshake, racoon will 831If a NAT gateway is detected during the phase 1 handshake, racoon will
832attempt to negotiate the use of NAT-T with the remote peer. 832attempt to negotiate the use of NAT-T with the remote peer.
833If the negotiation succeeds, all ESP and AH packets for the given connection 833If the negotiation succeeds, all ESP and AH packets for the given connection
834will be encapsulated into UDP datagrams (port 4500, by default). 834will be encapsulated into UDP datagrams (port 4500, by default).
835Possible values are: 835Possible values are:
836.Bl -tag -width Ds -compact 836.Bl -tag -width Ds -compact
837.It Ic on 837.It Ic on
838NAT-T is used when a NAT gateway is detected between the peers. 838NAT-T is used when a NAT gateway is detected between the peers.
839.It Ic off 839.It Ic off
840NAT-T is not proposed/accepted. 840NAT-T is not proposed/accepted.
841This is the default. 841This is the default.
842.It Ic force 842.It Ic force
843NAT-T is used regardless of whether a NAT gateway is detected between the 843NAT-T is used regardless of whether a NAT gateway is detected between the
844peers or not. 844peers or not.
845.El 845.El
846Please note that NAT-T support is a compile-time option. 846Please note that NAT-T support is a compile-time option.
847Although it is enabled in the source distribution by default, it 847Although it is enabled in the source distribution by default, it
848may not be available in your particular build. 848may not be available in your particular build.
849In that case you will get a 849In that case you will get a
850warning when using any NAT-T related config options. 850warning when using any NAT-T related config options.
851.\" 851.\"
852.It Ic dpd_delay Ar delay ; 852.It Ic dpd_delay Ar delay ;
853This option activates the DPD and sets the time (in seconds) allowed 853This option activates the DPD and sets the time (in seconds) allowed
854between 2 proof of liveliness requests. 854between 2 proof of liveliness requests.
855The default value is 855The default value is
856.Ic 0 , 856.Ic 0 ,
857which disables DPD monitoring, but still negotiates DPD support. 857which disables DPD monitoring, but still negotiates DPD support.
858.\" 858.\"
859.It Ic dpd_retry Ar delay ; 859.It Ic dpd_retry Ar delay ;
860If 860If
861.Ic dpd_delay 861.Ic dpd_delay
862is set, this sets the delay (in seconds) to wait for a proof of 862is set, this sets the delay (in seconds) to wait for a proof of
863liveliness before considering it as failed and send another request. 863liveliness before considering it as failed and send another request.
864The default value is 864The default value is
865.Ic 5 . 865.Ic 5 .
866.\" 866.\"
867.It Ic dpd_maxfail Ar number ; 867.It Ic dpd_maxfail Ar number ;
868If 868If
869.Ic dpd_delay 869.Ic dpd_delay
870is set, this sets the maximum number of liveliness proofs to request 870is set, this sets the maximum number of liveliness proofs to request
871(without reply) before considering the peer is dead. 871(without reply) before considering the peer is dead.
872The default value is 872The default value is
873.Ic 5 . 873.Ic 5 .
874.\" 874.\"
875.It Ic rekey (on | off | force) ; 875.It Ic rekey (on | off | force) ;
876Enable automatic renegotiation of expired phase1 when there are non-dying 876Enable automatic renegotiation of expired phase1 when there are non-dying
877phase2 SAs. 877phase2 SAs.
878Possible values are: 878Possible values are:
879.Bl -tag -width Ds -compact 879.Bl -tag -width Ds -compact
880.It Ic force 880.It Ic force
881Rekeying is done unconditionally. 881Rekeying is done unconditionally.
882.It Ic on 882.It Ic on
883Rekeying is done only if DPD monitoring is active. 883Rekeying is done only if DPD monitoring is active.
884This is the default. 884This is the default.
885.It Ic off 885.It Ic off
886No automatic rekeying. 886No automatic rekeying.
887Do note that turning off automatic rekeying will 887Do note that turning off automatic rekeying will
888result in inaccurate DPD monitoring. 888result in inaccurate DPD monitoring.
889.El 889.El
890.\" 890.\"
891.It Ic nonce_size Ar number ; 891.It Ic nonce_size Ar number ;
892define the byte size of nonce value. 892define the byte size of nonce value.
893Racoon can send any value although 893Racoon can send any value although
894RFC2409 specifies that the value MUST be between 8 and 256 bytes. 894RFC2409 specifies that the value MUST be between 8 and 256 bytes.
895The default size is 16 bytes. 895The default size is 16 bytes.
896.\" 896.\"
897.It Ic ph1id Ar number ; 897.It Ic ph1id Ar number ;
898An optional number to identify the remote proposal and to link it 898An optional number to identify the remote proposal and to link it
899only with sainfos who have the same number. 899only with sainfos who have the same number.
900Defaults to 0. 900Defaults to 0.
901.\" 901.\"
902.It Xo 902.It Xo
903.Ic proposal { Ar sub-substatements Ic } 903.Ic proposal { Ar sub-substatements Ic }
904.Xc 904.Xc
905.Bl -tag -width Ds -compact 905.Bl -tag -width Ds -compact
906.\" 906.\"
907.It Ic encryption_algorithm Ar algorithm ; 907.It Ic encryption_algorithm Ar algorithm ;
908Specifies the encryption algorithm used for the phase 1 negotiation. 908Specifies the encryption algorithm used for the phase 1 negotiation.
909This directive must be defined. 909This directive must be defined.
910.Ar algorithm 910.Ar algorithm
911is one of following: 911is one of following:
912.Ic des, 3des, blowfish, cast128, aes, camellia 912.Ic des, 3des, blowfish, cast128, aes, camellia
913.\".Ic rc5 , idea 913.\".Ic rc5 , idea
914for Oakley. 914for Oakley.
915For other transforms, this statement should not be used. 915For other transforms, this statement should not be used.
916.\" 916.\"
917.It Ic hash_algorithm Ar algorithm ; 917.It Ic hash_algorithm Ar algorithm ;
918Defines the hash algorithm used for the phase 1 negotiation. 918Defines the hash algorithm used for the phase 1 negotiation.
919This directive must be defined. 919This directive must be defined.
920.Ar algorithm 920.Ar algorithm
921is one of following: 921is one of following:
922.Ic md5, sha1, sha256, sha384, sha512 922.Ic md5, sha1, sha256, sha384, sha512
923for Oakley. 923for Oakley.
924.\" 924.\"
925.It Ic authentication_method Ar type ; 925.It Ic authentication_method Ar type ;
926Defines the authentication method used for the phase 1 negotiation. 926Defines the authentication method used for the phase 1 negotiation.
927This directive must be defined. 927This directive must be defined.
928.Ar type 928.Ar type
929is one of: 929is one of:
930.Ic pre_shared_key , rsasig 930.Ic pre_shared_key , rsasig
931(for plain RSA authentication), 931(for plain RSA authentication),
932.Ic gssapi_krb , hybrid_rsa_server , 932.Ic gssapi_krb , hybrid_rsa_server ,
933.Ic hybrid_rsa_client , xauth_rsa_server , xauth_rsa_client , xauth_psk_server 933.Ic hybrid_rsa_client , xauth_rsa_server , xauth_rsa_client , xauth_psk_server
934or 934or
935.Ic xauth_psk_client . 935.Ic xauth_psk_client .
936.\" 936.\"
937.It Ic dh_group Ar group ; 937.It Ic dh_group Ar group ;
938Defines the group used for the Diffie-Hellman exponentiations. 938Defines the group used for the Diffie-Hellman exponentiations.
939This directive must be defined. 939This directive must be defined.
940.Ar group 940.Ar group
941is one of following: 941is one of following:
942.Ic modp768 , modp1024 , modp1536 , 942.Ic modp768 , modp1024 , modp1536 ,
943.Ic modp2048 , modp3072 , modp4096 , 943.Ic modp2048 , modp3072 , modp4096 ,
944.Ic modp6144 , modp8192 . 944.Ic modp6144 , modp8192 .
945Or you can define 1, 2, 5, 14, 15, 16, 17, or 18 as the DH group number. 945Or you can define 1, 2, 5, 14, 15, 16, 17, or 18 as the DH group number.
946When you want to use aggressive mode, 946When you want to use aggressive mode,
947you must define the same DH group in each proposal. 947you must define the same DH group in each proposal.
948.It Ic lifetime time Ar number Ar timeunit ; 948.It Ic lifetime time Ar number Ar timeunit ;
949Defines the lifetime of the phase 1 SA proposal. 949Defines the lifetime of the phase 1 SA proposal.
950Refer to the description of the 950Refer to the description of the
951.Ic lifetime 951.Ic lifetime
952directive defined in the 952directive defined in the
953.Ic remote 953.Ic remote
954directive. 954directive.
955.It Ic gss_id Ar string ; 955.It Ic gss_id Ar string ;
956Defines the GSS-API endpoint name, to be included as an attribute in the SA, 956Defines the GSS-API endpoint name, to be included as an attribute in the SA,
957if the 957if the
958.Ic gssapi_krb 958.Ic gssapi_krb
959authentication method is used. 959authentication method is used.
960If this is not defined, the default value of 960If this is not defined, the default value of
961.Ql host/hostname 961.Ql host/hostname
962is used, where hostname is the value returned by the 962is used, where hostname is the value returned by the
963.Xr hostname 1 963.Xr hostname 1
964command. 964command.
965.El 965.El
966.El 966.El
967.Pp 967.Pp
968.It Xo 968.It Xo
969.Ic remote ( Ar address | Ic anonymous ) 969.Ic remote ( Ar address | Ic anonymous )
970.Bq Bq Ar port 970.Bq Bq Ar port
971.Bq Ic inherit Ar parent 971.Bq Ic inherit Ar parent
972.Ic { Ar statements Ic } 972.Ic { Ar statements Ic }
973.Xc 973.Xc
974Deprecated format of specifying a remote block. 974Deprecated format of specifying a remote block.
975This will be removed in future. 975This will be removed in future.
976It is a remnant from time when remote block was decided 976It is a remnant from time when remote block was decided
977solely based on the peers IP address. 977solely based on the peers IP address.
978.Pp 978.Pp
979This is equivalent to: 979This is equivalent to:
980.Bd -literal -offset 980.Bd -literal -offset
981remote "address" [inherit "parent-address"] { 981remote "address" [inherit "parent-address"] {
982 remote_address address; 982 remote_address address;
983} 983}
984.Ed 984.Ed
985.El 985.El
986.\" 986.\"
987.Ss Sainfo Specifications 987.Ss Sainfo Specifications
988.Bl -tag -width Ds -compact 988.Bl -tag -width Ds -compact
989.It Xo 989.It Xo
990.Ic sainfo ( Ar local_id | Ic anonymous ) ( Ar remote_id | Ic clientaddr | Ic anonymous ) [ from Ar idtype [ Ar string ] ] [ Ic group Ar string ] 990.Ic sainfo ( Ar local_id | Ic anonymous ) ( Ar remote_id | Ic clientaddr | Ic anonymous ) [ from Ar idtype [ Ar string ] ] [ Ic group Ar string ]
991.Ic { Ar statements Ic } 991.Ic { Ar statements Ic }
992.Xc 992.Xc
993Defines the parameters of the IKE phase 2 (IPsec-SA establishment). 993Defines the parameters of the IKE phase 2 (IPsec-SA establishment).
994.Pp 994.Pp
995The 995The
996.Ar local_id 996.Ar local_id
997and 997and
998.Ar remote_id 998.Ar remote_id
999strings are constructed like: 999strings are constructed like:
1000.Pp 1000.Pp
1001.Ic address Ar address 1001.Ic address Ar address
1002.Bq Ic / Ar prefix 1002.Bq Ic / Ar prefix
1003.Bq Ic [ Ar port ] 1003.Bq Ic [ Ar port ]
1004.Ar ul_proto 1004.Ar ul_proto
1005.Pp 1005.Pp
1006or 1006or
1007.Pp 1007.Pp
1008.Ic subnet Ar address 1008.Ic subnet Ar address
1009.Bq Ic / Ar prefix 1009.Bq Ic / Ar prefix
1010.Bq Ic [ Ar port ] 1010.Bq Ic [ Ar port ]
1011.Ar ul_proto 1011.Ar ul_proto
1012.Pp 1012.Pp
1013An id string should be expressed to match the exact value of an ID payload. 1013An id string should be expressed to match the exact value of an ID payload.
1014This is not like a filter rule. 1014This is not like a filter rule.
1015For example, if you define 3ffe:501:4819::/48 as 1015For example, if you define 3ffe:501:4819::/48 as
1016.Ar local_id . 1016.Ar local_id .
10173ffe:501:4819:1000:/64 will not match. 10173ffe:501:4819:1000:/64 will not match.
1018In the case of a longest prefix (selecting a single host), 1018In the case of a longest prefix (selecting a single host),
1019.Ar address 1019.Ar address
1020instructs to send ID type of ADDRESS while 1020instructs to send ID type of ADDRESS while
1021.Ar subnet 1021.Ar subnet
1022instructs to send ID type of SUBNET. 1022instructs to send ID type of SUBNET.
1023Otherwise, these instructions are identical. 1023Otherwise, these instructions are identical.
1024.Pp 1024.Pp
1025The 1025The
1026.Ic anonymous 1026.Ic anonymous
1027keyword can be used to match any id. 1027keyword can be used to match any id.
1028The 1028The
1029.Ic clientaddr 1029.Ic clientaddr
1030keyword can be used to match a remote id that is equal to either the peer 1030keyword can be used to match a remote id that is equal to either the peer
1031ip address or the mode_cfg ip address ( if assigned ). 1031ip address or the mode_cfg ip address (if assigned).
1032This can be useful 1032This can be useful
1033to restrict policy generation when racoon is acting as a client gateway 1033to restrict policy generation when racoon is acting as a client gateway
1034for peers with dynamic ip addresses. 1034for peers with dynamic ip addresses.
1035.Pp 1035.Pp
1036The 1036The
1037.Ic from 1037.Ic from
1038keyword allows an sainfo to only match for peers that use a specific phase1 1038keyword allows an sainfo to only match for peers that use a specific phase1
1039id value during authentication. 1039id value during authentication.
1040The 1040The
1041.Ic group 1041.Ic group
1042keyword allows an XAuth group membership check to be performed 1042keyword allows an XAuth group membership check to be performed
1043for this sainfo section. 1043for this sainfo section.
1044When the mode_cfg auth source is set to 1044When the mode_cfg auth source is set to
1045.Ic system 1045.Ic system
1046or 1046or
1047.Ic ldap , 1047.Ic ldap ,
1048the XAuth user is verified to be a member of the specified group 1048the XAuth user is verified to be a member of the specified group
1049before allowing a matching SA to be negotiated. 1049before allowing a matching SA to be negotiated.
1050.Pp 1050.Pp
1051.Bl -tag -width Ds -compact 1051.Bl -tag -width Ds -compact
1052.\" 1052.\"
1053.It Ic pfs_group Ar group ; 1053.It Ic pfs_group Ar group ;
1054define the group of Diffie-Hellman exponentiations. 1054define the group of Diffie-Hellman exponentiations.
1055If you do not require PFS then you can omit this directive. 1055If you do not require PFS then you can omit this directive.
1056Any proposal will be accepted if you do not specify one. 1056Any proposal will be accepted if you do not specify one.
1057.Ar group 1057.Ar group
1058is one of following: 1058is one of following:
1059.Ic modp768 , modp1024 , modp1536 , 1059.Ic modp768 , modp1024 , modp1536 ,
1060.Ic modp2048 , modp3072 , modp4096 , 1060.Ic modp2048 , modp3072 , modp4096 ,
1061.Ic modp6144 , modp8192 . 1061.Ic modp6144 , modp8192 .
1062Or you can define 1, 2, 5, 14, 15, 16, 17, or 18 as the DH group number. 1062Or you can define 1, 2, 5, 14, 15, 16, 17, or 18 as the DH group number.
1063.\" 1063.\"
1064.It Ic lifetime time Ar number Ar timeunit ; 1064.It Ic lifetime time Ar number Ar timeunit ;
1065define how long an IPsec-SA will be used, in timeunits. 1065define how long an IPsec-SA will be used, in timeunits.
1066Any proposal will be accepted, and no attribute(s) will be proposed to 1066Any proposal will be accepted, and no attribute(s) will be proposed to
1067the peer if you do not specify it(them). 1067the peer if you do not specify it(them).
1068See the 1068See the
1069.Ic proposal_check 1069.Ic proposal_check
1070directive. 1070directive.
1071.\" 1071.\"
1072.It Ic remoteid Ar number ; 1072.It Ic remoteid Ar number ;
1073Sainfos will only be used if their remoteid matches the ph1id of the 1073Sainfos will only be used if their remoteid matches the ph1id of the
1074remote section used for phase 1. 1074remote section used for phase 1.
1075Defaults to 0, which is also the default for ph1id. 1075Defaults to 0, which is also the default for ph1id.
1076.El 1076.El
1077.\" 1077.\"
1078.Pp 1078.Pp
1079.Xr racoon 8 1079.Xr racoon 8
1080does not have a list of security protocols to be negotiated. 1080does not have a list of security protocols to be negotiated.
1081The list of security protocols are passed by SPD in the kernel. 1081The list of security protocols are passed by SPD in the kernel.
1082Therefore you have to define all of the potential algorithms 1082Therefore you have to define all of the potential algorithms
1083in the phase 2 proposals even if there are algorithms which will not be used. 1083in the phase 2 proposals even if there are algorithms which will not be used.
1084These algorithms are define by using the following three directives, 1084These algorithms are define by using the following three directives,
1085with a single comma as the separator. 1085with a single comma as the separator.
1086For algorithms that can take variable-length keys, algorithm names 1086For algorithms that can take variable-length keys, algorithm names
1087can be followed by a key length, like 1087can be followed by a key length, like
1088.Dq Li blowfish 448 . 1088.Dq Li blowfish 448 .
1089.Xr racoon 8 1089.Xr racoon 8
1090will compute the actual phase 2 proposals by computing 1090will compute the actual phase 2 proposals by computing
1091the permutation of the specified algorithms, 1091the permutation of the specified algorithms,
1092and then combining them with the security protocol specified by the SPD. 1092and then combining them with the security protocol specified by the SPD.
1093For example, if 1093For example, if
1094.Ic des , 3des , hmac_md5 , 1094.Ic des , 3des , hmac_md5 ,
1095and 1095and
1096.Ic hmac_sha1 1096.Ic hmac_sha1
1097are specified as algorithms, we have four combinations for use with ESP, 1097are specified as algorithms, we have four combinations for use with ESP,
1098and two for AH. 1098and two for AH.
1099Then, based on the SPD settings, 1099Then, based on the SPD settings,
1100.Xr racoon 8 1100.Xr racoon 8
1101will construct the actual proposals. 1101will construct the actual proposals.
1102If the SPD entry asks for ESP only, there will be 4 proposals. 1102If the SPD entry asks for ESP only, there will be 4 proposals.
1103If it asks for both AH and ESP, there will be 8 proposals. 1103If it asks for both AH and ESP, there will be 8 proposals.
1104Note that the kernel may not support the algorithm you have specified. 1104Note that the kernel may not support the algorithm you have specified.
1105.\" 1105.\"
1106.Bl -tag -width Ds -compact 1106.Bl -tag -width Ds -compact
1107.It Ic encryption_algorithm Ar algorithms ; 1107.It Ic encryption_algorithm Ar algorithms ;
1108.Ic des , 3des , des_iv64 , des_iv32 , 1108.Ic des , 3des , des_iv64 , des_iv32 ,
1109.Ic rc5 , rc4 , idea , 3idea , 1109.Ic rc5 , rc4 , idea , 3idea ,
1110.Ic cast128 , blowfish , null_enc , 1110.Ic cast128 , blowfish , null_enc ,
1111.Ic twofish , rijndael , aes , camellia 1111.Ic twofish , rijndael , aes , camellia
1112.Pq used with ESP 1112.Pq used with ESP
1113.\" 1113.\"
1114.It Ic authentication_algorithm Ar algorithms ; 1114.It Ic authentication_algorithm Ar algorithms ;
1115.Ic des , 3des , des_iv64 , des_iv32 , 1115.Ic des , 3des , des_iv64 , des_iv32 ,
1116.Ic hmac_md5 , hmac_sha1 , hmac_sha256, hmac_sha384, hmac_sha512, non_auth 1116.Ic hmac_md5 , hmac_sha1 , hmac_sha256, hmac_sha384, hmac_sha512, non_auth
1117.Pq used with ESP authentication and AH 1117.Pq used with ESP authentication and AH
1118.\" 1118.\"
1119.It Ic compression_algorithm Ar algorithms ; 1119.It Ic compression_algorithm Ar algorithms ;
1120.Ic deflate 1120.Ic deflate
1121.Pq used with IPComp 1121.Pq used with IPComp
1122.El 1122.El
1123.El 1123.El
1124.\" 1124.\"
1125.Ss Logging level 1125.Ss Logging level
1126.Bl -tag -width Ds -compact 1126.Bl -tag -width Ds -compact
1127.It Ic log Ar level ; 1127.It Ic log Ar level ;
1128Defines the logging level. 1128Defines the logging level.
1129.Ar level 1129.Ar level
1130is one of following: 1130is one of following:
1131.Ic error , warning , notify , info , debug 1131.Ic error , warning , notify , info , debug
1132or 1132or
1133.Ic debug2 . 1133.Ic debug2 .
1134The default is 1134The default is
1135.Ic info . 1135.Ic info .
1136If you set the logging level too high on slower machines, 1136If you set the logging level too high on slower machines,
1137IKE negotiation can fail due to timing constraint changes. 1137IKE negotiation can fail due to timing constraint changes.
1138.El 1138.El
1139.\" 1139.\"
1140.Ss Specifies the way to pad 1140.Ss Specifies the way to pad
1141.Bl -tag -width Ds -compact 1141.Bl -tag -width Ds -compact
1142.It Ic padding { Ar statements Ic } 1142.It Ic padding { Ar statements Ic }
1143specifies the padding format. 1143specifies the padding format.
1144The following are valid statements: 1144The following are valid statements:
1145.Bl -tag -width Ds -compact 1145.Bl -tag -width Ds -compact
1146.It Ic randomize (on | off) ; 1146.It Ic randomize (on | off) ;
1147Enables the use of a randomized value for padding. 1147Enables the use of a randomized value for padding.
1148The default is on. 1148The default is on.
1149.It Ic randomize_length (on | off) ; 1149.It Ic randomize_length (on | off) ;
1150The pad length will be random. 1150The pad length will be random.
1151The default is off. 1151The default is off.
1152.It Ic maximum_length Ar number ; 1152.It Ic maximum_length Ar number ;
1153Defines a maximum padding length. 1153Defines a maximum padding length.
1154If 1154If
1155.Ic randomize_length 1155.Ic randomize_length
1156is off, this is ignored. 1156is off, this is ignored.
1157The default is 20 bytes. 1157The default is 20 bytes.
1158.It Ic exclusive_tail (on | off) ; 1158.It Ic exclusive_tail (on | off) ;
1159Means to put the number of pad bytes minus one into the last part 1159Means to put the number of pad bytes minus one into the last part
1160of the padding. 1160of the padding.
1161The default is on. 1161The default is on.
1162.It Ic strict_check (on | off) ; 1162.It Ic strict_check (on | off) ;
1163Means to constrain the peer to set the number of pad bytes. 1163Means to constrain the peer to set the number of pad bytes.
1164The default is off. 1164The default is off.
1165.El 1165.El
1166.El 1166.El
1167.Ss ISAKMP mode configuration settings 1167.Ss ISAKMP mode configuration settings
1168.Bl -tag -width Ds -compact 1168.Bl -tag -width Ds -compact
1169.It Ic mode_cfg { Ar statements Ic } 1169.It Ic mode_cfg { Ar statements Ic }
1170Defines the information to return for remote hosts' ISAKMP mode config 1170Defines the information to return for remote hosts' ISAKMP mode config
1171requests. 1171requests.
1172Also defines the authentication source for remote peers 1172Also defines the authentication source for remote peers
1173authenticating through Xauth. 1173authenticating through Xauth.
1174.Pp 1174.Pp
1175The following are valid statements: 1175The following are valid statements:
1176.Bl -tag -width Ds -compact 1176.Bl -tag -width Ds -compact
1177.It Ic auth_source (system | radius | pam | ldap) ; 1177.It Ic auth_source (system | radius | pam | ldap) ;
1178Specifies the source for authentication of users through Xauth. 1178Specifies the source for authentication of users through Xauth.
1179.Ar system 1179.Ar system
1180means to use the Unix user database. 1180means to use the Unix user database.
1181This is the default. 1181This is the default.
1182.Ar radius 1182.Ar radius
1183means to use a RADIUS server. 1183means to use a RADIUS server.
1184It works only if 1184It works only if
1185.Xr racoon 8 1185.Xr racoon 8
1186was built with libradius support. 1186was built with libradius support.
1187Radius configuration is handled by statements in the 1187Radius configuration is handled by statements in the
1188.Ic radiuscfg 1188.Ic radiuscfg
1189section. 1189section.
1190.Ar pam 1190.Ar pam
1191means to use PAM. 1191means to use PAM.
1192It works only if 1192It works only if
1193.Xr racoon 8 1193.Xr racoon 8
1194was built with libpam support. 1194was built with libpam support.
1195.Ar ldap 1195.Ar ldap
1196means to use LDAP. 1196means to use LDAP.
1197It works only if 1197It works only if
1198.Xr racoon 8 1198.Xr racoon 8
1199was built with libldap support. 1199was built with libldap support.
1200LDAP configuration is handled by statements in the 1200LDAP configuration is handled by statements in the
1201.Ic ldapcfg 1201.Ic ldapcfg
1202section. 1202section.
1203.It Ic auth_groups Ar "group1", ... ; 1203.It Ic auth_groups Ar "group1", ... ;
1204Specifies the group memberships for Xauth in quoted group name strings. 1204Specifies the group memberships for Xauth in quoted group name strings.
1205When defined, the authenticating user must be a member of at least one 1205When defined, the authenticating user must be a member of at least one
1206group for Xauth to succeed. 1206group for Xauth to succeed.
1207.It Ic group_source (system | ldap) ; 1207.It Ic group_source (system | ldap) ;
1208Specifies the source for group validation of users through Xauth. 1208Specifies the source for group validation of users through Xauth.
1209.Ar system 1209.Ar system
1210means to use the Unix user database. 1210means to use the Unix user database.
1211This is the default. 1211This is the default.
1212.Ar ldap 1212.Ar ldap
1213means to use LDAP. 1213means to use LDAP.
1214It works only if 1214It works only if
1215.Xr racoon 8 1215.Xr racoon 8
1216was built with libldap support and requires LDAP authentication. 1216was built with libldap support and requires LDAP authentication.
1217LDAP configuration is handled by statements in the 1217LDAP configuration is handled by statements in the
1218.Ic ldapcfg 1218.Ic ldapcfg
1219section. 1219section.
1220.It Ic conf_source (local | radius | ldap) ; 1220.It Ic conf_source (local | radius | ldap) ;
1221Specifies the source for IP addresses and netmask allocated through ISAKMP 1221Specifies the source for IP addresses and netmask allocated through ISAKMP
1222mode config. 1222mode config.
1223.Ar local 1223.Ar local
1224means to use the local IP pool defined by the 1224means to use the local IP pool defined by the
1225.Ic network4 1225.Ic network4
1226and 1226and
1227.Ic pool_size 1227.Ic pool_size
1228statements. 1228statements.
1229This is the default. 1229This is the default.
1230.Ar radius 1230.Ar radius
1231means to use a RADIUS server. 1231means to use a RADIUS server.
1232It works only if 1232It works only if
1233.Xr racoon 8 1233.Xr racoon 8
1234was built with libradius support and requires RADIUS authentication. 1234was built with libradius support and requires RADIUS authentication.
1235RADIUS configuration is handled by statements in the 1235RADIUS configuration is handled by statements in the
1236.Ic radiuscfg 1236.Ic radiuscfg
1237section. 1237section.
1238.Ar ldap 1238.Ar ldap
1239means to use an LDAP server. 1239means to use an LDAP server.
1240It works only if 1240It works only if
1241.Xr racoon 8 1241.Xr racoon 8
1242was built with libldap support and requires LDAP authentication. 1242was built with libldap support and requires LDAP authentication.
1243LDAP configuration is handled by 1243LDAP configuration is handled by
1244statements in the 1244statements in the
1245.Ic ldapcfg 1245.Ic ldapcfg
1246section. 1246section.
1247.It Ic accounting (none | system | radius | pam) ; 1247.It Ic accounting (none | system | radius | pam) ;
1248Enables or disables accounting for Xauth logins and logouts. 1248Enables or disables accounting for Xauth logins and logouts.
1249The default is 1249The default is
1250.Ar none 1250.Ar none
1251which disable accounting. 1251which disable accounting.
1252Specifying 1252Specifying
1253.Ar system 1253.Ar system
1254enables system accounting through 1254enables system accounting through
1255.Xr utmp 5 . 1255.Xr utmp 5 .
1256Specifying 1256Specifying
1257.Ar radius 1257.Ar radius
1258enables RADIUS accounting. 1258enables RADIUS accounting.
1259It works only if 1259It works only if
1260.Xr racoon 8 1260.Xr racoon 8
1261was built with libradius support and requires RADIUS authentication. 1261was built with libradius support and requires RADIUS authentication.
1262RADIUS configuration is handled by statements in the 1262RADIUS configuration is handled by statements in the
1263.Ic radiuscfg 1263.Ic radiuscfg
1264section. 1264section.
1265Specifying 1265Specifying
1266.Ar pam 1266.Ar pam
1267enables PAM accounting. 1267enables PAM accounting.
1268It works only if 1268It works only if
1269.Xr racoon 8 1269.Xr racoon 8
1270was build with libpam support and requires PAM authentication. 1270was build with libpam support and requires PAM authentication.
1271.It Ic pool_size Ar size 1271.It Ic pool_size Ar size
1272Specify the size of the IP address pool, either local or allocated 1272Specify the size of the IP address pool, either local or allocated
1273through RADIUS. 1273through RADIUS.
1274.Ic conf_source 1274.Ic conf_source
1275selects the local pool or the RADIUS configuration, but in both 1275selects the local pool or the RADIUS configuration, but in both
1276configurations, you cannot have more than 1276configurations, you cannot have more than
1277.Ar size 1277.Ar size
1278users connected at the same time. 1278users connected at the same time.
1279The default is 255. 1279The default is 255.
1280.It Ic network4 Ar address ; 1280.It Ic network4 Ar address ;
1281.It Ic netmask4 Ar address ; 1281.It Ic netmask4 Ar address ;
1282The local IP pool base address and network mask from which dynamically 1282The local IP pool base address and network mask from which dynamically
1283allocated IPv4 addresses should be taken. 1283allocated IPv4 addresses should be taken.
1284This is used if 1284This is used if
1285.Ic conf_source 1285.Ic conf_source
1286is set to 1286is set to
1287.Ar local 1287.Ar local
1288or if the RADIUS server returned 1288or if the RADIUS server returned
1289.Ar 255.255.255.254 . 1289.Ar 255.255.255.254 .
1290Default is 1290Default is
1291.Ar 0.0.0.0/0.0.0.0 . 1291.Ar 0.0.0.0/0.0.0.0 .
1292.It Ic dns4 Ar addresses ; 1292.It Ic dns4 Ar addresses ;
1293A list of IPv4 addresses for DNS servers, separated by commas, or on multiple 1293A list of IPv4 addresses for DNS servers, separated by commas, or on multiple
1294.Ic dns4 1294.Ic dns4
1295lines. 1295lines.
1296.It Ic wins4 Ar addresses ; 1296.It Ic wins4 Ar addresses ;
1297A list of IPv4 address for WINS servers. 1297A list of IPv4 address for WINS servers.
1298The keyword 1298The keyword
1299.It nbns4 1299.It nbns4
1300can also be used as an alias for 1300can also be used as an alias for
1301.It wins4 . 1301.It wins4 .
1302.It Ic split_network (include | local_lan) Ar network/mask, ... 1302.It Ic split_network (include | local_lan) Ar network/mask, ...
1303The network configuration to send, in CIDR notation (e.g. 192.168.1.0/24). 1303The network configuration to send, in CIDR notation (e.g. 192.168.1.0/24).
1304If 1304If
1305.Ic include 1305.Ic include
1306is specified, the tunnel should be only used to encrypt the indicated 1306is specified, the tunnel should be only used to encrypt the indicated
1307destinations ; otherwise, if 1307destinations ; otherwise, if
1308.Ic local_lan 1308.Ic local_lan
1309is used, everything will pass through the tunnel but those destinations. 1309is used, everything will pass through the tunnel but those destinations.
1310.It Ic default_domain Ar domain ; 1310.It Ic default_domain Ar domain ;
1311The default DNS domain to send. 1311The default DNS domain to send.
1312.It Ic split_dns Ar "domain", ... 1312.It Ic split_dns Ar "domain", ...
1313The split dns configuration to send, in quoted domain name strings. 1313The split dns configuration to send, in quoted domain name strings.
1314This list can be used to describe a list of domain names for which 1314This list can be used to describe a list of domain names for which
1315a peer should query a modecfg assigned dns server. 1315a peer should query a modecfg assigned dns server.
1316DNS queries for all other domains would be handled locally. 1316DNS queries for all other domains would be handled locally.
1317(Cisco VPN client only). 1317(Cisco VPN client only).
1318.It Ic banner Ar path ; 1318.It Ic banner Ar path ;
1319The path of a file displayed on the client at connection time. 1319The path of a file displayed on the client at connection time.
1320Default is 1320Default is
1321.Ar /etc/motd . 1321.Ar /etc/motd .
1322.It Ic auth_throttle Ar delay ; 1322.It Ic auth_throttle Ar delay ;
1323On each failed Xauth authentication attempt, refuse new attempts for a set 1323On each failed Xauth authentication attempt, refuse new attempts for a set
1324.Ar delay 1324.Ar delay
1325of seconds. 1325of seconds.
1326This is to avoid dictionary attacks on Xauth passwords. 1326This is to avoid dictionary attacks on Xauth passwords.
1327Default is one second. 1327Default is one second.
1328Set to zero to disable authentication delay. 1328Set to zero to disable authentication delay.
1329.It Ic pfs_group Ar group ; 1329.It Ic pfs_group Ar group ;
1330Sets the PFS group used in the client proposal (Cisco VPN client only). 1330Sets the PFS group used in the client proposal (Cisco VPN client only).
1331Default is 0. 1331Default is 0.
1332.It Ic save_passwd (on | off) ; 1332.It Ic save_passwd (on | off) ;
1333Allow the client to save the Xauth password (Cisco VPN client only). 1333Allow the client to save the Xauth password (Cisco VPN client only).
1334Default is off. 1334Default is off.
1335.El 1335.El
1336.El 1336.El
1337.Ss Ldap configuration settings 1337.Ss Ldap configuration settings
1338.Bl -tag -width Ds -compact 1338.Bl -tag -width Ds -compact
1339.It Ic ldapcfg { Ar statements Ic } 1339.It Ic ldapcfg { Ar statements Ic }
1340Defines the parameters that will be used to communicate with an ldap 1340Defines the parameters that will be used to communicate with an ldap
1341server for 1341server for
1342.Ic xauth 1342.Ic xauth
1343authentication. 1343authentication.
1344.Pp 1344.Pp
1345The following are valid statements: 1345The following are valid statements:
1346.Bl -tag -width Ds -compact 1346.Bl -tag -width Ds -compact
1347.It Ic version (2 | 3) ; 1347.It Ic version (2 | 3) ;
1348The ldap protocol version used to communicate with the server. 1348The ldap protocol version used to communicate with the server.
1349The default is 1349The default is
1350.Ic 3 . 1350.Ic 3 .
1351.It Ic host Ar (hostname | address) ; 1351.It Ic host Ar (hostname | address) ;
1352The host name or ip address of the ldap server. 1352The host name or ip address of the ldap server.
1353The default is 1353The default is
1354.Ic localhost . 1354.Ic localhost .
1355.It Ic port Ar number ; 1355.It Ic port Ar number ;
1356The port that the ldap server is configured to listen on. 1356The port that the ldap server is configured to listen on.
1357The default is 1357The default is
1358.Ic 389 . 1358.Ic 389 .
1359.It Ic base Ar distinguished name ; 1359.It Ic base Ar distinguished name ;
1360The ldap search base. 1360The ldap search base.
1361This option has no default value. 1361This option has no default value.
1362.It Ic subtree (on | off) ; 1362.It Ic subtree (on | off) ;
1363Use the subtree ldap search scope. 1363Use the subtree ldap search scope.
1364Otherwise, use the one level search scope. 1364Otherwise, use the one level search scope.
1365The default is 1365The default is
1366.Ic off . 1366.Ic off .
1367.It Ic bind_dn Ar distinguished name ; 1367.It Ic bind_dn Ar distinguished name ;
1368The user dn used to optionally bind as before performing ldap search operations. 1368The user dn used to optionally bind as before performing ldap search operations.
1369If this option is not specified, anonymous binds are used. 1369If this option is not specified, anonymous binds are used.
1370.It Ic bind_pw Ar string ; 1370.It Ic bind_pw Ar string ;
1371The password used when binding as 1371The password used when binding as
1372.Ic bind_dn . 1372.Ic bind_dn .
1373.It Ic attr_user Ar attribute name ; 1373.It Ic attr_user Ar attribute name ;
1374The attribute used to specify a users name in an ldap directory. 1374The attribute used to specify a users name in an ldap directory.
1375For example, 1375For example,
1376if a user dn is "cn=jdoe,dc=my,dc=net" then the attribute would be "cn". 1376if a user dn is "cn=jdoe,dc=my,dc=net" then the attribute would be "cn".
1377The default value is 1377The default value is
1378.Ic cn . 1378.Ic cn .
1379.It Ic attr_addr Ar attribute name ; 1379.It Ic attr_addr Ar attribute name ;
1380.It Ic attr_mask Ar attribute name ; 1380.It Ic attr_mask Ar attribute name ;
1381The attributes used to specify a users network address and subnet mask in an 1381The attributes used to specify a users network address and subnet mask in an
1382ldap directory. 1382ldap directory.
1383These values are forwarded during mode_cfg negotiation when 1383These values are forwarded during mode_cfg negotiation when
1384the conf_source is set to ldap. 1384the conf_source is set to ldap.
1385The default values are 1385The default values are
1386.Ic racoon-address 1386.Ic racoon-address
1387and 1387and
1388.Ic racoon-netmask . 1388.Ic racoon-netmask .
1389.It Ic attr_group Ar attribute name ; 1389.It Ic attr_group Ar attribute name ;
1390The attribute used to specify a group name in an ldap directory. 1390The attribute used to specify a group name in an ldap directory.
1391For example, 1391For example,
1392if a group dn is "cn=users,dc=my,dc=net" then the attribute would be "cn". 1392if a group dn is "cn=users,dc=my,dc=net" then the attribute would be "cn".
1393The default value is 1393The default value is
1394.Ic cn . 1394.Ic cn .
1395.It Ic attr_member Ar attribute name ; 1395.It Ic attr_member Ar attribute name ;
1396The attribute used to specify group membership in an ldap directory. 1396The attribute used to specify group membership in an ldap directory.
1397The default value is 1397The default value is
1398.Ic member . 1398.Ic member .
1399.El 1399.El
1400.El 1400.El
1401.Ss Radius configuration settings 1401.Ss Radius configuration settings
1402.Bl -tag -width Ds -compact 1402.Bl -tag -width Ds -compact
1403.It Ic radiuscfg { Ar statements Ic } 1403.It Ic radiuscfg { Ar statements Ic }
1404Defines the parameters that will be used to communicate with radius 1404Defines the parameters that will be used to communicate with radius
1405servers for 1405servers for
1406.Ic xauth 1406.Ic xauth
1407authentication. 1407authentication.
1408If radius is selected as the xauth authentication or accounting 1408If radius is selected as the xauth authentication or accounting
1409source and no servers are defined in this section, settings from 1409source and no servers are defined in this section, settings from
1410the system 1410the system
1411.Xr radius.conf 5 1411.Xr radius.conf 5
1412configuration file will be used instead. 1412configuration file will be used instead.
1413.Pp 1413.Pp
1414The following are valid statements: 1414The following are valid statements:
1415.Bl -tag -width Ds -compact 1415.Bl -tag -width Ds -compact
1416.It Ic auth Ar (hostname | address) [port] sharedsecret ; 1416.It Ic auth Ar (hostname | address) [port] sharedsecret ;
1417The host name or ip address, optional port value and shared secret value 1417The host name or ip address, optional port value and shared secret value
1418of a radius authentication server. 1418of a radius authentication server.
1419Up to 5 radius authentication servers 1419Up to 5 radius authentication servers
1420may be specified using multiple lines. 1420may be specified using multiple lines.
1421.It Ic acct Ar (hostname | address) [port] sharedsecret ; 1421.It Ic acct Ar (hostname | address) [port] sharedsecret ;
1422The host name or ip address, optional port value and shared secret value 1422The host name or ip address, optional port value and shared secret value
1423of a radius accounting server. 1423of a radius accounting server.
1424Up to 5 radius accounting servers may be 1424Up to 5 radius accounting servers may be
1425specified using multiple lines. 1425specified using multiple lines.
1426.It Ic timeout Ar seconds ; 1426.It Ic timeout Ar seconds ;
1427The timeout for receiving replies from radius servers. 1427The timeout for receiving replies from radius servers.
1428The default is 1428The default is
1429.Ic 3 . 1429.Ic 3 .
1430.It Ic retries Ar count ; 1430.It Ic retries Ar count ;
1431The maximum number of repeated requests to make before giving up 1431The maximum number of repeated requests to make before giving up
1432on a radius server. 1432on a radius server.
1433The default is 1433The default is
1434.Ic 3 . 1434.Ic 3 .
1435.El 1435.El
1436.El 1436.El
1437.Ss Special directives 1437.Ss Special directives
1438.Bl -tag -width Ds -compact 1438.Bl -tag -width Ds -compact
1439.It Ic complex_bundle (on | off) ; 1439.It Ic complex_bundle (on | off) ;
1440defines the interpretation of proposal in the case of SA bundle. 1440defines the interpretation of proposal in the case of SA bundle.
1441Normally 1441Normally
1442.Dq IP AH ESP IP payload 1442.Dq IP AH ESP IP payload
1443is proposed as 1443is proposed as
1444.Dq AH tunnel and ESP tunnel . 1444.Dq AH tunnel and ESP tunnel .
1445The interpretation is more common to other IKE implementations, however, 1445The interpretation is more common to other IKE implementations, however,
1446it allows very limited set of combinations for proposals. 1446it allows very limited set of combinations for proposals.
1447With the option enabled, it will be proposed as 1447With the option enabled, it will be proposed as
1448.Dq AH transport and ESP tunnel . 1448.Dq AH transport and ESP tunnel .
1449The default value is 1449The default value is
1450.Ic off . 1450.Ic off .
1451.El 1451.El
1452.\" 1452.\"
1453.Ss Pre-shared key File 1453.Ss Pre-shared key File
1454The pre-shared key file defines pairs of identifiers and corresponding 1454The pre-shared key file defines pairs of identifiers and corresponding
1455shared secret keys which are used in the pre-shared key authentication 1455shared secret keys which are used in the pre-shared key authentication
1456method in phase 1. 1456method in phase 1.
1457The pair in each line is separated by some number of blanks and/or tab 1457The pair in each line is separated by some number of blanks and/or tab
1458characters like in the 1458characters like in the
1459.Xr hosts 5 1459.Xr hosts 5
1460file. 1460file.
1461Key can include blanks because everything after the first blanks 1461Key can include blanks because everything after the first blanks
1462is interpreted as the secret key. 1462is interpreted as the secret key.
1463Lines starting with 1463Lines starting with
1464.Ql # 1464.Ql #
1465are ignored. 1465are ignored.
1466Keys which start with 1466Keys which start with
1467.Ql 0x 1467.Ql 0x
1468are interpreted as hexadecimal strings. 1468are interpreted as hexadecimal strings.
1469Note that the file must be owned by the user ID running 1469Note that the file must be owned by the user ID running
1470.Xr racoon 8 1470.Xr racoon 8
1471.Pq usually the privileged user , 1471.Pq usually the privileged user ,
1472and must not be accessible by others. 1472and must not be accessible by others.
1473.\" 1473.\"
1474.Sh EXAMPLES 1474.Sh EXAMPLES
1475The following shows how the remote directive should be configured. 1475The following shows how the remote directive should be configured.
1476.Bd -literal -offset 1476.Bd -literal -offset
1477path pre_shared_key "/usr/local/v6/etc/psk.txt" ; 1477path pre_shared_key "/usr/local/v6/etc/psk.txt" ;
1478remote anonymous 1478remote anonymous
1479{ 1479{
1480 exchange_mode aggressive,main,base; 1480 exchange_mode aggressive,main,base;
1481 lifetime time 24 hour; 1481 lifetime time 24 hour;
1482 proposal { 1482 proposal {
1483 encryption_algorithm 3des; 1483 encryption_algorithm 3des;
1484 hash_algorithm sha1; 1484 hash_algorithm sha1;
1485 authentication_method pre_shared_key; 1485 authentication_method pre_shared_key;
1486 dh_group 2; 1486 dh_group 2;
1487 } 1487 }
1488} 1488}
1489 1489
1490sainfo anonymous 1490sainfo anonymous
1491{ 1491{
1492 pfs_group 2; 1492 pfs_group 2;
1493 lifetime time 12 hour ; 1493 lifetime time 12 hour ;
1494 encryption_algorithm 3des, blowfish 448, twofish, rijndael ; 1494 encryption_algorithm 3des, blowfish 448, twofish, rijndael ;
1495 authentication_algorithm hmac_sha1, hmac_md5 ; 1495 authentication_algorithm hmac_sha1, hmac_md5 ;
1496 compression_algorithm deflate ; 1496 compression_algorithm deflate ;
1497} 1497}
1498.Ed 1498.Ed
1499.Pp 1499.Pp
1500If you are configuring plain RSA authentication, the remote directive 1500If you are configuring plain RSA authentication, the remote directive
1501should look like the following: 1501should look like the following:
1502.Bd -literal -offset 1502.Bd -literal -offset
1503path certificate "/usr/local/v6/etc" ; 1503path certificate "/usr/local/v6/etc" ;
1504remote anonymous 1504remote anonymous
1505{ 1505{
1506 exchange_mode main,base ; 1506 exchange_mode main,base ;
1507 lifetime time 12 hour ; 1507 lifetime time 12 hour ;
1508 certificate_type plain_rsa "/usr/local/v6/etc/myrsakey.priv"; 1508 certificate_type plain_rsa "/usr/local/v6/etc/myrsakey.priv";
1509 peers_certfile plain_rsa "/usr/local/v6/etc/yourrsakey.pub"; 1509 peers_certfile plain_rsa "/usr/local/v6/etc/yourrsakey.pub";
1510 proposal { 1510 proposal {
1511 encryption_algorithm aes ; 1511 encryption_algorithm aes ;
1512 hash_algorithm sha1 ; 1512 hash_algorithm sha1 ;
1513 authentication_method rsasig ; 1513 authentication_method rsasig ;
1514 dh_group 2 ; 1514 dh_group 2 ;
1515 } 1515 }
1516} 1516}
1517.Ed 1517.Ed
1518.Pp 1518.Pp
1519The following is a sample for the pre-shared key file. 1519The following is a sample for the pre-shared key file.
1520.Bd -literal -offset 1520.Bd -literal -offset
152110.160.94.3 mekmitasdigoat 152110.160.94.3 mekmitasdigoat
1522172.16.1.133 0x12345678 1522172.16.1.133 0x12345678
1523194.100.55.1 whatcertificatereally 1523194.100.55.1 whatcertificatereally
15243ffe:501:410:ffff:200:86ff:fe05:80fa mekmitasdigoat 15243ffe:501:410:ffff:200:86ff:fe05:80fa mekmitasdigoat
15253ffe:501:410:ffff:210:4bff:fea2:8baa mekmitasdigoat 15253ffe:501:410:ffff:210:4bff:fea2:8baa mekmitasdigoat
1526foo@kame.net mekmitasdigoat 1526foo@kame.net mekmitasdigoat
1527foo.kame.net hoge 1527foo.kame.net hoge
1528.Ed 1528.Ed
1529.\" 1529.\"
1530.Sh SEE ALSO 1530.Sh SEE ALSO
1531.Xr racoon 8 , 1531.Xr racoon 8 ,
1532.Xr racoonctl 8 , 1532.Xr racoonctl 8 ,
1533.Xr setkey 8 1533.Xr setkey 8
1534.\" 1534.\"
1535.Sh HISTORY 1535.Sh HISTORY
1536The 1536The
1537.Nm 1537.Nm
1538configuration file first appeared in the 1538configuration file first appeared in the
1539.Dq YIPS 1539.Dq YIPS
1540Yokogawa IPsec implementation. 1540Yokogawa IPsec implementation.
1541.\" 1541.\"
1542.Sh BUGS 1542.Sh BUGS
1543Some statements may not be handled by 1543Some statements may not be handled by
1544.Xr racoon 8 1544.Xr racoon 8
1545yet. 1545yet.
1546.Pp 1546.Pp
1547Diffie-Hellman computation can take a very long time, and may cause 1547Diffie-Hellman computation can take a very long time, and may cause
1548unwanted timeouts, specifically when a large D-H group is used. 1548unwanted timeouts, specifically when a large D-H group is used.
1549.\" 1549.\"
1550.Sh SECURITY CONSIDERATIONS 1550.Sh SECURITY CONSIDERATIONS
1551The use of IKE phase 1 aggressive mode is not recommended, 1551The use of IKE phase 1 aggressive mode is not recommended,
1552as described in 1552as described in
1553.Li http://www.kb.cert.org/vuls/id/886601 . 1553.Li http://www.kb.cert.org/vuls/id/886601 .