xref: /openbsd/sbin/isakmpd/isakmpd.conf.5 (revision 2b65e200)
1*2b65e200Sjmc.\" $OpenBSD: isakmpd.conf.5,v 1.80 2003/06/03 13:16:08 jmc Exp $
2e55ca143Sniklas.\" $EOM: isakmpd.conf.5,v 1.57 2000/12/21 14:43:17 ho Exp $
32040585eSniklas.\"
444f0148dSniklas.\" Copyright (c) 1998, 1999, 2000 Niklas Hallqvist.  All rights reserved.
54ca71560Sho.\" Copyright (c) 2000, 2001, 2002 H�kan Olsson.  All rights reserved.
62040585eSniklas.\"
72040585eSniklas.\" Redistribution and use in source and binary forms, with or without
82040585eSniklas.\" modification, are permitted provided that the following conditions
92040585eSniklas.\" are met:
102040585eSniklas.\" 1. Redistributions of source code must retain the above copyright
112040585eSniklas.\"    notice, this list of conditions and the following disclaimer.
122040585eSniklas.\" 2. Redistributions in binary form must reproduce the above copyright
132040585eSniklas.\"    notice, this list of conditions and the following disclaimer in the
142040585eSniklas.\"    documentation and/or other materials provided with the distribution.
152040585eSniklas.\" 3. All advertising materials mentioning features or use of this software
162040585eSniklas.\"    must display the following acknowledgement:
172040585eSniklas.\"	This product includes software developed by Ericsson Radio Systems.
182040585eSniklas.\" 4. The name of the author may not be used to endorse or promote products
192040585eSniklas.\"    derived from this software without specific prior written permission.
202040585eSniklas.\"
212040585eSniklas.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
222040585eSniklas.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
232040585eSniklas.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
242040585eSniklas.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
252040585eSniklas.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
262040585eSniklas.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
272040585eSniklas.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
282040585eSniklas.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
292040585eSniklas.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
302040585eSniklas.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
312040585eSniklas.\"
322040585eSniklas.\" This code was written under funding by Ericsson Radio Systems.
332040585eSniklas.\"
342040585eSniklas.\" Manual page, using -mandoc macros
352040585eSniklas.\"
3672578f93Sho.Dd August 07, 2002
3758aefd4bSaaron.Dt ISAKMPD.CONF 5
382040585eSniklas.Os
392040585eSniklas.Sh NAME
402040585eSniklas.Nm isakmpd.conf
4158aefd4bSaaron.Nd configuration file for isakmpd
422040585eSniklas.Sh DESCRIPTION
4358aefd4bSaaron.Nm
4458aefd4bSaaronis the configuration file for the
452040585eSniklas.Nm isakmpd
462040585eSniklasdaemon managing security association and key management for the
4761d575f0SangelosIPsec layer of the kernel's networking stack.
482040585eSniklas.Pp
492040585eSniklasThe file is of a well known type of format called .INI style, named after
502040585eSniklasthe suffix used by an overrated windowing environment for its configuration
519615e1d4Saaronfiles.
529615e1d4SaaronThis format consists of sections, each beginning with a line looking like:
532040585eSniklas.Bd -literal
542040585eSniklas[Section name]
552040585eSniklas.Ed
562040585eSniklasBetween the brackets is the name of the section following this section header.
572040585eSniklasInside a section many tag/value pairs can be stored, each one looking like:
582040585eSniklas.Bd -literal
592040585eSniklasTag=Value
602040585eSniklas.Ed
612040585eSniklasIf the value needs more space than fits on a single line it's possible to
62a2067f52Sniklascontinue it on the next by ending the first with a backslash character
639615e1d4Saaronimmediately before the newline character.
640e2d4717SkjellThis method can extend a value for an arbitrary number of lines.
652040585eSniklas.Pp
6658aefd4bSaaronComments can be put anywhere in the file by using a hash mark
6758aefd4bSaaron.Pq Sq \&# .
680e2d4717SkjellThe comment extends to the end of the current line.
692040585eSniklas.Pp
70c5fe6c4eSniklasOften the right-hand side values consist of other section names.
71c5fe6c4eSniklasThis results in a tree structure.
720e2d4717SkjellSome values are treated as a list of several scalar values.
730e2d4717SkjellSuch lists always use a comma character as the separator.
749615e1d4SaaronSome values are formatted like this: X,Y:Z, which
75c5fe6c4eSniklasis an offer/accept syntax, where X is a value we offer and Y:Z is a range of
76c5fe6c4eSniklasaccepted values, inclusive.
77c5fe6c4eSniklas.Pp
78bad0180eShoTo activate changes to
79bad0180eSho.Nm
80bad0180eShowithout restarting
81bad0180eSho.Nm isakmpd ,
82bad0180eShosend a SIGHUP signal to the daemon process.
8352e712aeSniklas.Ss Auto-generated parts of the configuration
8452e712aeSniklas.Pp
850e2d4717SkjellSome predefined section names are recognized by the daemon, avoiding the need
860e2d4717Skjellto fully specify the Main Mode transforms and Quick Mode suites, protocols,
8752e712aeSniklasand transforms.
8852e712aeSniklas.Pp
8952e712aeSniklasFor Main Mode:
9018656612Saaron.Bd -filled -compact
912039fcadSho.Ar {DES,BLF,3DES,CAST}-{MD5,SHA}[-GRP{1,2,5}][-{DSS,RSA_SIG}]
9252e712aeSniklas.Ed
9352e712aeSniklas.Pp
9452e712aeSniklasFor Quick Mode:
9518656612Saaron.Bd -filled -compact
962039fcadSho.Ar QM-{proto}[-TRP]-{cipher}[-{hash}][-PFS[-{group}]]-SUITE
972039fcadSho.Ed
982039fcadSho.Bd -literal
992039fcadSho  where
1002039fcadSho    {proto}  is either ESP or AH
1012039fcadSho    {cipher} is either DES, 3DES, CAST, BLF or AES
1022039fcadSho    {hash}   is either MD5, SHA or RIPEMD
1032039fcadSho    {group}  is either GRP1, GRP2 or GRP5
10452e712aeSniklas.Ed
10552e712aeSniklas.Pp
1060e2d4717SkjellFor example, 3DES-SHA means: 3DES encryption, SHA hash, and authorization by
10752e712aeSniklaspre-shared keys.
1080e2d4717SkjellSimilarly, QM-ESP-3DES-SHA-PFS-SUITE means: ESP protocol, 3DES encryption,
10952e712aeSniklasSHA hash, and use Perfect Forward Security.
11052e712aeSniklas.Pp
1112039fcadShoUnless explicitly stated with -GRP1, 2 or 5, transforms and PFS suites
1122039fcadShouse DH group 2. There are currently no predefined ESP+AH Quick Mode suites.
11352e712aeSniklas.Pp
1142039fcadShoThe predefinitions include some default values for the special
115419caefeShosections "General", "Keynote", "X509-certificates", and
11635ff0956Sho"Default-phase-1-configuration".
117419caefeShoThese default values are presented in the example below.
11852e712aeSniklas.Pp
11952e712aeSniklasAll autogenerated values can be overridden by manual entries by using the
12052e712aeSniklassame section and tag names in the configuration file.
121b57b191eSniklasIn particular, the default phase 1 (Main or Aggressive Mode) and phase 2
122b57b191eSniklas(Quick Mode) lifetimes can be overridden by these tags under the "General"
123b57b191eSniklassection;
124b57b191eSniklas.Pp
125b57b191eSniklas.Bd -literal
126b57b191eSniklas[General]
127b57b191eSniklasDefault-phase-1-lifetime=	3600,60:86400
128b57b191eSniklasDefault-phase-2-lifetime=	1200,60:86400
129b57b191eSniklas.Ed
1302039fcadSho.Pp
1312039fcadShoThe Main Mode lifetime currently defaults to one hour (minimum 60
1322039fcadShoseconds, maximum 1 day). The Quick Mode lifetime defaults to 20
1332039fcadShominutes (minimum 60 seconds, maximum 1 day).
13452e712aeSniklas.\"XXX Following empty .Ss works around a nroff bug, we want the new line."
13552e712aeSniklas.Ss
13652e712aeSniklas.Pp
13735ff0956ShoAlso, the default phase 1 ID can be set by creating a <Phase1-ID>
1380378d1f2Sniklassection, as shown below, and adding this tag under the "General"
1390378d1f2Sniklassection;
1400378d1f2Sniklas.Pp
1410378d1f2Sniklas.Bd -literal
1420378d1f2Sniklas[General]
1430378d1f2SniklasDefault-phase-1-ID=		Phase1-ID-name
1440378d1f2Sniklas
1450378d1f2Sniklas[Phase1-ID-name]
1460378d1f2SniklasID-type=			USER_FQDN
1470378d1f2SniklasName=				foo@bar.com
1480378d1f2Sniklas.Ed
1490378d1f2Sniklas.\"XXX Following empty .Ss works around a nroff bug, we want the new line."
1500378d1f2Sniklas.Ss
1510378d1f2Sniklas.Pp
152c5fe6c4eSniklas.Ss Roots
153c5fe6c4eSniklas.Bl -hang -width 12n
154c5fe6c4eSniklas.It Em General
155c5fe6c4eSniklasGeneric global configuration parameters
156c5fe6c4eSniklas.Bl -tag -width 12n
15735ff0956Sho.It Em Default-phase-1-ID
15835ff0956ShoOptional default phase 1 ID name.
15935ff0956Sho.It Em Default-phase-1-lifetime
16035ff0956ShoThe default lifetime for autogenerated transforms (phase 1).
16135ff0956ShoIf unspecified, the value 3600,60:86400 is used as the default.
16235ff0956Sho.It Em Default-phase-2-lifetime
16335ff0956ShoThe default lifetime for autogenerated suites (phase 2).
16435ff0956ShoIf unspecified, the value 1200,60:86400 is used as the default.
16535ff0956Sho.It Em Default-phase-2-suites
16635ff0956ShoA list of phase 2 suites that will be used when establishing dynamic
16735ff0956ShoSAs.
16835ff0956ShoIf left unspecified, QM-ESP-3DES-SHA-PFS-SUITE is used as the default.
16935ff0956Sho.It Em Check-interval
17035ff0956ShoThe interval between watchdog checks of connections we want up at all times.
17135ff0956Sho.It Em Exchange-max-time
17235ff0956ShoHow many seconds should an exchange maximally take to set up before we
17335ff0956Shogive up.
17435ff0956Sho.It Em Listen-on
17535ff0956ShoA list of IP-addresses OK to listen on.
17635ff0956ShoThis list is used as a filter for the set of addresses the interfaces
17735ff0956Shoconfigured provides.
17835ff0956ShoThis means that we won't see if an address given here does not exist
17935ff0956Shoon this host, and thus no error is given for that case.
180447a9f3aSho.It Em Policy-file
18180c8b3dbSniklasThe name of the file that contains
1821215c700Sjmc.Xr keynote 4
1834aac73a4Saaronpolicies.
1844aac73a4SaaronThe default is "/etc/isakmpd/isakmpd.policy".
1850b880a72Sho.It Em Pubkey-directory
1860b880a72ShoThe directory in which
1870b880a72Sho.Nm
188ac1aa35bSmpechlooks for explicitly trusted public keys.
189ac1aa35bSmpechThe default is "/etc/isakmpd/pubkeys".
190ac1aa35bSmpechRead
1910b880a72Sho.Xr isakmpd 8
1920b880a72Shofor the required naming convention of the files in here.
1934d27bb0fSho.It Em Renegotiate-on-HUP
1944d27bb0fShoIf this tag is defined, whatever the value is,
1954d27bb0fSho.Nm isakmpd
1964d27bb0fShowill renegotiate all current phase 2 SAs when the daemon receives
1978b824799Sjmca SIGHUP signal, or an 'R' is sent to the FIFO interface (see
1984d27bb0fSho.Xr isakmpd 8 ) .
19935ff0956Sho.It Em Retransmits
20035ff0956ShoHow many times should a message be retransmitted before giving up.
20135ff0956Sho.It Em Shared-SADB
20235ff0956ShoIf this tag is defined, whatever the value is, some semantics of
20335ff0956Sho.Nm
20435ff0956Shoare changed so that multiple instances can run on top of one SADB
20535ff0956Shoand set up SAs with each other.
20635ff0956ShoSpecifically this means replay
20735ff0956Shoprotection will not be asked for, and errors that can occur when
20835ff0956Shoupdating an SA with its parameters a 2nd time will be ignored.
209c5fe6c4eSniklas.El
210c5fe6c4eSniklas.It Em Phase 1
211c5fe6c4eSniklasISAKMP SA negotiation parameter root
212c5fe6c4eSniklas.Bl -tag -width 12n
213c5fe6c4eSniklas.It Em <IP-address>
2149615e1d4SaaronA name of the ISAKMP peer at the given IP-address.
215cc3c8b42Sniklas.It Em Default
216ac1aa35bSmpechA name of the default ISAKMP peer.
21735ff0956ShoIncoming phase 1 connections from other IP-addresses will use this peer name.
218cc3c8b42Sniklas.It ""
2199615e1d4SaaronThis name is used as the section name for further information to be found.
2209615e1d4SaaronLook at <ISAKMP-peer> below.
221c5fe6c4eSniklas.El
222c5fe6c4eSniklas.It Em Phase 2
223c5fe6c4eSniklasIPsec SA negotiation parameter root
224c5fe6c4eSniklas.Bl -tag -width 12n
225c5fe6c4eSniklas.It Em Connections
22661d575f0SangelosA list of directed IPsec "connection" names that should be brought up
2272ddc24cbSniklasautomatically, either on first use if the system supports it, or at
2289615e1d4Saaronstartup of the daemon.
2299615e1d4SaaronThese names are section names where further information can be found.
23061d575f0SangelosLook at <IPsec-connection> below.
23144143af3SderaadtNormally any connections mentioned here are treated as part of the
23280baf197Sniklas"Passive-connection" list we present below, however there is a
2339615e1d4Saaronflag: "Active-only" that disables this behaviour.
23461d575f0SangelosThis too is mentioned in the <IPsec-connection> section, in the "Flags" tag.
23580baf197Sniklas.It Em Passive-connections
23661d575f0SangelosA list of IPsec "connection" names we recognize and accept initiations for.
2379615e1d4SaaronThese names are section names where further information can be found.
23861d575f0SangelosLook at <IPsec-connection> below.
2399615e1d4SaaronCurrently only the Local-ID and Remote-ID tags
24080baf197Sniklasare looked at in those sections, as they are matched against the IDs given
24180baf197Sniklasby the initiator.
242c5fe6c4eSniklas.El
243b57b191eSniklas.It Em KeyNote
244b57b191eSniklas.Bl -tag -width 12n
245b57b191eSniklas.It Em Credential-directory
246b57b191eSniklasA directory containing directories named after IDs (IP
247b57b191eSniklasaddresses, ``user@domain'', or hostnames) that contain files named
248b57b191eSniklas``credentials'' and ``private_key''.
249b57b191eSniklas.Pp
250b57b191eSniklasThe credentials file contains
251b57b191eSniklas.Xr keynote 4
252b57b191eSniklascredentials that are sent to a remote IKE daemon when we use the
253b57b191eSniklasassociated ID, or credentials that we may want to consider when doing
254ac1aa35bSmpechan exchange with a remote IKE daemon that uses that ID.
255ac1aa35bSmpechNote that, in the former case, the last credential in the file
256ac1aa35bSmpechMUST contain our public key in its Licensees field.
257ac1aa35bSmpechMore than one credentials may exist in the file.
258ac1aa35bSmpechThey are separated by whitelines (the format is essentially the same as
259ac1aa35bSmpechthat of the policy file).
260ac1aa35bSmpechThe credentials are of the same format as the policies described in
261b57b191eSniklas.Xr isakmpd.policy 5 .
262b57b191eSniklasThe only difference is that the Authorizer field contains a public
263ac1aa35bSmpechkey, and the assertion is signed.
264ac1aa35bSmpechSigned assertions can be generated using the
265b57b191eSniklas.Xr keynote 1
266b57b191eSniklasutility.
267b57b191eSniklas.Pp
268b57b191eSniklasThe private_key file contains the private RSA key we use for
269ac1aa35bSmpechauthentication.
270ac1aa35bSmpechIf the directory (and the files) exist, they take precedence over X509-based
271ac1aa35bSmpechauthentication.
272b57b191eSniklas.El
273fb1921ccSniklas.It Em X509-Certificates
274fb1921ccSniklas.Bl -tag -width 12n
27535ff0956Sho.It Em Accept-self-signed
27635ff0956ShoIf this tag is defined, whatever the value is, certificates that
27735ff0956Shodo not originate from a trusted CA but are self-signed will be
27835ff0956Shoaccepted.
279fb1921ccSniklas.It Em Ca-directory
280fb1921ccSniklasA directory containing PEM certificates of certification authorities
281ac1aa35bSmpechthat we trust to sign other certificates.
282ac1aa35bSmpechNote that for a CA to be really trusted, it needs to be somehow
283ac1aa35bSmpechreferred to by policy, in
284e5814869Sangelos.Xr isakmpd.policy 5 .
285e5814869SangelosThe certificates in this directory are used for the actual X.509
286e5814869Sangelosauthentication and for cross-referencing policies that refer to
287ac1aa35bSmpechDistinguished Names (DNs).
288ac1aa35bSmpechKeeping a separate directory (as opposed to integrating policies
289ac1aa35bSmpechand X.509 CA certificates) allows for maintenance of a list of
290ac1aa35bSmpech"well known" CAs without actually having to trust all (or any) of them.
291fb1921ccSniklas.It Em Cert-directory
292fb1921ccSniklasA directory containing PEM certificates that we trust to be valid.
293fb1921ccSniklasThese certificates are used in preference to those passed in messages and
2940e2d4717Skjellare required to have a subjectAltName extension containing the certificate
2950e2d4717Skjellholder identity; usually IP address, FQDN, or User FQDN, as provided by
2960e2d4717Skjell.Xr certpatch 8 .
297954b1b31Sniklas.It Em Private-key
298954b1b31SniklasThe private key matching the public key of our certificate (which should be
2990e2d4717Skjellin the "Cert-directory", and have an appropriate subjectAltName field).
300fb1921ccSniklas.El
301c5fe6c4eSniklas.El
302c5fe6c4eSniklas.Ss Referred-to sections
303c5fe6c4eSniklas.Bl -hang -width 12n
304c5fe6c4eSniklas.It Em <ISAKMP-peer>
305c5fe6c4eSniklasParameters for negotiation with an ISAKMP peer
306c5fe6c4eSniklas.Bl -tag -width 12n
307c5fe6c4eSniklas.It Em Phase
308c5fe6c4eSniklasThe constant
309c5fe6c4eSniklas.Li 1 ,
31061d575f0Sangelosas ISAKMP-peers and IPsec-connections
311c5fe6c4eSniklasreally are handled by the same code inside isakmpd.
312c5fe6c4eSniklas.It Em Transport
313cc3c8b42SniklasThe name of the transport protocol, defaults to
314cc3c8b42Sniklas.Li UDP .
315cc3c8b42Sniklas.It Em Port
316cc3c8b42SniklasIn case of
317cc3c8b42Sniklas.Li UDP ,
318cc3c8b42Sniklasthe
319cc3c8b42Sniklas.Li UDP
320cc3c8b42Sniklasport number to send to.
321cc3c8b42SniklasThis is optional, the
322cc3c8b42Sniklasdefault value is 500 which is the IANA-registered number for ISAKMP.
323a2067f52Sniklas.It Em Local-address
324e2220ba8SniklasThe Local IP-address to use, if we are multi-homed, or have aliases.
325c5fe6c4eSniklas.It Em Address
326cc3c8b42SniklasIf existent, the IP-address of the peer.
327c5fe6c4eSniklas.It Em Configuration
3289615e1d4SaaronThe name of the ISAKMP-configuration section to use.
3299615e1d4SaaronLook at <ISAKMP-configuration> below.
33035ff0956ShoIf unspecified, defaults to "Default-phase-1-configuration".
331c5fe6c4eSniklas.It Em Authentication
332cc3c8b42SniklasIf existent, authentication data for this specific peer.
3339615e1d4SaaronIn the case of preshared key, this is the key value itself.
3346a8478f3Sniklas.It Em ID
3356a8478f3SniklasIf existent, the name of the section that describes the
3364aac73a4Saaronlocal client ID that we should present to our peer.
3374aac73a4SaaronIf not present, it
3386a8478f3Sniklasdefaults to the address of the local interface we are sending packets
3394aac73a4Saaronover to the remote daemon.
3404aac73a4SaaronLook at <Phase1-ID> below.
341a2067f52Sniklas.It Em Remote-ID
342a2067f52SniklasIf existent, the name of the section that describes the remote client
343a2067f52SniklasID we expect the remote daemon to send us.
344a2067f52SniklasIf not present, it defaults to the address of the remote daemon.
345a2067f52SniklasLook at <Phase1-ID> below.
3462ddc24cbSniklas.It Em Flags
3472ddc24cbSniklasA comma-separated list of flags controlling the further
3489615e1d4Saaronhandling of the ISAKMP SA.
3499615e1d4SaaronCurrently there are no specific ISAKMP SA flags defined.
350c5fe6c4eSniklas.El
3516a8478f3Sniklas.It Em <Phase1-ID>
3526a8478f3Sniklas.Bl -tag -width 12n
3536a8478f3Sniklas.It Em ID-type
354d8ca7c44ShoThe ID type as given by the RFC specifications.
35535ff0956ShoFor phase 1 this is currently
3566a8478f3Sniklas.Li IPV4_ADDR ,
3576a8478f3Sniklas.Li IPV4_ADDR_SUBNET ,
358d8ca7c44Sho.Li IPV6_ADDR ,
359d8ca7c44Sho.Li IPV6_ADDR_SUBNET ,
3606a8478f3Sniklas.Li FQDN ,
361d8ca7c44Sho.Li USER_FQDN
3626a8478f3Sniklasor
3635bc978dfSangelos.Li KEY_ID .
3646a8478f3Sniklas.It Em Address
3656a8478f3SniklasIf the ID-type is
366d8ca7c44Sho.Li IPV4_ADDR
367d8ca7c44Shoor
368d8ca7c44Sho.Li IPV6_ADDR ,
3696a8478f3Sniklasthis tag should exist and be an IP-address.
3706a8478f3Sniklas.It Em Network
3716a8478f3SniklasIf the ID-type is
3726a8478f3Sniklas.Li IPV4_ADDR_SUBNET
373d8ca7c44Shoor
374d8ca7c44Sho.Li IPV6_ADDR_SUBNET
3756a8478f3Sniklasthis tag should exist and
3766a8478f3Sniklasbe a network address.
3776a8478f3Sniklas.It Em Netmask
3786a8478f3SniklasIf the ID-type is
3796a8478f3Sniklas.Li IPV4_ADDR_SUBNET
380d8ca7c44Shoor
381d8ca7c44Sho.Li IPV6_ADDR_SUBNET
3826a8478f3Sniklasthis tag should exist and
3836a8478f3Sniklasbe a network subnet mask.
3846a8478f3Sniklas.It Em Name
3856a8478f3SniklasIf the ID-type is
3865bc978dfSangelos.Li FQDN ,
387d8ca7c44Sho.Li USER_FQDN
3885bc978dfSangelosor
3895bc978dfSangelos.Li KEY_ID ,
3905bc978dfSangelosthis tag should exist and contain a domain name, user@domain, or
3915bc978dfSangelosother identifying string respectively.
3923f167ca4Sangelos.Pp
3933f167ca4SangelosIn the case of
3943f167ca4Sangelos.Li KEY_ID ,
3953f167ca4Sangelosnote that the IKE protocol allows any octet sequence to be sent or
3963f167ca4Sangelosreceived under this payload, potentially including non-printable
3973f167ca4Sangelosones.
3981215c700Sjmc.Xr isakmpd 8
3993f167ca4Sangeloscan only transmit printable
4003f167ca4Sangelos.Li KEY_ID
4013f167ca4Sangelospayloads, but can receive and process arbitrary
4023f167ca4Sangelos.Li KEY_ID
4033f167ca4Sangelospayloads.
4043f167ca4SangelosThis effectively means that non-printable
4053f167ca4Sangelos.Li KEY_ID
4063f167ca4Sangelosremote identities cannot be verified through this means, although it
4073f167ca4Sangelosis still possible to do so through
4083f167ca4Sangelos.Xr isakmpd.policy 5 .
4096a8478f3Sniklas.El
410c5fe6c4eSniklas.It Em <ISAKMP-configuration>
411c5fe6c4eSniklas.Bl -tag -width 12n
412c5fe6c4eSniklas.It Em DOI
4139615e1d4SaaronThe domain of interpretation as given by the RFCs.
4149615e1d4SaaronNormally
415c5fe6c4eSniklas.Li IPSEC .
416b57b191eSniklasIf unspecified, defaults to
417b57b191eSniklas.Li IPSEC .
418c5fe6c4eSniklas.It Em EXCHANGE_TYPE
4199615e1d4SaaronThe exchange type as given by the RFCs.
4209615e1d4SaaronFor main mode this is
4219f078bd8Sniklas.Li ID_PROT
4229f078bd8Sniklasand for aggressive mode it is
4239f078bd8Sniklas.Li AGGRESSIVE .
424c5fe6c4eSniklas.It Em Transforms
425c5fe6c4eSniklasA list of proposed transforms to use for protecting the
4269615e1d4SaaronISAKMP traffic.
4279615e1d4SaaronThese are actually names for sections
4289615e1d4Saaronfurther describing the transforms.
4299615e1d4SaaronLook at <ISAKMP-transform> below.
430c5fe6c4eSniklas.El
431c5fe6c4eSniklas.It Em <ISAKMP-transform>
432c5fe6c4eSniklas.Bl -tag -width 12n
433c5fe6c4eSniklas.It Em ENCRYPTION_ALGORITHM
434850f7173SniklasThe encryption algorithm as the RFCs name it, or ANY to denote that any
435850f7173Sniklasencryption algorithm proposed will be accepted.
436c5fe6c4eSniklas.It Em KEY_LENGTH
437c5fe6c4eSniklasFor encryption algorithms with variable key length, this is
4389615e1d4Saaronwhere the offered/accepted keylengths are described.
4399615e1d4SaaronThe value is of the offer-accept kind described above.
440c5fe6c4eSniklas.It Em HASH_ALGORITHM
441850f7173SniklasThe hash algorithm as the RFCs name it, or ANY.
442c5fe6c4eSniklas.It Em AUTHENTICATION_METHOD
443850f7173SniklasThe authentication method as the RFCs name it, or ANY.
444c5fe6c4eSniklas.It Em GROUP_DESCRIPTION
4459615e1d4SaaronThe group used for Diffie-Hellman exponentiations, or ANY.
44644143af3SderaadtThe names are symbolic, like
447c5fe6c4eSniklas.Li MODP_768 , MODP_1024 , EC_155
448c5fe6c4eSniklasand
449c5fe6c4eSniklas.Li EC_185 .
450850f7173Sniklas.It Em PRF
451850f7173SniklasThe algorithm to use for the keyed pseudo-random function (used for key
45235ff0956Shoderivation and authentication in phase 1), or ANY.
453c5fe6c4eSniklas.It Em Life
4544aac73a4SaaronA list of lifetime descriptions, or ANY.
4554aac73a4SaaronIn the former case, each
456850f7173Sniklaselement is in itself a name of the section that defines the lifetime.
4574aac73a4SaaronLook at <Lifetime> below.
4584aac73a4SaaronIf it is set to ANY, then any type of
459850f7173Sniklasproposed lifetime type and value will be accepted.
460c5fe6c4eSniklas.El
461c5fe6c4eSniklas.It Em <Lifetime>
462c5fe6c4eSniklas.Bl -tag -width 12n
463c5fe6c4eSniklas.It Em LIFE_TYPE
464c5fe6c4eSniklas.Li SECONDS
465c5fe6c4eSniklasor
466e55ca143Sniklas.Li KILOBYTES
4674aac73a4Saarondepending on the type of the duration.
4684aac73a4SaaronNotice that this field may NOT be set to ANY.
469c5fe6c4eSniklas.It Em LIFE_DURATION
4704aac73a4SaaronAn offer/accept kind of value, see above.
4714aac73a4SaaronCan also be set to ANY.
472c5fe6c4eSniklas.El
47361d575f0Sangelos.It Em <IPsec-connection>
474c5fe6c4eSniklas.Bl -tag -width 12n
475c5fe6c4eSniklas.It Em Phase
476c5fe6c4eSniklasThe constant
477c5fe6c4eSniklas.Li 2 ,
47861d575f0Sangelosas ISAKMP-peers and IPsec-connections
479c5fe6c4eSniklasreally are handled by the same code inside isakmpd.
480c5fe6c4eSniklas.It Em ISAKMP-peer
481c5fe6c4eSniklasThe name of the ISAKMP-peer which to talk to in order to
4829615e1d4Saaronset up this connection.
4839615e1d4SaaronThe value is the name of an <ISAKMP-peer> section.
4849615e1d4SaaronSee above.
485c5fe6c4eSniklas.It Em Configuration
48661d575f0SangelosThe name of the IPsec-configuration section to use.
48761d575f0SangelosLook at <IPsec-configuration> below.
488c5fe6c4eSniklas.It Em Local-ID
489c5fe6c4eSniklasIf existent, the name of the section that describes the
490c5fe6c4eSniklasoptional local client ID that we should present to our peer.
49180baf197SniklasIt is also used when we act as responders to find out what
49261d575f0Sangelos<IPsec-connection> we are dealing with.
49361d575f0SangelosLook at <IPsec-ID> below.
494c5fe6c4eSniklas.It Em Remote-ID
495c5fe6c4eSniklasIf existent, the name of the section that describes the
496c5fe6c4eSniklasoptional remote client ID that we should present to our peer.
49780baf197SniklasIt is also used when we act as responders to find out what
49861d575f0Sangelos<IPsec-connection> we are dealing with.
49961d575f0SangelosLook at <IPsec-ID> below.
50013a99464Sniklas.It Em Flags
50113a99464SniklasA comma-separated list of flags controlling the further
50261d575f0Sangeloshandling of the IPsec SA.
5039615e1d4SaaronCurrently only one flag is defined:
50480baf197Sniklas.Bl -tag -width 12n
50580baf197Sniklas.It Em Active-only
50661d575f0SangelosIf this flag is given and this <IPsec-connection> is part of the phase 2
50780baf197Sniklasconnections we automatically keep up, it will not automatically be used for
50880baf197Sniklasaccepting connections from the peer.
50980baf197Sniklas.El
510c5fe6c4eSniklas.El
51161d575f0Sangelos.It Em <IPsec-configuration>
512c5fe6c4eSniklas.Bl -tag -width 12n
513c5fe6c4eSniklas.It Em DOI
5149615e1d4SaaronThe domain of interpretation as given by the RFCs.
5159615e1d4SaaronNormally
516c5fe6c4eSniklas.Li IPSEC .
517b57b191eSniklasIf unspecified, defaults to
518b57b191eSniklas.Li IPSEC .
519c5fe6c4eSniklas.It Em EXCHANGE_TYPE
5209615e1d4SaaronThe exchange type as given by the RFCs.
5219615e1d4SaaronFor quick mode this is
522c5fe6c4eSniklas.Li QUICK_MODE .
523c5fe6c4eSniklas.It Em Suites
5243b2a0cf1SaaronA list of protection suites (bundles of protocols) usable for
5259615e1d4Saaronprotecting the IP traffic.
52661d575f0SangelosEach of the list elements is a name of an <IPsec-suite> section.
5279615e1d4SaaronSee below.
528c5fe6c4eSniklas.El
52961d575f0Sangelos.It Em <IPsec-suite>
530c5fe6c4eSniklas.Bl -tag -width 12n
531c5fe6c4eSniklas.It Em Protocols
532c5fe6c4eSniklasA list of the protocols included in this protection suite.
53361d575f0SangelosEach of the list elements is a name of an <IPsec-protocol>
5349615e1d4Saaronsection.
5359615e1d4SaaronSee below.
536c5fe6c4eSniklas.El
53761d575f0Sangelos.It Em <IPsec-protocol>
538c5fe6c4eSniklas.Bl -tag -width 12n
539c5fe6c4eSniklas.It Em PROTOCOL_ID
5409615e1d4SaaronThe protocol as given by the RFCs.
5419615e1d4SaaronAcceptable values today are
542c5fe6c4eSniklas.Li IPSEC_AH
543c5fe6c4eSniklasand
544c5fe6c4eSniklas.Li IPSEC_ESP .
545c5fe6c4eSniklas.It Em Transforms
5463b2a0cf1SaaronA list of transforms usable for implementing the protocol.
54761d575f0SangelosEach of the list elements is a name of an <IPsec-transform>
5489615e1d4Saaronsection.
5499615e1d4SaaronSee below.
550c5fe6c4eSniklas.It Em ReplayWindow
5519615e1d4SaaronThe size of the window used for replay protection.
5529615e1d4SaaronThis is normally left alone.
5539615e1d4SaaronLook at the
554c5fe6c4eSniklas.Nm ESP
555c5fe6c4eSniklasand
556c5fe6c4eSniklas.Nm AH
557c5fe6c4eSniklasRFCs for a better description.
558c5fe6c4eSniklas.El
55961d575f0Sangelos.It Em <IPsec-transform>
560c5fe6c4eSniklas.Bl -tag -width 12n
561c5fe6c4eSniklas.It Em TRANSFORM_ID
562c5fe6c4eSniklasThe transform ID as given by the RFCs.
563c5fe6c4eSniklas.It Em ENCAPSULATION_MODE
5649615e1d4SaaronThe encapsulation mode as given by the RFCs.
5659615e1d4SaaronThis means TRANSPORT or TUNNEL.
566c5fe6c4eSniklas.It Em AUTHENTICATION_ALGORITHM
567c5fe6c4eSniklasThe optional authentication algorithm in the case of this
568c5fe6c4eSniklasbeing an ESP transform.
569c5fe6c4eSniklas.It Em GROUP_DESCRIPTION
570c5fe6c4eSniklasAn optional (provides PFS if present) Diffie-Hellman group
5719615e1d4Saarondescription.
5729615e1d4SaaronThe values are the same as GROUP_DESCRIPTION's
573c5fe6c4eSniklasin <ISAKMP-transform> sections shown above.
574c5fe6c4eSniklas.It Em Life
575c5fe6c4eSniklasList of lifetimes, each element is a <Lifetime> section name.
576c5fe6c4eSniklas.El
57761d575f0Sangelos.It Em <IPsec-ID>
578c5fe6c4eSniklas.Bl -tag -width 12n
579c5fe6c4eSniklas.It Em ID-type
5809615e1d4SaaronThe ID type as given by the RFCs.
58161d575f0SangelosFor IPsec this is currently
582d8ca7c44Sho.Li IPV4_ADDR ,
583d8ca7c44Sho.Li IPV6_ADDR ,
584d8ca7c44Sho.Li IPV4_ADDR_SUBNET
585c5fe6c4eSniklasor
586d8ca7c44Sho.Li IPV6_ADDR_SUBNET .
587c5fe6c4eSniklas.It Em Address
588c5fe6c4eSniklasIf the ID-type is
589d8ca7c44Sho.Li IPV4_ADDR
590d8ca7c44Shoor
591d8ca7c44Sho.Li IPV6_ADDR
592c5fe6c4eSniklasthis tag should exist and be an IP-address.
593c5fe6c4eSniklas.It Em Network
594c5fe6c4eSniklasIf the ID-type is
595c5fe6c4eSniklas.Li IPV4_ADDR_SUBNET
596d8ca7c44Shoor
597d8ca7c44Sho.Li IPV6_ADDR_SUBNET
598c5fe6c4eSniklasthis tag should exist and
599c5fe6c4eSniklasbe a network address.
600c5fe6c4eSniklas.It Em Netmask
601c5fe6c4eSniklasIf the ID-type is
602c5fe6c4eSniklas.Li IPV4_ADDR_SUBNET
603d8ca7c44Shoor
604d8ca7c44Sho.Li IPV6_ADDR_SUBNET
605c5fe6c4eSniklasthis tag should exist and
606c5fe6c4eSniklasbe a network subnet mask.
6070378d1f2Sniklas.It Em Protocol
6080378d1f2SniklasIf the ID-type is
609d8ca7c44Sho.Li IPV4_ADDR ,
6100378d1f2Sniklas.Li IPV4_ADDR_SUBNET ,
611d8ca7c44Sho.Li IPV6_ADDR
612d8ca7c44Shoor
613d8ca7c44Sho.Li IPV6_ADDR_SUBNET
6140378d1f2Sniklasthis tag indicates what transport protocol should be transmitted over
6150378d1f2Sniklasthe SA.
6160378d1f2SniklasIf left unspecified, all transport protocols between the two address
6170378d1f2Sniklas(ranges) will be sent (or permitted) over that SA.
6180378d1f2Sniklas.It Em Port
6190378d1f2SniklasIf the ID-type is
620d8ca7c44Sho.Li IPV4_ADDR ,
6210378d1f2Sniklas.Li IPV4_ADDR_SUBNET ,
622d8ca7c44Sho.Li IPV6_ADDR
623d8ca7c44Shoor
624d8ca7c44Sho.Li IPV6_ADDR_SUBNET
6250378d1f2Sniklasthis tag indicates what source or destination port is allowed to be
6260378d1f2Sniklastransported over the SA (depending on whether this is a local or
6270378d1f2Sniklasremote ID).
6280378d1f2SniklasIf left unspecified, all ports of the given transport protocol
6290378d1f2Sniklaswill be transmitted (or permitted) over the SA.
6300378d1f2SniklasThe Protocol tag must be specified in conjunction with this tag.
631c5fe6c4eSniklas.El
632c5fe6c4eSniklas.El
6334ca71560Sho.Ss Other sections
6344ca71560Sho.Bl -hang -width 12n
6354ca71560Sho.It Em <IKECFG-ID>
6364ca71560ShoParameters to use with IKE mode-config. One ID per peer.
6374ca71560Sho.Pp
6384ca71560ShoAn IKECFG-ID is written as [<ID-type>/<name>].
6394ca71560ShoThe following ID types are supported:
6404ca71560Sho.Bl -tag -width 12n
6414ca71560Sho.It IPv4
6424ca71560Sho[ipv4/A.B.C.D]
6434ca71560Sho.It IPv6
6444ca71560Sho[ipv6/abcd:abcd::ab:cd]
6454ca71560Sho.It FQDN
6464ca71560Sho[fqdn/foo.bar.org]
6474ca71560Sho.It UFQDN
6484ca71560Sho[ufqdn/user@foo.bar.org]
6494ca71560Sho.It ASN1_DN
6504ca71560Sho[asn1_dn//C=aa/O=cc/...] (Note the double slashes as the DN itself
6514ca71560Shostarts with a '/'.)
6524ca71560Sho.El
6534ca71560Sho.Pp
6544ca71560ShoEach section specifies what configuration values to return to the peer
6554ca71560Shorequesting IKE mode-config. Currently supported values are:
6564ca71560Sho.Bl -tag -width 12n
6574ca71560Sho.It Em Address
6584ca71560ShoThe peer's network address.
6594ca71560Sho.It Em Netmask
6604ca71560ShoThe peer's netmask.
6614ca71560Sho.It Em Nameserver
6624ca71560ShoThe IP address of a DNS nameserver.
6634ca71560Sho.It Em WINS-server
6644ca71560ShoThe IP address of a WINS server.
6654ca71560Sho.El
666106cbd59Smarkus.It Em <Initiator-ID>
667106cbd59Smarkus.Pp
668106cbd59SmarkusDuring phase 1 negotiation
669106cbd59Smarkus.Nm isakmpd
670106cbd59Smarkuslooks for a pre-shared key in the <ISAKMP-peer> section.
671106cbd59SmarkusIf no Authentication data is specified in that section, and
672106cbd59Smarkus.Nm isakmpd
673106cbd59Smarkusis not the initiator, it looks for Authentication data in a section named after
674106cbd59Smarkusthe initiator's phase 1 ID.
675106cbd59SmarkusThis allows mobile users with dynamic IP addresses
676106cbd59Smarkusto have different shared secrets.
677106cbd59Smarkus.Pp
678106cbd59SmarkusThis only works for aggressive mode because in main mode the remote
679106cbd59Smarkusinitiator ID would not yet be known.
680106cbd59Smarkus.Pp
681106cbd59SmarkusThe name of the <Initiator-ID> section depends on the ID type sent by
682106cbd59Smarkusthe initiator.
683106cbd59SmarkusCurrently this can be:
684106cbd59Smarkus.Bl -tag -width 12n
685106cbd59Smarkus.It IPv4
686106cbd59Smarkus[A.B.C.D]
687106cbd59Smarkus.It IPv6
688106cbd59Smarkus[abcd:abcd::ab:cd]
689106cbd59Smarkus.It FQDN
690106cbd59Smarkus[foo.bar.org]
691106cbd59Smarkus.It UFQDN
692106cbd59Smarkus[user@foo.bar.org]
693106cbd59Smarkus.El
6944ca71560Sho.El
695*2b65e200Sjmc.Sh FILES
696*2b65e200Sjmc.Bl -tag -width /etc/isakmpd/isakmpd.conf
697*2b65e200Sjmc.It Pa /etc/isakmpd/isakmpd.conf
698*2b65e200SjmcThe default
699*2b65e200Sjmc.Nm isakmpd
700*2b65e200Sjmcconfiguration file.
701*2b65e200Sjmc.It Pa /usr/share/ipsec/isakmpd/
702*2b65e200SjmcA directory containing some sample
703*2b65e200Sjmc.Nm isakmpd
704*2b65e200Sjmcconfiguration files.
705*2b65e200Sjmc.El
70600b2ba71Saaron.Sh EXAMPLES
7072040585eSniklasAn example of a configuration file:
7082040585eSniklas.Pp
7092040585eSniklas.Bd -literal
7102040585eSniklas# A configuration sample for the isakmpd ISAKMP/Oakley (aka IKE) daemon.
7112040585eSniklas
7122040585eSniklas[General]
713c5fe6c4eSniklasListen-on=		10.1.0.2
7142040585eSniklas
715c5fe6c4eSniklas# Incoming phase 1 negotiations are multiplexed on the source IP address
7162b81057dSniklas[Phase 1]
717c5fe6c4eSniklas10.1.0.1=		ISAKMP-peer-west
7182b81057dSniklas
719c5fe6c4eSniklas# These connections are walked over after config file parsing and told
720c5fe6c4eSniklas# to the application layer so that it will inform us when traffic wants to
721c5fe6c4eSniklas# pass over them.  This means we can do on-demand keying.
722c5fe6c4eSniklas[Phase 2]
723c5fe6c4eSniklasConnections=		IPsec-east-west
724c5fe6c4eSniklas
725cc3c8b42Sniklas# Default values are commented out.
726c5fe6c4eSniklas[ISAKMP-peer-west]
7272b81057dSniklasPhase=			1
728cc3c8b42Sniklas#Transport=		udp
729f6dd85a7SniklasLocal-address=		10.1.0.2
7302b81057dSniklasAddress=		10.1.0.1
7312b81057dSniklas#Port=			isakmp
7322b81057dSniklas#Port=			500
73335ff0956Sho#Configuration=		Default-phase-1-configuration
7342b81057dSniklasAuthentication=		mekmitasdigoat
735cc3c8b42Sniklas#Flags=
7362b81057dSniklas
737c5fe6c4eSniklas[IPsec-east-west]
7382b81057dSniklasPhase=			2
739c5fe6c4eSniklasISAKMP-peer=		ISAKMP-peer-west
7402b81057dSniklasConfiguration=		Default-quick-mode
741c5fe6c4eSniklasLocal-ID=		Net-east
742c5fe6c4eSniklasRemote-ID=		Net-west
743cc3c8b42Sniklas#Flags=
7442b81057dSniklas
745c5fe6c4eSniklas[Net-west]
7462b81057dSniklasID-type=		IPV4_ADDR_SUBNET
7472b81057dSniklasNetwork=		192.168.1.0
7482b81057dSniklasNetmask=		255.255.255.0
7492b81057dSniklas
750c5fe6c4eSniklas[Net-east]
7512b81057dSniklasID-type=		IPV4_ADDR_SUBNET
7522b81057dSniklasNetwork=		192.168.2.0
7532b81057dSniklasNetmask=		255.255.255.0
7542b81057dSniklas
75552e712aeSniklas# Quick mode descriptions
75652e712aeSniklas
75752e712aeSniklas[Default-quick-mode]
75852e712aeSniklasEXCHANGE_TYPE=		QUICK_MODE
7591a87c1a3ShoSuites=			QM-ESP-3DES-SHA-PFS-SUITE,QM-ESP-AES-SHA-PFS-SUITE
76052e712aeSniklas
7614ca71560Sho# Data for an IKE mode-config peer
7624ca71560Sho[asn1_dn//C=SE/L=SomeCity/O=SomeCompany/CN=SomePeer.company.com]
7634ca71560ShoAddress=		192.168.1.123
7644ca71560ShoNetmask=		255.255.255.0
7654ca71560ShoNameserver=		192.168.1.10
7664ca71560ShoWINS-server=		192.168.1.11
7674ca71560Sho
768106cbd59Smarkus# pre-shared key based on initiator's phase 1 ID
769106cbd59Smarkus[foo.bar.org]
770106cbd59SmarkusAuthentication=		mekmitasdigoat
771106cbd59Smarkus
77252e712aeSniklas#
77352e712aeSniklas# #####################################################################
77444143af3Sderaadt# All configuration data below this point is not required as the example
77552e712aeSniklas# uses the predefined Main Mode transform and Quick Mode suite names.
77652e712aeSniklas# It is included here for completeness. Note the default values for the
77752e712aeSniklas# [General] and [X509-certificates] sections just below.
77852e712aeSniklas# #####################################################################
77952e712aeSniklas#
78052e712aeSniklas
78152e712aeSniklas[General]
782447a9f3aShoPolicy-file=		/etc/isakmpd/isakmpd.policy
78352e712aeSniklasRetransmits=		3
78452e712aeSniklasExchange-max-time=	120
78552e712aeSniklas
786b57b191eSniklas# KeyNote credential storage
787b57b191eSniklas[KeyNote]
788b57b191eSniklasCredential-directory=	/etc/isakmpd/keynote/
789b57b191eSniklas
790fb1921ccSniklas# Certificates stored in PEM format
791fb1921ccSniklas[X509-certificates]
792fb1921ccSniklasCA-directory=           /etc/isakmpd/ca/
793fb1921ccSniklasCert-directory=         /etc/isakmpd/certs/
7949dbe9fb4ShoCRL-directory=		/etc/isakmpd/crls/
795954b1b31SniklasPrivate-key=		/etc/isakmpd/private/local.key
796fb1921ccSniklas
797419caefeSho# Default phase 1 description (Main Mode)
798419caefeSho
79935ff0956Sho[Default-phase-1-configuration]
800419caefeShoEXCHANGE_TYPE=		ID_PROT
801419caefeShoTransforms=		3DES-SHA
802419caefeSho
8032b81057dSniklas# Main mode transforms
8042b81057dSniklas######################
8052b81057dSniklas
8062b81057dSniklas# DES
8072040585eSniklas
8082040585eSniklas[DES-MD5]
8092040585eSniklasENCRYPTION_ALGORITHM=	DES_CBC
8102040585eSniklasHASH_ALGORITHM=		MD5
8112040585eSniklasAUTHENTICATION_METHOD=	PRE_SHARED
8122039fcadShoGROUP_DESCRIPTION=	MODP_1024
81360f440ccShoLife=			Default-phase-1-lifetime
8142040585eSniklas
8152b81057dSniklas[DES-SHA]
8162b81057dSniklasENCRYPTION_ALGORITHM=	DES_CBC
8172b81057dSniklasHASH_ALGORITHM=		SHA
8182b81057dSniklasAUTHENTICATION_METHOD=	PRE_SHARED
81960f440ccShoGROUP_DESCRIPTION=	MODP_1024
82060f440ccShoLife=			Default-phase-1-lifetime
8212b81057dSniklas
8222b81057dSniklas# 3DES
8232b81057dSniklas
8242b81057dSniklas[3DES-SHA]
8252b81057dSniklasENCRYPTION_ALGORITHM=	3DES_CBC
8262040585eSniklasHASH_ALGORITHM=		SHA
8272040585eSniklasAUTHENTICATION_METHOD=	PRE_SHARED
8282040585eSniklasGROUP_DESCRIPTION=	MODP_1024
82960f440ccShoLife=			Default-phase-1-lifetime
8302b81057dSniklas
8312b81057dSniklas# Blowfish
8322b81057dSniklas
83360f440ccSho[BLF-SHA]
8342b81057dSniklasENCRYPTION_ALGORITHM=	BLOWFISH_CBC
8352b81057dSniklasKEY_LENGTH=		128,96:192
8362b81057dSniklasHASH_ALGORITHM=		SHA
8372b81057dSniklasAUTHENTICATION_METHOD=	PRE_SHARED
8382b81057dSniklasGROUP_DESCRIPTION=	MODP_1024
83960f440ccShoLife=			Default-phase-1-lifetime
8402040585eSniklas
84160f440ccSho# Blowfish, using DH group 4 (non-default)
8422040585eSniklas[BLF-SHA-EC185]
843d70ca5f7SniklasENCRYPTION_ALGORITHM=	BLOWFISH_CBC
8442b81057dSniklasKEY_LENGTH=		128,96:192
8452040585eSniklasHASH_ALGORITHM=		SHA
8462040585eSniklasAUTHENTICATION_METHOD=	PRE_SHARED
8472040585eSniklasGROUP_DESCRIPTION=	EC2N_185
84860f440ccShoLife=			Default-phase-1-lifetime
8492040585eSniklas
8502b81057dSniklas# Quick mode protection suites
8512b81057dSniklas##############################
8522b81057dSniklas
8532b81057dSniklas# DES
8542040585eSniklas
855d70ca5f7Sniklas[QM-ESP-DES-SUITE]
856d70ca5f7SniklasProtocols=		QM-ESP-DES
857d70ca5f7Sniklas
8582b81057dSniklas[QM-ESP-DES-PFS-SUITE]
8592b81057dSniklasProtocols=		QM-ESP-DES-PFS
8602b81057dSniklas
8612040585eSniklas[QM-ESP-DES-MD5-SUITE]
8622040585eSniklasProtocols=		QM-ESP-DES-MD5
8632040585eSniklas
8642b81057dSniklas[QM-ESP-DES-MD5-PFS-SUITE]
8652b81057dSniklasProtocols=		QM-ESP-DES-MD5-PFS
8662040585eSniklas
8672b81057dSniklas[QM-ESP-DES-SHA-SUITE]
8682b81057dSniklasProtocols=		QM-ESP-DES-SHA
8692040585eSniklas
8702b81057dSniklas[QM-ESP-DES-SHA-PFS-SUITE]
8712b81057dSniklasProtocols=		QM-ESP-DES-SHA-PFS
8722040585eSniklas
8732b81057dSniklas# 3DES
8742b81057dSniklas
8752b81057dSniklas[QM-ESP-3DES-SHA-SUITE]
8762b81057dSniklasProtocols=		QM-ESP-3DES-SHA
8772b81057dSniklas
8782b81057dSniklas[QM-ESP-3DES-SHA-PFS-SUITE]
8792b81057dSniklasProtocols=		QM-ESP-3DES-SHA-PFS
8802b81057dSniklas
881bfc24386Sniklas# AES
882bfc24386Sniklas
883bfc24386Sniklas[QM-ESP-AES-SHA-SUITE]
884bfc24386SniklasProtocols=              QM-ESP-AES-SHA
885bfc24386Sniklas
88660f440ccSho[QM-ESP-AES-SHA-PFS-SUITE]
887bfc24386SniklasProtocols=              QM-ESP-AES-SHA-PFS
888bfc24386Sniklas
8892b81057dSniklas# AH
8902b81057dSniklas
8912b81057dSniklas[QM-AH-MD5-SUITE]
8922b81057dSniklasProtocols=		QM-AH-MD5
8932b81057dSniklas
8942b81057dSniklas[QM-AH-MD5-PFS-SUITE]
8952b81057dSniklasProtocols=		QM-AH-MD5-PFS
8962b81057dSniklas
89760f440ccSho# AH + ESP (non-default)
8982040585eSniklas
8992040585eSniklas[QM-AH-MD5-ESP-DES-SUITE]
9002040585eSniklasProtocols=		QM-AH-MD5,QM-ESP-DES
9012040585eSniklas
9022b81057dSniklas[QM-AH-MD5-ESP-DES-MD5-SUITE]
9032b81057dSniklasProtocols=		QM-AH-MD5,QM-ESP-DES-MD5
9042040585eSniklas
9052b81057dSniklas[QM-ESP-DES-MD5-AH-MD5-SUITE]
9062b81057dSniklasProtocols=		QM-ESP-DES-MD5,QM-AH-MD5
9072b81057dSniklas
9082b81057dSniklas# Quick mode protocols
9092b81057dSniklas
9102b81057dSniklas# DES
9112040585eSniklas
9122040585eSniklas[QM-ESP-DES]
9132040585eSniklasPROTOCOL_ID=		IPSEC_ESP
9142040585eSniklasTransforms=		QM-ESP-DES-XF
9152040585eSniklas
9162b81057dSniklas[QM-ESP-DES-MD5]
9172b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9182b81057dSniklasTransforms=		QM-ESP-DES-MD5-XF
9192b81057dSniklas
9202b81057dSniklas[QM-ESP-DES-MD5-PFS]
9212b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9222b81057dSniklasTransforms=		QM-ESP-DES-MD5-PFS-XF
9232b81057dSniklas
9242b81057dSniklas[QM-ESP-DES-SHA]
9252b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9262b81057dSniklasTransforms=		QM-ESP-DES-SHA-XF
9272b81057dSniklas
9282b81057dSniklas# 3DES
9292b81057dSniklas
9302b81057dSniklas[QM-ESP-3DES-SHA]
9312b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9322b81057dSniklasTransforms=		QM-ESP-3DES-SHA-XF
9332b81057dSniklas
9342b81057dSniklas[QM-ESP-3DES-SHA-PFS]
9352b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9362b81057dSniklasTransforms=		QM-ESP-3DES-SHA-PFS-XF
9372b81057dSniklas
9382b81057dSniklas[QM-ESP-3DES-SHA-TRP]
9392b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9402b81057dSniklasTransforms=		QM-ESP-3DES-SHA-TRP-XF
9412b81057dSniklas
942bfc24386Sniklas# AES
943bfc24386Sniklas
944bfc24386Sniklas[QM-ESP-AES-SHA]
945bfc24386SniklasPROTOCOL_ID=		IPSEC_ESP
946bfc24386SniklasTransforms=		QM-ESP-AES-SHA-XF
947bfc24386Sniklas
948bfc24386Sniklas[QM-ESP-AES-SHA-PFS]
949bfc24386SniklasPROTOCOL_ID=		IPSEC_ESP
950bfc24386SniklasTransforms=		QM-ESP-AES-SHA-PFS-XF
951bfc24386Sniklas
952bfc24386Sniklas[QM-ESP-AES-SHA-TRP]
953bfc24386SniklasPROTOCOL_ID=		IPSEC_ESP
954bfc24386SniklasTransforms=		QM-ESP-AES-SHA-TRP-XF
955bfc24386Sniklas
9562b81057dSniklas# AH MD5
9572b81057dSniklas
9582b81057dSniklas[QM-AH-MD5]
9592b81057dSniklasPROTOCOL_ID=		IPSEC_AH
9602b81057dSniklasTransforms=		QM-AH-MD5-XF
9612b81057dSniklas
9622b81057dSniklas[QM-AH-MD5-PFS]
9632b81057dSniklasPROTOCOL_ID=		IPSEC_AH
9642b81057dSniklasTransforms=		QM-AH-MD5-PFS-XF
9652b81057dSniklas
9662b81057dSniklas# Quick mode transforms
9672b81057dSniklas
9682b81057dSniklas# ESP DES+MD5
9692b81057dSniklas
9702040585eSniklas[QM-ESP-DES-XF]
9712040585eSniklasTRANSFORM_ID=		DES
9722040585eSniklasENCAPSULATION_MODE=	TUNNEL
97360f440ccShoLife=			Default-phase-2-lifetime
9742040585eSniklas
9752b81057dSniklas[QM-ESP-DES-MD5-XF]
9762b81057dSniklasTRANSFORM_ID=		DES
9772b81057dSniklasENCAPSULATION_MODE=	TUNNEL
9782b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_MD5
97960f440ccShoLife=			Default-phase-2-lifetime
9802b81057dSniklas
9812b81057dSniklas[QM-ESP-DES-MD5-PFS-XF]
9822b81057dSniklasTRANSFORM_ID=		DES
9832b81057dSniklasENCAPSULATION_MODE=	TUNNEL
9842039fcadShoGROUP_DESCRIPTION=	MODP_1024
9852b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_MD5
98660f440ccShoLife=			Default-phase-2-lifetime
9872b81057dSniklas
9882b81057dSniklas[QM-ESP-DES-SHA-XF]
9892b81057dSniklasTRANSFORM_ID=		DES
9902b81057dSniklasENCAPSULATION_MODE=	TUNNEL
9912b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
99260f440ccShoLife=			Default-phase-2-lifetime
9932b81057dSniklas
9942b81057dSniklas# 3DES
9952b81057dSniklas
9962b81057dSniklas[QM-ESP-3DES-SHA-XF]
9972b81057dSniklasTRANSFORM_ID=		3DES
9982b81057dSniklasENCAPSULATION_MODE=	TUNNEL
9992b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
100060f440ccShoLife=			Default-phase-2-lifetime
10012b81057dSniklas
10022b81057dSniklas[QM-ESP-3DES-SHA-PFS-XF]
10032b81057dSniklasTRANSFORM_ID=		3DES
10042b81057dSniklasENCAPSULATION_MODE=	TUNNEL
10052b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
10062b81057dSniklasGROUP_DESCRIPTION=	MODP_1024
100760f440ccShoLife=			Default-phase-2-lifetime
10082b81057dSniklas
10092b81057dSniklas[QM-ESP-3DES-SHA-TRP-XF]
10102b81057dSniklasTRANSFORM_ID=		3DES
10112b81057dSniklasENCAPSULATION_MODE=	TRANSPORT
10122b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
101360f440ccShoLife=			Default-phase-2-lifetime
10142b81057dSniklas
1015bfc24386Sniklas# AES
1016bfc24386Sniklas
1017bfc24386Sniklas[QM-ESP-AES-SHA-XF]
1018bfc24386SniklasTRANSFORM_ID=		AES
1019bfc24386SniklasENCAPSULATION_MODE=	TUNNEL
1020bfc24386SniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
102160f440ccShoLife=			Default-phase-2-lifetime
1022bfc24386Sniklas
1023bfc24386Sniklas[QM-ESP-AES-SHA-PFS-XF]
1024bfc24386SniklasTRANSFORM_ID=		AES
1025bfc24386SniklasENCAPSULATION_MODE=	TUNNEL
1026bfc24386SniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
1027bfc24386SniklasGROUP_DESCRIPTION=	MODP_1024
102860f440ccShoLife=			Default-phase-2-lifetime
1029bfc24386Sniklas
1030bfc24386Sniklas[QM-ESP-AES-SHA-TRP-XF]
1031bfc24386SniklasTRANSFORM_ID=		AES
1032bfc24386SniklasENCAPSULATION_MODE=	TRANSPORT
1033bfc24386SniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
103460f440ccShoLife=			Default-phase-2-lifetime
1035bfc24386Sniklas
10362b81057dSniklas# AH
10372b81057dSniklas
10382b81057dSniklas[QM-AH-MD5-XF]
10392b81057dSniklasTRANSFORM_ID=		MD5
10402b81057dSniklasENCAPSULATION_MODE=	TUNNEL
10412b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_MD5
104260f440ccShoLife=			Default-phase-2-lifetime
10432b81057dSniklas
10442b81057dSniklas[QM-AH-MD5-PFS-XF]
10452b81057dSniklasTRANSFORM_ID=		MD5
10462b81057dSniklasENCAPSULATION_MODE=	TUNNEL
10472039fcadShoGROUP_DESCRIPTION=	MODP_1024
104860f440ccShoLife=			Default-phase-2-lifetime
10492b81057dSniklas
105060f440ccSho[Sample-Life-Time]
10512b81057dSniklasLIFE_TYPE=		SECONDS
10522b81057dSniklasLIFE_DURATION=		3600,1800:7200
10532b81057dSniklas
105460f440ccSho[Sample-Life-Volume]
10552b81057dSniklasLIFE_TYPE=		KILOBYTES
10562b81057dSniklasLIFE_DURATION=		1000,768:1536
10572040585eSniklas.Ed
10582040585eSniklas.Sh SEE ALSO
1059b57b191eSniklas.Xr keynote 1 ,
1060dc89b21eSfgsch.Xr ipsec 4 ,
106130a2652aSniklas.Xr keynote 4 ,
106277725688Sniklas.Xr isakmpd.policy 5 ,
1063350bb3b8Salex.Xr isakmpd 8
1064d7401508Sho.Sh BUGS
1065d7401508ShoThe RFCs do not permit differing DH groups in the same proposal for
1066d7401508Shoaggressive and quick mode exchanges.
1067d7401508ShoMixing both PFS and non-PFS suites in a quick mode proposal is not possible,
1068d7401508Shoas PFS implies using a DH group.
1069