xref: /openbsd/sbin/isakmpd/isakmpd.conf.5 (revision 87ab220e)
1*87ab220eShshoexer.\" $OpenBSD: isakmpd.conf.5,v 1.89 2004/02/27 19:07:16 hshoexer 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.\"
162040585eSniklas.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
172040585eSniklas.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
182040585eSniklas.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
192040585eSniklas.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
202040585eSniklas.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
212040585eSniklas.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
222040585eSniklas.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
232040585eSniklas.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
242040585eSniklas.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
252040585eSniklas.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
262040585eSniklas.\"
272040585eSniklas.\" This code was written under funding by Ericsson Radio Systems.
282040585eSniklas.\"
292040585eSniklas.\" Manual page, using -mandoc macros
302040585eSniklas.\"
3172578f93Sho.Dd August 07, 2002
3258aefd4bSaaron.Dt ISAKMPD.CONF 5
332040585eSniklas.Os
342040585eSniklas.Sh NAME
352040585eSniklas.Nm isakmpd.conf
3658aefd4bSaaron.Nd configuration file for isakmpd
372040585eSniklas.Sh DESCRIPTION
3858aefd4bSaaron.Nm
3958aefd4bSaaronis the configuration file for the
402040585eSniklas.Nm isakmpd
412040585eSniklasdaemon managing security association and key management for the
4261d575f0SangelosIPsec layer of the kernel's networking stack.
432040585eSniklas.Pp
442040585eSniklasThe file is of a well known type of format called .INI style, named after
452040585eSniklasthe suffix used by an overrated windowing environment for its configuration
469615e1d4Saaronfiles.
479615e1d4SaaronThis format consists of sections, each beginning with a line looking like:
482040585eSniklas.Bd -literal
492040585eSniklas[Section name]
502040585eSniklas.Ed
512040585eSniklasBetween the brackets is the name of the section following this section header.
522040585eSniklasInside a section many tag/value pairs can be stored, each one looking like:
532040585eSniklas.Bd -literal
542040585eSniklasTag=Value
552040585eSniklas.Ed
562040585eSniklasIf the value needs more space than fits on a single line it's possible to
57a2067f52Sniklascontinue it on the next by ending the first with a backslash character
589615e1d4Saaronimmediately before the newline character.
590e2d4717SkjellThis method can extend a value for an arbitrary number of lines.
602040585eSniklas.Pp
6158aefd4bSaaronComments can be put anywhere in the file by using a hash mark
6258aefd4bSaaron.Pq Sq \&# .
630e2d4717SkjellThe comment extends to the end of the current line.
642040585eSniklas.Pp
65c5fe6c4eSniklasOften the right-hand side values consist of other section names.
66c5fe6c4eSniklasThis results in a tree structure.
670e2d4717SkjellSome values are treated as a list of several scalar values.
680e2d4717SkjellSuch lists always use a comma character as the separator.
699615e1d4SaaronSome values are formatted like this: X,Y:Z, which
70c5fe6c4eSniklasis an offer/accept syntax, where X is a value we offer and Y:Z is a range of
71c5fe6c4eSniklasaccepted values, inclusive.
72c5fe6c4eSniklas.Pp
73bad0180eShoTo activate changes to
74bad0180eSho.Nm
75bad0180eShowithout restarting
76bad0180eSho.Nm isakmpd ,
774eb3dd62Sjmcsend a
784eb3dd62Sjmc.Dv SIGHUP
794eb3dd62Sjmcsignal to the daemon process.
8052e712aeSniklas.Ss Auto-generated parts of the configuration
8152e712aeSniklas.Pp
820e2d4717SkjellSome predefined section names are recognized by the daemon, avoiding the need
830e2d4717Skjellto fully specify the Main Mode transforms and Quick Mode suites, protocols,
8452e712aeSniklasand transforms.
8552e712aeSniklas.Pp
8652e712aeSniklasFor Main Mode:
8718656612Saaron.Bd -filled -compact
88*87ab220eShshoexer.Ar {DES,BLF,3DES,CAST,AES}-{MD5,SHA}[-GRP{1,2,5,14}][-{DSS,RSA_SIG}]
8952e712aeSniklas.Ed
9052e712aeSniklas.Pp
9152e712aeSniklasFor Quick Mode:
9218656612Saaron.Bd -filled -compact
932039fcadSho.Ar QM-{proto}[-TRP]-{cipher}[-{hash}][-PFS[-{group}]]-SUITE
942039fcadSho.Ed
952039fcadSho.Bd -literal
962039fcadSho  where
972039fcadSho    {proto}  is either ESP or AH
982039fcadSho    {cipher} is either DES, 3DES, CAST, BLF or AES
99daa7789bSmarkus    {hash}   is either MD5, SHA, RIPEMD, SHA2-{256,384,512}
100*87ab220eShshoexer    {group}  is either GRP1, GRP2, GRP5 or GRP14
10152e712aeSniklas.Ed
10252e712aeSniklas.Pp
1030e2d4717SkjellFor example, 3DES-SHA means: 3DES encryption, SHA hash, and authorization by
10452e712aeSniklaspre-shared keys.
1050e2d4717SkjellSimilarly, QM-ESP-3DES-SHA-PFS-SUITE means: ESP protocol, 3DES encryption,
10682184a41SjmcSHA hash, and use Perfect Forward Secrecy.
10752e712aeSniklas.Pp
108*87ab220eShshoexerUnless explicitly stated with -GRP1, 2, 5 or 14 transforms and PFS suites
1094eb3dd62Sjmcuse DH group 2.
1104eb3dd62SjmcThere are currently no predefined ESP+AH Quick Mode suites.
11152e712aeSniklas.Pp
1122039fcadShoThe predefinitions include some default values for the special
113419caefeShosections "General", "Keynote", "X509-certificates", and
11435ff0956Sho"Default-phase-1-configuration".
115419caefeShoThese default values are presented in the example below.
11652e712aeSniklas.Pp
11752e712aeSniklasAll autogenerated values can be overridden by manual entries by using the
11852e712aeSniklassame section and tag names in the configuration file.
119b57b191eSniklasIn particular, the default phase 1 (Main or Aggressive Mode) and phase 2
120b57b191eSniklas(Quick Mode) lifetimes can be overridden by these tags under the "General"
121b57b191eSniklassection;
122b57b191eSniklas.Bd -literal
123b57b191eSniklas[General]
124b57b191eSniklasDefault-phase-1-lifetime=	3600,60:86400
125b57b191eSniklasDefault-phase-2-lifetime=	1200,60:86400
126b57b191eSniklas.Ed
1272039fcadSho.Pp
1282039fcadShoThe Main Mode lifetime currently defaults to one hour (minimum 60
1294eb3dd62Sjmcseconds, maximum 1 day).
1304eb3dd62SjmcThe Quick Mode lifetime defaults to 20 minutes
1314eb3dd62Sjmc(minimum 60 seconds, maximum 1 day).
13252e712aeSniklas.Pp
13335ff0956ShoAlso, the default phase 1 ID can be set by creating a <Phase1-ID>
1340378d1f2Sniklassection, as shown below, and adding this tag under the "General"
1350378d1f2Sniklassection;
1360378d1f2Sniklas.Bd -literal
1370378d1f2Sniklas[General]
1380378d1f2SniklasDefault-phase-1-ID=		Phase1-ID-name
1390378d1f2Sniklas
1400378d1f2Sniklas[Phase1-ID-name]
1410378d1f2SniklasID-type=			USER_FQDN
1420378d1f2SniklasName=				foo@bar.com
1430378d1f2Sniklas.Ed
144c5fe6c4eSniklas.Ss Roots
145c5fe6c4eSniklas.Bl -hang -width 12n
146c5fe6c4eSniklas.It Em General
147c5fe6c4eSniklasGeneric global configuration parameters
148c5fe6c4eSniklas.Bl -tag -width 12n
14935ff0956Sho.It Em Default-phase-1-ID
15035ff0956ShoOptional default phase 1 ID name.
15135ff0956Sho.It Em Default-phase-1-lifetime
15235ff0956ShoThe default lifetime for autogenerated transforms (phase 1).
15335ff0956ShoIf unspecified, the value 3600,60:86400 is used as the default.
15435ff0956Sho.It Em Default-phase-2-lifetime
15535ff0956ShoThe default lifetime for autogenerated suites (phase 2).
15635ff0956ShoIf unspecified, the value 1200,60:86400 is used as the default.
15735ff0956Sho.It Em Default-phase-2-suites
15835ff0956ShoA list of phase 2 suites that will be used when establishing dynamic
15935ff0956ShoSAs.
16035ff0956ShoIf left unspecified, QM-ESP-3DES-SHA-PFS-SUITE is used as the default.
16135ff0956Sho.It Em Check-interval
16235ff0956ShoThe interval between watchdog checks of connections we want up at all times.
16335ff0956Sho.It Em Exchange-max-time
16435ff0956ShoHow many seconds should an exchange maximally take to set up before we
16535ff0956Shogive up.
16635ff0956Sho.It Em Listen-on
16735ff0956ShoA list of IP-addresses OK to listen on.
16835ff0956ShoThis list is used as a filter for the set of addresses the interfaces
16935ff0956Shoconfigured provides.
17035ff0956ShoThis means that we won't see if an address given here does not exist
17135ff0956Shoon this host, and thus no error is given for that case.
1724e2ad344Shshoexer.It Em Loglevel
1734e2ad344ShshoexerA list of the form
1744e2ad344Shshoexer.Ar class Ns = Ns Ar level ,
1754e2ad344Shshoexerwhere both
1764e2ad344Shshoexer.Ar class
1774e2ad344Shshoexerand
1784e2ad344Shshoexer.Ar level
1794e2ad344Shshoexerare numbers.
1804e2ad344ShshoexerThis is similar to the
1814e2ad344Shshoexer.Fl D
1824e2ad344Shshoexercommand line switch of
1834e2ad344Shshoexer.Em isakmpd .
1844e2ad344ShshoexerSee
1854e2ad344Shshoexer.Xr isakmpd 8
1864e2ad344Shshoexerfor details.
1874e2ad344Shshoexer.It Em Logverbose
1884e2ad344ShshoexerIf this tag is defined, whatever the value is, verbose logging is enabled.
1894e2ad344ShshoexerThis is similar to the
1904e2ad344Shshoexer.Fl v
191235cbc01Sjmccommand line switch of
1924e2ad344Shshoexer.Em isakmpd .
1934e2ad344ShshoexerSee
1944e2ad344Shshoexer.Xr isakmpd 8
1954e2ad344Shshoexerfor details.
196447a9f3aSho.It Em Policy-file
19780c8b3dbSniklasThe name of the file that contains
1981215c700Sjmc.Xr keynote 4
1994aac73a4Saaronpolicies.
2004aac73a4SaaronThe default is "/etc/isakmpd/isakmpd.policy".
2010b880a72Sho.It Em Pubkey-directory
2020b880a72ShoThe directory in which
2030b880a72Sho.Nm
204ac1aa35bSmpechlooks for explicitly trusted public keys.
205ac1aa35bSmpechThe default is "/etc/isakmpd/pubkeys".
206ac1aa35bSmpechRead
2070b880a72Sho.Xr isakmpd 8
2080b880a72Shofor the required naming convention of the files in here.
2094d27bb0fSho.It Em Renegotiate-on-HUP
2104d27bb0fShoIf this tag is defined, whatever the value is,
2114d27bb0fSho.Nm isakmpd
2124eb3dd62Sjmcwill renegotiate all current phase 2 SAs when the daemon receives a
2134eb3dd62Sjmc.Dv SIGHUP
2144eb3dd62Sjmcsignal, or an
2154eb3dd62Sjmc.Sq R
2164eb3dd62Sjmcis sent to the FIFO interface (see
2174d27bb0fSho.Xr isakmpd 8 ) .
21835ff0956Sho.It Em Retransmits
21935ff0956ShoHow many times should a message be retransmitted before giving up.
22035ff0956Sho.It Em Shared-SADB
22135ff0956ShoIf this tag is defined, whatever the value is, some semantics of
22235ff0956Sho.Nm
22335ff0956Shoare changed so that multiple instances can run on top of one SADB
22435ff0956Shoand set up SAs with each other.
22535ff0956ShoSpecifically this means replay
22635ff0956Shoprotection will not be asked for, and errors that can occur when
22735ff0956Shoupdating an SA with its parameters a 2nd time will be ignored.
228c5fe6c4eSniklas.El
229c5fe6c4eSniklas.It Em Phase 1
230c5fe6c4eSniklasISAKMP SA negotiation parameter root
231c5fe6c4eSniklas.Bl -tag -width 12n
232c5fe6c4eSniklas.It Em <IP-address>
2339615e1d4SaaronA name of the ISAKMP peer at the given IP-address.
234cc3c8b42Sniklas.It Em Default
235ac1aa35bSmpechA name of the default ISAKMP peer.
23635ff0956ShoIncoming phase 1 connections from other IP-addresses will use this peer name.
237cc3c8b42Sniklas.It ""
2389615e1d4SaaronThis name is used as the section name for further information to be found.
2399615e1d4SaaronLook at <ISAKMP-peer> below.
240c5fe6c4eSniklas.El
241c5fe6c4eSniklas.It Em Phase 2
242c5fe6c4eSniklasIPsec SA negotiation parameter root
243c5fe6c4eSniklas.Bl -tag -width 12n
244c5fe6c4eSniklas.It Em Connections
24561d575f0SangelosA list of directed IPsec "connection" names that should be brought up
2462ddc24cbSniklasautomatically, either on first use if the system supports it, or at
2479615e1d4Saaronstartup of the daemon.
2489615e1d4SaaronThese names are section names where further information can be found.
24961d575f0SangelosLook at <IPsec-connection> below.
25044143af3SderaadtNormally any connections mentioned here are treated as part of the
25180baf197Sniklas"Passive-connection" list we present below, however there is a
2529615e1d4Saaronflag: "Active-only" that disables this behaviour.
25361d575f0SangelosThis too is mentioned in the <IPsec-connection> section, in the "Flags" tag.
25480baf197Sniklas.It Em Passive-connections
25561d575f0SangelosA list of IPsec "connection" names we recognize and accept initiations for.
2569615e1d4SaaronThese names are section names where further information can be found.
25761d575f0SangelosLook at <IPsec-connection> below.
2589615e1d4SaaronCurrently only the Local-ID and Remote-ID tags
25980baf197Sniklasare looked at in those sections, as they are matched against the IDs given
26080baf197Sniklasby the initiator.
261c5fe6c4eSniklas.El
262b57b191eSniklas.It Em KeyNote
263b57b191eSniklas.Bl -tag -width 12n
264b57b191eSniklas.It Em Credential-directory
265b57b191eSniklasA directory containing directories named after IDs (IP
2664eb3dd62Sjmcaddresses,
2674eb3dd62Sjmc.Dq user@domain ,
2684eb3dd62Sjmcor hostnames) that contain files named
2694eb3dd62Sjmc.Dq credentials
2704eb3dd62Sjmcand
2714eb3dd62Sjmc.Dq private_key .
272b57b191eSniklas.Pp
273b57b191eSniklasThe credentials file contains
274b57b191eSniklas.Xr keynote 4
275b57b191eSniklascredentials that are sent to a remote IKE daemon when we use the
276b57b191eSniklasassociated ID, or credentials that we may want to consider when doing
277ac1aa35bSmpechan exchange with a remote IKE daemon that uses that ID.
278ac1aa35bSmpechNote that, in the former case, the last credential in the file
279ac1aa35bSmpechMUST contain our public key in its Licensees field.
280ac1aa35bSmpechMore than one credentials may exist in the file.
281ac1aa35bSmpechThey are separated by whitelines (the format is essentially the same as
282ac1aa35bSmpechthat of the policy file).
283ac1aa35bSmpechThe credentials are of the same format as the policies described in
284b57b191eSniklas.Xr isakmpd.policy 5 .
285b57b191eSniklasThe only difference is that the Authorizer field contains a public
286ac1aa35bSmpechkey, and the assertion is signed.
287ac1aa35bSmpechSigned assertions can be generated using the
288b57b191eSniklas.Xr keynote 1
289b57b191eSniklasutility.
290b57b191eSniklas.Pp
291b57b191eSniklasThe private_key file contains the private RSA key we use for
292ac1aa35bSmpechauthentication.
293ac1aa35bSmpechIf the directory (and the files) exist, they take precedence over X509-based
294ac1aa35bSmpechauthentication.
295b57b191eSniklas.El
296fb1921ccSniklas.It Em X509-Certificates
297fb1921ccSniklas.Bl -tag -width 12n
29835ff0956Sho.It Em Accept-self-signed
29935ff0956ShoIf this tag is defined, whatever the value is, certificates that
30035ff0956Shodo not originate from a trusted CA but are self-signed will be
30135ff0956Shoaccepted.
302fb1921ccSniklas.It Em Ca-directory
303fb1921ccSniklasA directory containing PEM certificates of certification authorities
304ac1aa35bSmpechthat we trust to sign other certificates.
305ac1aa35bSmpechNote that for a CA to be really trusted, it needs to be somehow
306ac1aa35bSmpechreferred to by policy, in
307e5814869Sangelos.Xr isakmpd.policy 5 .
308e5814869SangelosThe certificates in this directory are used for the actual X.509
309e5814869Sangelosauthentication and for cross-referencing policies that refer to
310ac1aa35bSmpechDistinguished Names (DNs).
311ac1aa35bSmpechKeeping a separate directory (as opposed to integrating policies
312ac1aa35bSmpechand X.509 CA certificates) allows for maintenance of a list of
313ac1aa35bSmpech"well known" CAs without actually having to trust all (or any) of them.
314fb1921ccSniklas.It Em Cert-directory
315fb1921ccSniklasA directory containing PEM certificates that we trust to be valid.
316fb1921ccSniklasThese certificates are used in preference to those passed in messages and
3170e2d4717Skjellare required to have a subjectAltName extension containing the certificate
3180e2d4717Skjellholder identity; usually IP address, FQDN, or User FQDN, as provided by
3190e2d4717Skjell.Xr certpatch 8 .
320954b1b31Sniklas.It Em Private-key
321954b1b31SniklasThe private key matching the public key of our certificate (which should be
3220e2d4717Skjellin the "Cert-directory", and have an appropriate subjectAltName field).
323fb1921ccSniklas.El
324c5fe6c4eSniklas.El
325c5fe6c4eSniklas.Ss Referred-to sections
326c5fe6c4eSniklas.Bl -hang -width 12n
327c5fe6c4eSniklas.It Em <ISAKMP-peer>
328c5fe6c4eSniklasParameters for negotiation with an ISAKMP peer
329c5fe6c4eSniklas.Bl -tag -width 12n
330c5fe6c4eSniklas.It Em Phase
331c5fe6c4eSniklasThe constant
332c5fe6c4eSniklas.Li 1 ,
33361d575f0Sangelosas ISAKMP-peers and IPsec-connections
334c5fe6c4eSniklasreally are handled by the same code inside isakmpd.
335c5fe6c4eSniklas.It Em Transport
336cc3c8b42SniklasThe name of the transport protocol, defaults to
337cc3c8b42Sniklas.Li UDP .
338cc3c8b42Sniklas.It Em Port
339cc3c8b42SniklasIn case of
340cc3c8b42Sniklas.Li UDP ,
341cc3c8b42Sniklasthe
342cc3c8b42Sniklas.Li UDP
343cc3c8b42Sniklasport number to send to.
344cc3c8b42SniklasThis is optional, the
345cc3c8b42Sniklasdefault value is 500 which is the IANA-registered number for ISAKMP.
346a2067f52Sniklas.It Em Local-address
347e2220ba8SniklasThe Local IP-address to use, if we are multi-homed, or have aliases.
348c5fe6c4eSniklas.It Em Address
349cc3c8b42SniklasIf existent, the IP-address of the peer.
350c5fe6c4eSniklas.It Em Configuration
3519615e1d4SaaronThe name of the ISAKMP-configuration section to use.
3529615e1d4SaaronLook at <ISAKMP-configuration> below.
35335ff0956ShoIf unspecified, defaults to "Default-phase-1-configuration".
354c5fe6c4eSniklas.It Em Authentication
355cc3c8b42SniklasIf existent, authentication data for this specific peer.
3569615e1d4SaaronIn the case of preshared key, this is the key value itself.
3576a8478f3Sniklas.It Em ID
3586a8478f3SniklasIf existent, the name of the section that describes the
3594aac73a4Saaronlocal client ID that we should present to our peer.
3604aac73a4SaaronIf not present, it
3616a8478f3Sniklasdefaults to the address of the local interface we are sending packets
3624aac73a4Saaronover to the remote daemon.
3634aac73a4SaaronLook at <Phase1-ID> below.
364a2067f52Sniklas.It Em Remote-ID
365a2067f52SniklasIf existent, the name of the section that describes the remote client
366a2067f52SniklasID we expect the remote daemon to send us.
367a2067f52SniklasIf not present, it defaults to the address of the remote daemon.
368a2067f52SniklasLook at <Phase1-ID> below.
3692ddc24cbSniklas.It Em Flags
3702ddc24cbSniklasA comma-separated list of flags controlling the further
3719615e1d4Saaronhandling of the ISAKMP SA.
3729615e1d4SaaronCurrently there are no specific ISAKMP SA flags defined.
373c5fe6c4eSniklas.El
3746a8478f3Sniklas.It Em <Phase1-ID>
3756a8478f3Sniklas.Bl -tag -width 12n
3766a8478f3Sniklas.It Em ID-type
377d8ca7c44ShoThe ID type as given by the RFC specifications.
37835ff0956ShoFor phase 1 this is currently
3796a8478f3Sniklas.Li IPV4_ADDR ,
3806a8478f3Sniklas.Li IPV4_ADDR_SUBNET ,
381d8ca7c44Sho.Li IPV6_ADDR ,
382d8ca7c44Sho.Li IPV6_ADDR_SUBNET ,
3836a8478f3Sniklas.Li FQDN ,
384d8ca7c44Sho.Li USER_FQDN
3856a8478f3Sniklasor
3865bc978dfSangelos.Li KEY_ID .
3876a8478f3Sniklas.It Em Address
3886a8478f3SniklasIf the ID-type is
389d8ca7c44Sho.Li IPV4_ADDR
390d8ca7c44Shoor
391d8ca7c44Sho.Li IPV6_ADDR ,
3926a8478f3Sniklasthis tag should exist and be an IP-address.
3936a8478f3Sniklas.It Em Network
3946a8478f3SniklasIf the ID-type is
3956a8478f3Sniklas.Li IPV4_ADDR_SUBNET
396d8ca7c44Shoor
397d8ca7c44Sho.Li IPV6_ADDR_SUBNET
3986a8478f3Sniklasthis tag should exist and
3996a8478f3Sniklasbe a network address.
4006a8478f3Sniklas.It Em Netmask
4016a8478f3SniklasIf the ID-type is
4026a8478f3Sniklas.Li IPV4_ADDR_SUBNET
403d8ca7c44Shoor
404d8ca7c44Sho.Li IPV6_ADDR_SUBNET
4056a8478f3Sniklasthis tag should exist and
4066a8478f3Sniklasbe a network subnet mask.
4076a8478f3Sniklas.It Em Name
4086a8478f3SniklasIf the ID-type is
4095bc978dfSangelos.Li FQDN ,
410d8ca7c44Sho.Li USER_FQDN
4115bc978dfSangelosor
4125bc978dfSangelos.Li KEY_ID ,
4135bc978dfSangelosthis tag should exist and contain a domain name, user@domain, or
4145bc978dfSangelosother identifying string respectively.
4153f167ca4Sangelos.Pp
4163f167ca4SangelosIn the case of
4173f167ca4Sangelos.Li KEY_ID ,
4183f167ca4Sangelosnote that the IKE protocol allows any octet sequence to be sent or
4193f167ca4Sangelosreceived under this payload, potentially including non-printable
4203f167ca4Sangelosones.
4211215c700Sjmc.Xr isakmpd 8
4223f167ca4Sangeloscan only transmit printable
4233f167ca4Sangelos.Li KEY_ID
4243f167ca4Sangelospayloads, but can receive and process arbitrary
4253f167ca4Sangelos.Li KEY_ID
4263f167ca4Sangelospayloads.
4273f167ca4SangelosThis effectively means that non-printable
4283f167ca4Sangelos.Li KEY_ID
4293f167ca4Sangelosremote identities cannot be verified through this means, although it
4303f167ca4Sangelosis still possible to do so through
4313f167ca4Sangelos.Xr isakmpd.policy 5 .
4326a8478f3Sniklas.El
433c5fe6c4eSniklas.It Em <ISAKMP-configuration>
434c5fe6c4eSniklas.Bl -tag -width 12n
435c5fe6c4eSniklas.It Em DOI
4369615e1d4SaaronThe domain of interpretation as given by the RFCs.
4379615e1d4SaaronNormally
438c5fe6c4eSniklas.Li IPSEC .
439b57b191eSniklasIf unspecified, defaults to
440b57b191eSniklas.Li IPSEC .
441c5fe6c4eSniklas.It Em EXCHANGE_TYPE
4429615e1d4SaaronThe exchange type as given by the RFCs.
4439615e1d4SaaronFor main mode this is
4449f078bd8Sniklas.Li ID_PROT
4459f078bd8Sniklasand for aggressive mode it is
4469f078bd8Sniklas.Li AGGRESSIVE .
447c5fe6c4eSniklas.It Em Transforms
448c5fe6c4eSniklasA list of proposed transforms to use for protecting the
4499615e1d4SaaronISAKMP traffic.
4509615e1d4SaaronThese are actually names for sections
4519615e1d4Saaronfurther describing the transforms.
4529615e1d4SaaronLook at <ISAKMP-transform> below.
453c5fe6c4eSniklas.El
454c5fe6c4eSniklas.It Em <ISAKMP-transform>
455c5fe6c4eSniklas.Bl -tag -width 12n
456c5fe6c4eSniklas.It Em ENCRYPTION_ALGORITHM
457850f7173SniklasThe encryption algorithm as the RFCs name it, or ANY to denote that any
458850f7173Sniklasencryption algorithm proposed will be accepted.
459c5fe6c4eSniklas.It Em KEY_LENGTH
460c5fe6c4eSniklasFor encryption algorithms with variable key length, this is
4619615e1d4Saaronwhere the offered/accepted keylengths are described.
4629615e1d4SaaronThe value is of the offer-accept kind described above.
463c5fe6c4eSniklas.It Em HASH_ALGORITHM
464850f7173SniklasThe hash algorithm as the RFCs name it, or ANY.
465c5fe6c4eSniklas.It Em AUTHENTICATION_METHOD
466850f7173SniklasThe authentication method as the RFCs name it, or ANY.
467c5fe6c4eSniklas.It Em GROUP_DESCRIPTION
4689615e1d4SaaronThe group used for Diffie-Hellman exponentiations, or ANY.
46944143af3SderaadtThe names are symbolic, like
470c5fe6c4eSniklas.Li MODP_768 , MODP_1024 , EC_155
471c5fe6c4eSniklasand
472c5fe6c4eSniklas.Li EC_185 .
473850f7173Sniklas.It Em PRF
474850f7173SniklasThe algorithm to use for the keyed pseudo-random function (used for key
47535ff0956Shoderivation and authentication in phase 1), or ANY.
476c5fe6c4eSniklas.It Em Life
4774aac73a4SaaronA list of lifetime descriptions, or ANY.
4784aac73a4SaaronIn the former case, each
479850f7173Sniklaselement is in itself a name of the section that defines the lifetime.
4804aac73a4SaaronLook at <Lifetime> below.
4814aac73a4SaaronIf it is set to ANY, then any type of
482850f7173Sniklasproposed lifetime type and value will be accepted.
483c5fe6c4eSniklas.El
484c5fe6c4eSniklas.It Em <Lifetime>
485c5fe6c4eSniklas.Bl -tag -width 12n
486c5fe6c4eSniklas.It Em LIFE_TYPE
487c5fe6c4eSniklas.Li SECONDS
488c5fe6c4eSniklasor
489e55ca143Sniklas.Li KILOBYTES
4904aac73a4Saarondepending on the type of the duration.
4914aac73a4SaaronNotice that this field may NOT be set to ANY.
492c5fe6c4eSniklas.It Em LIFE_DURATION
4934aac73a4SaaronAn offer/accept kind of value, see above.
4944aac73a4SaaronCan also be set to ANY.
495c5fe6c4eSniklas.El
49661d575f0Sangelos.It Em <IPsec-connection>
497c5fe6c4eSniklas.Bl -tag -width 12n
498c5fe6c4eSniklas.It Em Phase
499c5fe6c4eSniklasThe constant
500c5fe6c4eSniklas.Li 2 ,
50161d575f0Sangelosas ISAKMP-peers and IPsec-connections
502c5fe6c4eSniklasreally are handled by the same code inside isakmpd.
503c5fe6c4eSniklas.It Em ISAKMP-peer
504c5fe6c4eSniklasThe name of the ISAKMP-peer which to talk to in order to
5059615e1d4Saaronset up this connection.
5069615e1d4SaaronThe value is the name of an <ISAKMP-peer> section.
5079615e1d4SaaronSee above.
508c5fe6c4eSniklas.It Em Configuration
50961d575f0SangelosThe name of the IPsec-configuration section to use.
51061d575f0SangelosLook at <IPsec-configuration> below.
511c5fe6c4eSniklas.It Em Local-ID
512c5fe6c4eSniklasIf existent, the name of the section that describes the
513c5fe6c4eSniklasoptional local client ID that we should present to our peer.
51480baf197SniklasIt is also used when we act as responders to find out what
51561d575f0Sangelos<IPsec-connection> we are dealing with.
51661d575f0SangelosLook at <IPsec-ID> below.
517c5fe6c4eSniklas.It Em Remote-ID
518c5fe6c4eSniklasIf existent, the name of the section that describes the
519c5fe6c4eSniklasoptional remote client ID that we should present to our peer.
52080baf197SniklasIt is also used when we act as responders to find out what
52161d575f0Sangelos<IPsec-connection> we are dealing with.
52261d575f0SangelosLook at <IPsec-ID> below.
52313a99464Sniklas.It Em Flags
52413a99464SniklasA comma-separated list of flags controlling the further
52561d575f0Sangeloshandling of the IPsec SA.
5269615e1d4SaaronCurrently only one flag is defined:
52780baf197Sniklas.Bl -tag -width 12n
52880baf197Sniklas.It Em Active-only
52961d575f0SangelosIf this flag is given and this <IPsec-connection> is part of the phase 2
53080baf197Sniklasconnections we automatically keep up, it will not automatically be used for
53180baf197Sniklasaccepting connections from the peer.
53280baf197Sniklas.El
533c5fe6c4eSniklas.El
53461d575f0Sangelos.It Em <IPsec-configuration>
535c5fe6c4eSniklas.Bl -tag -width 12n
536c5fe6c4eSniklas.It Em DOI
5379615e1d4SaaronThe domain of interpretation as given by the RFCs.
5389615e1d4SaaronNormally
539c5fe6c4eSniklas.Li IPSEC .
540b57b191eSniklasIf unspecified, defaults to
541b57b191eSniklas.Li IPSEC .
542c5fe6c4eSniklas.It Em EXCHANGE_TYPE
5439615e1d4SaaronThe exchange type as given by the RFCs.
5449615e1d4SaaronFor quick mode this is
545c5fe6c4eSniklas.Li QUICK_MODE .
546c5fe6c4eSniklas.It Em Suites
5473b2a0cf1SaaronA list of protection suites (bundles of protocols) usable for
5489615e1d4Saaronprotecting the IP traffic.
54961d575f0SangelosEach of the list elements is a name of an <IPsec-suite> section.
5509615e1d4SaaronSee below.
551c5fe6c4eSniklas.El
55261d575f0Sangelos.It Em <IPsec-suite>
553c5fe6c4eSniklas.Bl -tag -width 12n
554c5fe6c4eSniklas.It Em Protocols
555c5fe6c4eSniklasA list of the protocols included in this protection suite.
55661d575f0SangelosEach of the list elements is a name of an <IPsec-protocol>
5579615e1d4Saaronsection.
5589615e1d4SaaronSee below.
559c5fe6c4eSniklas.El
56061d575f0Sangelos.It Em <IPsec-protocol>
561c5fe6c4eSniklas.Bl -tag -width 12n
562c5fe6c4eSniklas.It Em PROTOCOL_ID
5639615e1d4SaaronThe protocol as given by the RFCs.
5649615e1d4SaaronAcceptable values today are
565c5fe6c4eSniklas.Li IPSEC_AH
566c5fe6c4eSniklasand
567c5fe6c4eSniklas.Li IPSEC_ESP .
568c5fe6c4eSniklas.It Em Transforms
5693b2a0cf1SaaronA list of transforms usable for implementing the protocol.
57061d575f0SangelosEach of the list elements is a name of an <IPsec-transform>
5719615e1d4Saaronsection.
5729615e1d4SaaronSee below.
573c5fe6c4eSniklas.It Em ReplayWindow
5749615e1d4SaaronThe size of the window used for replay protection.
5759615e1d4SaaronThis is normally left alone.
5769615e1d4SaaronLook at the
577c5fe6c4eSniklas.Nm ESP
578c5fe6c4eSniklasand
579c5fe6c4eSniklas.Nm AH
580c5fe6c4eSniklasRFCs for a better description.
581c5fe6c4eSniklas.El
58261d575f0Sangelos.It Em <IPsec-transform>
583c5fe6c4eSniklas.Bl -tag -width 12n
584c5fe6c4eSniklas.It Em TRANSFORM_ID
585c5fe6c4eSniklasThe transform ID as given by the RFCs.
586c5fe6c4eSniklas.It Em ENCAPSULATION_MODE
5879615e1d4SaaronThe encapsulation mode as given by the RFCs.
5889615e1d4SaaronThis means TRANSPORT or TUNNEL.
589c5fe6c4eSniklas.It Em AUTHENTICATION_ALGORITHM
590c5fe6c4eSniklasThe optional authentication algorithm in the case of this
591c5fe6c4eSniklasbeing an ESP transform.
592c5fe6c4eSniklas.It Em GROUP_DESCRIPTION
593c5fe6c4eSniklasAn optional (provides PFS if present) Diffie-Hellman group
5949615e1d4Saarondescription.
5959615e1d4SaaronThe values are the same as GROUP_DESCRIPTION's
596c5fe6c4eSniklasin <ISAKMP-transform> sections shown above.
597c5fe6c4eSniklas.It Em Life
598c5fe6c4eSniklasList of lifetimes, each element is a <Lifetime> section name.
599c5fe6c4eSniklas.El
60061d575f0Sangelos.It Em <IPsec-ID>
601c5fe6c4eSniklas.Bl -tag -width 12n
602c5fe6c4eSniklas.It Em ID-type
6039615e1d4SaaronThe ID type as given by the RFCs.
60461d575f0SangelosFor IPsec this is currently
605d8ca7c44Sho.Li IPV4_ADDR ,
606d8ca7c44Sho.Li IPV6_ADDR ,
607d8ca7c44Sho.Li IPV4_ADDR_SUBNET
608c5fe6c4eSniklasor
609d8ca7c44Sho.Li IPV6_ADDR_SUBNET .
610c5fe6c4eSniklas.It Em Address
611c5fe6c4eSniklasIf the ID-type is
612d8ca7c44Sho.Li IPV4_ADDR
613d8ca7c44Shoor
614d8ca7c44Sho.Li IPV6_ADDR
615c5fe6c4eSniklasthis tag should exist and be an IP-address.
616c5fe6c4eSniklas.It Em Network
617c5fe6c4eSniklasIf the ID-type is
618c5fe6c4eSniklas.Li IPV4_ADDR_SUBNET
619d8ca7c44Shoor
620d8ca7c44Sho.Li IPV6_ADDR_SUBNET
621c5fe6c4eSniklasthis tag should exist and
622c5fe6c4eSniklasbe a network address.
623c5fe6c4eSniklas.It Em Netmask
624c5fe6c4eSniklasIf the ID-type is
625c5fe6c4eSniklas.Li IPV4_ADDR_SUBNET
626d8ca7c44Shoor
627d8ca7c44Sho.Li IPV6_ADDR_SUBNET
628c5fe6c4eSniklasthis tag should exist and
629c5fe6c4eSniklasbe a network subnet mask.
6300378d1f2Sniklas.It Em Protocol
6310378d1f2SniklasIf the ID-type is
632d8ca7c44Sho.Li IPV4_ADDR ,
6330378d1f2Sniklas.Li IPV4_ADDR_SUBNET ,
634d8ca7c44Sho.Li IPV6_ADDR
635d8ca7c44Shoor
636d8ca7c44Sho.Li IPV6_ADDR_SUBNET
6370378d1f2Sniklasthis tag indicates what transport protocol should be transmitted over
6380378d1f2Sniklasthe SA.
6390378d1f2SniklasIf left unspecified, all transport protocols between the two address
6400378d1f2Sniklas(ranges) will be sent (or permitted) over that SA.
6410378d1f2Sniklas.It Em Port
6420378d1f2SniklasIf the ID-type is
643d8ca7c44Sho.Li IPV4_ADDR ,
6440378d1f2Sniklas.Li IPV4_ADDR_SUBNET ,
645d8ca7c44Sho.Li IPV6_ADDR
646d8ca7c44Shoor
647d8ca7c44Sho.Li IPV6_ADDR_SUBNET
6480378d1f2Sniklasthis tag indicates what source or destination port is allowed to be
6490378d1f2Sniklastransported over the SA (depending on whether this is a local or
6500378d1f2Sniklasremote ID).
6510378d1f2SniklasIf left unspecified, all ports of the given transport protocol
6520378d1f2Sniklaswill be transmitted (or permitted) over the SA.
6530378d1f2SniklasThe Protocol tag must be specified in conjunction with this tag.
654c5fe6c4eSniklas.El
655c5fe6c4eSniklas.El
6564ca71560Sho.Ss Other sections
6574ca71560Sho.Bl -hang -width 12n
6584ca71560Sho.It Em <IKECFG-ID>
6594eb3dd62SjmcParameters to use with IKE mode-config.
6604eb3dd62SjmcOne ID per peer.
6614ca71560Sho.Pp
6624ca71560ShoAn IKECFG-ID is written as [<ID-type>/<name>].
6634ca71560ShoThe following ID types are supported:
6644ca71560Sho.Bl -tag -width 12n
6654ca71560Sho.It IPv4
6664ca71560Sho[ipv4/A.B.C.D]
6674ca71560Sho.It IPv6
6684ca71560Sho[ipv6/abcd:abcd::ab:cd]
6694ca71560Sho.It FQDN
6704ca71560Sho[fqdn/foo.bar.org]
6714ca71560Sho.It UFQDN
6724ca71560Sho[ufqdn/user@foo.bar.org]
6734ca71560Sho.It ASN1_DN
6744ca71560Sho[asn1_dn//C=aa/O=cc/...] (Note the double slashes as the DN itself
6754eb3dd62Sjmcstarts with a
6764eb3dd62Sjmc.Sq / . )
6774ca71560Sho.El
6784ca71560Sho.Pp
6794ca71560ShoEach section specifies what configuration values to return to the peer
6804eb3dd62Sjmcrequesting IKE mode-config.
6814eb3dd62SjmcCurrently supported values are:
6824ca71560Sho.Bl -tag -width 12n
6834ca71560Sho.It Em Address
6844ca71560ShoThe peer's network address.
6854ca71560Sho.It Em Netmask
6864ca71560ShoThe peer's netmask.
6874ca71560Sho.It Em Nameserver
6884ca71560ShoThe IP address of a DNS nameserver.
6894ca71560Sho.It Em WINS-server
6904ca71560ShoThe IP address of a WINS server.
6914ca71560Sho.El
692106cbd59Smarkus.It Em <Initiator-ID>
693106cbd59Smarkus.Pp
694106cbd59SmarkusDuring phase 1 negotiation
695106cbd59Smarkus.Nm isakmpd
696106cbd59Smarkuslooks for a pre-shared key in the <ISAKMP-peer> section.
697106cbd59SmarkusIf no Authentication data is specified in that section, and
698106cbd59Smarkus.Nm isakmpd
699106cbd59Smarkusis not the initiator, it looks for Authentication data in a section named after
700106cbd59Smarkusthe initiator's phase 1 ID.
701106cbd59SmarkusThis allows mobile users with dynamic IP addresses
702106cbd59Smarkusto have different shared secrets.
703106cbd59Smarkus.Pp
704106cbd59SmarkusThis only works for aggressive mode because in main mode the remote
705106cbd59Smarkusinitiator ID would not yet be known.
706106cbd59Smarkus.Pp
707106cbd59SmarkusThe name of the <Initiator-ID> section depends on the ID type sent by
708106cbd59Smarkusthe initiator.
709106cbd59SmarkusCurrently this can be:
710106cbd59Smarkus.Bl -tag -width 12n
711106cbd59Smarkus.It IPv4
712106cbd59Smarkus[A.B.C.D]
713106cbd59Smarkus.It IPv6
714106cbd59Smarkus[abcd:abcd::ab:cd]
715106cbd59Smarkus.It FQDN
716106cbd59Smarkus[foo.bar.org]
717106cbd59Smarkus.It UFQDN
718106cbd59Smarkus[user@foo.bar.org]
719106cbd59Smarkus.El
7204ca71560Sho.El
7212b65e200Sjmc.Sh FILES
7222b65e200Sjmc.Bl -tag -width /etc/isakmpd/isakmpd.conf
7232b65e200Sjmc.It Pa /etc/isakmpd/isakmpd.conf
7242b65e200SjmcThe default
7252b65e200Sjmc.Nm isakmpd
7262b65e200Sjmcconfiguration file.
7272b65e200Sjmc.It Pa /usr/share/ipsec/isakmpd/
7282b65e200SjmcA directory containing some sample
7292b65e200Sjmc.Nm isakmpd
7302b65e200Sjmcconfiguration files.
7312b65e200Sjmc.El
73200b2ba71Saaron.Sh EXAMPLES
7332040585eSniklasAn example of a configuration file:
7342040585eSniklas.Bd -literal
7352040585eSniklas# A configuration sample for the isakmpd ISAKMP/Oakley (aka IKE) daemon.
7362040585eSniklas
7372040585eSniklas[General]
738c5fe6c4eSniklasListen-on=		10.1.0.2
7392040585eSniklas
740c5fe6c4eSniklas# Incoming phase 1 negotiations are multiplexed on the source IP address
7412b81057dSniklas[Phase 1]
742c5fe6c4eSniklas10.1.0.1=		ISAKMP-peer-west
7432b81057dSniklas
744c5fe6c4eSniklas# These connections are walked over after config file parsing and told
745c5fe6c4eSniklas# to the application layer so that it will inform us when traffic wants to
7464eb3dd62Sjmc# pass over them.
7474eb3dd62SjmcThis means we can do on-demand keying.
748c5fe6c4eSniklas[Phase 2]
749c5fe6c4eSniklasConnections=		IPsec-east-west
750c5fe6c4eSniklas
751cc3c8b42Sniklas# Default values are commented out.
752c5fe6c4eSniklas[ISAKMP-peer-west]
7532b81057dSniklasPhase=			1
754cc3c8b42Sniklas#Transport=		udp
755f6dd85a7SniklasLocal-address=		10.1.0.2
7562b81057dSniklasAddress=		10.1.0.1
7572b81057dSniklas#Port=			isakmp
7582b81057dSniklas#Port=			500
75935ff0956Sho#Configuration=		Default-phase-1-configuration
7602b81057dSniklasAuthentication=		mekmitasdigoat
761cc3c8b42Sniklas#Flags=
7622b81057dSniklas
763c5fe6c4eSniklas[IPsec-east-west]
7642b81057dSniklasPhase=			2
765c5fe6c4eSniklasISAKMP-peer=		ISAKMP-peer-west
7662b81057dSniklasConfiguration=		Default-quick-mode
767c5fe6c4eSniklasLocal-ID=		Net-east
768c5fe6c4eSniklasRemote-ID=		Net-west
769cc3c8b42Sniklas#Flags=
7702b81057dSniklas
771c5fe6c4eSniklas[Net-west]
7722b81057dSniklasID-type=		IPV4_ADDR_SUBNET
7732b81057dSniklasNetwork=		192.168.1.0
7742b81057dSniklasNetmask=		255.255.255.0
7752b81057dSniklas
776c5fe6c4eSniklas[Net-east]
7772b81057dSniklasID-type=		IPV4_ADDR_SUBNET
7782b81057dSniklasNetwork=		192.168.2.0
7792b81057dSniklasNetmask=		255.255.255.0
7802b81057dSniklas
78152e712aeSniklas# Quick mode descriptions
78252e712aeSniklas
78352e712aeSniklas[Default-quick-mode]
78452e712aeSniklasEXCHANGE_TYPE=		QUICK_MODE
7851a87c1a3ShoSuites=			QM-ESP-3DES-SHA-PFS-SUITE,QM-ESP-AES-SHA-PFS-SUITE
78652e712aeSniklas
7874ca71560Sho# Data for an IKE mode-config peer
7884ca71560Sho[asn1_dn//C=SE/L=SomeCity/O=SomeCompany/CN=SomePeer.company.com]
7894ca71560ShoAddress=		192.168.1.123
7904ca71560ShoNetmask=		255.255.255.0
7914ca71560ShoNameserver=		192.168.1.10
7924ca71560ShoWINS-server=		192.168.1.11
7934ca71560Sho
794106cbd59Smarkus# pre-shared key based on initiator's phase 1 ID
795106cbd59Smarkus[foo.bar.org]
796106cbd59SmarkusAuthentication=		mekmitasdigoat
797106cbd59Smarkus
79852e712aeSniklas#
79952e712aeSniklas# #####################################################################
80044143af3Sderaadt# All configuration data below this point is not required as the example
80152e712aeSniklas# uses the predefined Main Mode transform and Quick Mode suite names.
80252e712aeSniklas# It is included here for completeness.  Note the default values for the
80352e712aeSniklas# [General] and [X509-certificates] sections just below.
80452e712aeSniklas# #####################################################################
80552e712aeSniklas#
80652e712aeSniklas
80752e712aeSniklas[General]
808447a9f3aShoPolicy-file=		/etc/isakmpd/isakmpd.policy
80952e712aeSniklasRetransmits=		3
81052e712aeSniklasExchange-max-time=	120
81152e712aeSniklas
812b57b191eSniklas# KeyNote credential storage
813b57b191eSniklas[KeyNote]
814b57b191eSniklasCredential-directory=	/etc/isakmpd/keynote/
815b57b191eSniklas
816fb1921ccSniklas# Certificates stored in PEM format
817fb1921ccSniklas[X509-certificates]
818fb1921ccSniklasCA-directory=           /etc/isakmpd/ca/
819fb1921ccSniklasCert-directory=         /etc/isakmpd/certs/
8209dbe9fb4ShoCRL-directory=		/etc/isakmpd/crls/
821954b1b31SniklasPrivate-key=		/etc/isakmpd/private/local.key
822fb1921ccSniklas
823419caefeSho# Default phase 1 description (Main Mode)
824419caefeSho
82535ff0956Sho[Default-phase-1-configuration]
826419caefeShoEXCHANGE_TYPE=		ID_PROT
827419caefeShoTransforms=		3DES-SHA
828419caefeSho
8292b81057dSniklas# Main mode transforms
8302b81057dSniklas######################
8312b81057dSniklas
8322b81057dSniklas# DES
8332040585eSniklas
8342040585eSniklas[DES-MD5]
8352040585eSniklasENCRYPTION_ALGORITHM=	DES_CBC
8362040585eSniklasHASH_ALGORITHM=		MD5
8372040585eSniklasAUTHENTICATION_METHOD=	PRE_SHARED
8382039fcadShoGROUP_DESCRIPTION=	MODP_1024
83960f440ccShoLife=			Default-phase-1-lifetime
8402040585eSniklas
8412b81057dSniklas[DES-SHA]
8422b81057dSniklasENCRYPTION_ALGORITHM=	DES_CBC
8432b81057dSniklasHASH_ALGORITHM=		SHA
8442b81057dSniklasAUTHENTICATION_METHOD=	PRE_SHARED
84560f440ccShoGROUP_DESCRIPTION=	MODP_1024
84660f440ccShoLife=			Default-phase-1-lifetime
8472b81057dSniklas
8482b81057dSniklas# 3DES
8492b81057dSniklas
8502b81057dSniklas[3DES-SHA]
8512b81057dSniklasENCRYPTION_ALGORITHM=	3DES_CBC
8522040585eSniklasHASH_ALGORITHM=		SHA
8532040585eSniklasAUTHENTICATION_METHOD=	PRE_SHARED
8542040585eSniklasGROUP_DESCRIPTION=	MODP_1024
85560f440ccShoLife=			Default-phase-1-lifetime
8562b81057dSniklas
8572b81057dSniklas# Blowfish
8582b81057dSniklas
85960f440ccSho[BLF-SHA]
8602b81057dSniklasENCRYPTION_ALGORITHM=	BLOWFISH_CBC
8612b81057dSniklasKEY_LENGTH=		128,96:192
8622b81057dSniklasHASH_ALGORITHM=		SHA
8632b81057dSniklasAUTHENTICATION_METHOD=	PRE_SHARED
8642b81057dSniklasGROUP_DESCRIPTION=	MODP_1024
86560f440ccShoLife=			Default-phase-1-lifetime
8662040585eSniklas
86760f440ccSho# Blowfish, using DH group 4 (non-default)
8682040585eSniklas[BLF-SHA-EC185]
869d70ca5f7SniklasENCRYPTION_ALGORITHM=	BLOWFISH_CBC
8702b81057dSniklasKEY_LENGTH=		128,96:192
8712040585eSniklasHASH_ALGORITHM=		SHA
8722040585eSniklasAUTHENTICATION_METHOD=	PRE_SHARED
8732040585eSniklasGROUP_DESCRIPTION=	EC2N_185
87460f440ccShoLife=			Default-phase-1-lifetime
8752040585eSniklas
8762b81057dSniklas# Quick mode protection suites
8772b81057dSniklas##############################
8782b81057dSniklas
8792b81057dSniklas# DES
8802040585eSniklas
881d70ca5f7Sniklas[QM-ESP-DES-SUITE]
882d70ca5f7SniklasProtocols=		QM-ESP-DES
883d70ca5f7Sniklas
8842b81057dSniklas[QM-ESP-DES-PFS-SUITE]
8852b81057dSniklasProtocols=		QM-ESP-DES-PFS
8862b81057dSniklas
8872040585eSniklas[QM-ESP-DES-MD5-SUITE]
8882040585eSniklasProtocols=		QM-ESP-DES-MD5
8892040585eSniklas
8902b81057dSniklas[QM-ESP-DES-MD5-PFS-SUITE]
8912b81057dSniklasProtocols=		QM-ESP-DES-MD5-PFS
8922040585eSniklas
8932b81057dSniklas[QM-ESP-DES-SHA-SUITE]
8942b81057dSniklasProtocols=		QM-ESP-DES-SHA
8952040585eSniklas
8962b81057dSniklas[QM-ESP-DES-SHA-PFS-SUITE]
8972b81057dSniklasProtocols=		QM-ESP-DES-SHA-PFS
8982040585eSniklas
8992b81057dSniklas# 3DES
9002b81057dSniklas
9012b81057dSniklas[QM-ESP-3DES-SHA-SUITE]
9022b81057dSniklasProtocols=		QM-ESP-3DES-SHA
9032b81057dSniklas
9042b81057dSniklas[QM-ESP-3DES-SHA-PFS-SUITE]
9052b81057dSniklasProtocols=		QM-ESP-3DES-SHA-PFS
9062b81057dSniklas
907bfc24386Sniklas# AES
908bfc24386Sniklas
909bfc24386Sniklas[QM-ESP-AES-SHA-SUITE]
910bfc24386SniklasProtocols=              QM-ESP-AES-SHA
911bfc24386Sniklas
91260f440ccSho[QM-ESP-AES-SHA-PFS-SUITE]
913bfc24386SniklasProtocols=              QM-ESP-AES-SHA-PFS
914bfc24386Sniklas
9152b81057dSniklas# AH
9162b81057dSniklas
9172b81057dSniklas[QM-AH-MD5-SUITE]
9182b81057dSniklasProtocols=		QM-AH-MD5
9192b81057dSniklas
9202b81057dSniklas[QM-AH-MD5-PFS-SUITE]
9212b81057dSniklasProtocols=		QM-AH-MD5-PFS
9222b81057dSniklas
92360f440ccSho# AH + ESP (non-default)
9242040585eSniklas
9252040585eSniklas[QM-AH-MD5-ESP-DES-SUITE]
9262040585eSniklasProtocols=		QM-AH-MD5,QM-ESP-DES
9272040585eSniklas
9282b81057dSniklas[QM-AH-MD5-ESP-DES-MD5-SUITE]
9292b81057dSniklasProtocols=		QM-AH-MD5,QM-ESP-DES-MD5
9302040585eSniklas
9312b81057dSniklas[QM-ESP-DES-MD5-AH-MD5-SUITE]
9322b81057dSniklasProtocols=		QM-ESP-DES-MD5,QM-AH-MD5
9332b81057dSniklas
9342b81057dSniklas# Quick mode protocols
9352b81057dSniklas
9362b81057dSniklas# DES
9372040585eSniklas
9382040585eSniklas[QM-ESP-DES]
9392040585eSniklasPROTOCOL_ID=		IPSEC_ESP
9402040585eSniklasTransforms=		QM-ESP-DES-XF
9412040585eSniklas
9422b81057dSniklas[QM-ESP-DES-MD5]
9432b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9442b81057dSniklasTransforms=		QM-ESP-DES-MD5-XF
9452b81057dSniklas
9462b81057dSniklas[QM-ESP-DES-MD5-PFS]
9472b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9482b81057dSniklasTransforms=		QM-ESP-DES-MD5-PFS-XF
9492b81057dSniklas
9502b81057dSniklas[QM-ESP-DES-SHA]
9512b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9522b81057dSniklasTransforms=		QM-ESP-DES-SHA-XF
9532b81057dSniklas
9542b81057dSniklas# 3DES
9552b81057dSniklas
9562b81057dSniklas[QM-ESP-3DES-SHA]
9572b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9582b81057dSniklasTransforms=		QM-ESP-3DES-SHA-XF
9592b81057dSniklas
9602b81057dSniklas[QM-ESP-3DES-SHA-PFS]
9612b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9622b81057dSniklasTransforms=		QM-ESP-3DES-SHA-PFS-XF
9632b81057dSniklas
9642b81057dSniklas[QM-ESP-3DES-SHA-TRP]
9652b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
9662b81057dSniklasTransforms=		QM-ESP-3DES-SHA-TRP-XF
9672b81057dSniklas
968bfc24386Sniklas# AES
969bfc24386Sniklas
970bfc24386Sniklas[QM-ESP-AES-SHA]
971bfc24386SniklasPROTOCOL_ID=		IPSEC_ESP
972bfc24386SniklasTransforms=		QM-ESP-AES-SHA-XF
973bfc24386Sniklas
974bfc24386Sniklas[QM-ESP-AES-SHA-PFS]
975bfc24386SniklasPROTOCOL_ID=		IPSEC_ESP
976bfc24386SniklasTransforms=		QM-ESP-AES-SHA-PFS-XF
977bfc24386Sniklas
978bfc24386Sniklas[QM-ESP-AES-SHA-TRP]
979bfc24386SniklasPROTOCOL_ID=		IPSEC_ESP
980bfc24386SniklasTransforms=		QM-ESP-AES-SHA-TRP-XF
981bfc24386Sniklas
9822b81057dSniklas# AH MD5
9832b81057dSniklas
9842b81057dSniklas[QM-AH-MD5]
9852b81057dSniklasPROTOCOL_ID=		IPSEC_AH
9862b81057dSniklasTransforms=		QM-AH-MD5-XF
9872b81057dSniklas
9882b81057dSniklas[QM-AH-MD5-PFS]
9892b81057dSniklasPROTOCOL_ID=		IPSEC_AH
9902b81057dSniklasTransforms=		QM-AH-MD5-PFS-XF
9912b81057dSniklas
9922b81057dSniklas# Quick mode transforms
9932b81057dSniklas
9942b81057dSniklas# ESP DES+MD5
9952b81057dSniklas
9962040585eSniklas[QM-ESP-DES-XF]
9972040585eSniklasTRANSFORM_ID=		DES
9982040585eSniklasENCAPSULATION_MODE=	TUNNEL
99960f440ccShoLife=			Default-phase-2-lifetime
10002040585eSniklas
10012b81057dSniklas[QM-ESP-DES-MD5-XF]
10022b81057dSniklasTRANSFORM_ID=		DES
10032b81057dSniklasENCAPSULATION_MODE=	TUNNEL
10042b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_MD5
100560f440ccShoLife=			Default-phase-2-lifetime
10062b81057dSniklas
10072b81057dSniklas[QM-ESP-DES-MD5-PFS-XF]
10082b81057dSniklasTRANSFORM_ID=		DES
10092b81057dSniklasENCAPSULATION_MODE=	TUNNEL
10102039fcadShoGROUP_DESCRIPTION=	MODP_1024
10112b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_MD5
101260f440ccShoLife=			Default-phase-2-lifetime
10132b81057dSniklas
10142b81057dSniklas[QM-ESP-DES-SHA-XF]
10152b81057dSniklasTRANSFORM_ID=		DES
10162b81057dSniklasENCAPSULATION_MODE=	TUNNEL
10172b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
101860f440ccShoLife=			Default-phase-2-lifetime
10192b81057dSniklas
10202b81057dSniklas# 3DES
10212b81057dSniklas
10222b81057dSniklas[QM-ESP-3DES-SHA-XF]
10232b81057dSniklasTRANSFORM_ID=		3DES
10242b81057dSniklasENCAPSULATION_MODE=	TUNNEL
10252b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
102660f440ccShoLife=			Default-phase-2-lifetime
10272b81057dSniklas
10282b81057dSniklas[QM-ESP-3DES-SHA-PFS-XF]
10292b81057dSniklasTRANSFORM_ID=		3DES
10302b81057dSniklasENCAPSULATION_MODE=	TUNNEL
10312b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
10322b81057dSniklasGROUP_DESCRIPTION=	MODP_1024
103360f440ccShoLife=			Default-phase-2-lifetime
10342b81057dSniklas
10352b81057dSniklas[QM-ESP-3DES-SHA-TRP-XF]
10362b81057dSniklasTRANSFORM_ID=		3DES
10372b81057dSniklasENCAPSULATION_MODE=	TRANSPORT
10382b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
103960f440ccShoLife=			Default-phase-2-lifetime
10402b81057dSniklas
1041bfc24386Sniklas# AES
1042bfc24386Sniklas
1043bfc24386Sniklas[QM-ESP-AES-SHA-XF]
1044bfc24386SniklasTRANSFORM_ID=		AES
1045bfc24386SniklasENCAPSULATION_MODE=	TUNNEL
1046bfc24386SniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
104760f440ccShoLife=			Default-phase-2-lifetime
1048bfc24386Sniklas
1049bfc24386Sniklas[QM-ESP-AES-SHA-PFS-XF]
1050bfc24386SniklasTRANSFORM_ID=		AES
1051bfc24386SniklasENCAPSULATION_MODE=	TUNNEL
1052bfc24386SniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
1053bfc24386SniklasGROUP_DESCRIPTION=	MODP_1024
105460f440ccShoLife=			Default-phase-2-lifetime
1055bfc24386Sniklas
1056bfc24386Sniklas[QM-ESP-AES-SHA-TRP-XF]
1057bfc24386SniklasTRANSFORM_ID=		AES
1058bfc24386SniklasENCAPSULATION_MODE=	TRANSPORT
1059bfc24386SniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
106060f440ccShoLife=			Default-phase-2-lifetime
1061bfc24386Sniklas
10622b81057dSniklas# AH
10632b81057dSniklas
10642b81057dSniklas[QM-AH-MD5-XF]
10652b81057dSniklasTRANSFORM_ID=		MD5
10662b81057dSniklasENCAPSULATION_MODE=	TUNNEL
10672b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_MD5
106860f440ccShoLife=			Default-phase-2-lifetime
10692b81057dSniklas
10702b81057dSniklas[QM-AH-MD5-PFS-XF]
10712b81057dSniklasTRANSFORM_ID=		MD5
10722b81057dSniklasENCAPSULATION_MODE=	TUNNEL
10732039fcadShoGROUP_DESCRIPTION=	MODP_1024
107460f440ccShoLife=			Default-phase-2-lifetime
10752b81057dSniklas
107660f440ccSho[Sample-Life-Time]
10772b81057dSniklasLIFE_TYPE=		SECONDS
10782b81057dSniklasLIFE_DURATION=		3600,1800:7200
10792b81057dSniklas
108060f440ccSho[Sample-Life-Volume]
10812b81057dSniklasLIFE_TYPE=		KILOBYTES
10822b81057dSniklasLIFE_DURATION=		1000,768:1536
10832040585eSniklas.Ed
10842040585eSniklas.Sh SEE ALSO
1085b57b191eSniklas.Xr keynote 1 ,
1086dc89b21eSfgsch.Xr ipsec 4 ,
108730a2652aSniklas.Xr keynote 4 ,
108877725688Sniklas.Xr isakmpd.policy 5 ,
1089350bb3b8Salex.Xr isakmpd 8
1090d7401508Sho.Sh BUGS
1091d7401508ShoThe RFCs do not permit differing DH groups in the same proposal for
1092d7401508Shoaggressive and quick mode exchanges.
1093d7401508ShoMixing both PFS and non-PFS suites in a quick mode proposal is not possible,
1094d7401508Shoas PFS implies using a DH group.
1095