xref: /openbsd/sbin/isakmpd/isakmpd.conf.5 (revision ce531476)
1*ce531476Sdlg.\" $OpenBSD: isakmpd.conf.5,v 1.139 2023/08/08 10:31:03 dlg 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.\"
31*ce531476Sdlg.Dd $Mdocdate: August 8 2023 $
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
40e407932bSjmc.Xr isakmpd 8
41ffa2dcb0Sjmcdaemon, managing security association and key management for the
4261d575f0SangelosIPsec layer of the kernel's networking stack.
432040585eSniklas.Pp
44dfb201a9StbThe 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:
48ffa2dcb0Sjmc.Bd -unfilled
49ffa2dcb0Sjmc.Bq Sy 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:
53ffa2dcb0Sjmc.Bd -unfilled
54ffa2dcb0Sjmc.Ar Tag Ns = Ns Ar Value
552040585eSniklas.Ed
561916bc22SsthenThe current line can be extended over multiple lines using a backslash
571916bc22Ssthen.Pq Sq \e .
581916bc22SsthenComments can be put anywhere in the file using a hash mark
591916bc22Ssthen.Pq Sq # ,
601916bc22Ssthenand extend to the end of the current line.
611916bc22SsthenCare should be taken when commenting out multi-line text:
621916bc22Ssthenthe comment remains in effect until the end of the entire current line.
632040585eSniklas.Pp
64c5fe6c4eSniklasOften the right-hand side values consist of other section names.
65c5fe6c4eSniklasThis results in a tree structure.
660e2d4717SkjellSome values are treated as a list of several scalar values.
670e2d4717SkjellSuch lists always use a comma character as the separator.
689615e1d4SaaronSome values are formatted like this: X,Y:Z, which
69c5fe6c4eSniklasis an offer/accept syntax, where X is a value we offer and Y:Z is a range of
70c5fe6c4eSniklasaccepted values, inclusive.
71c5fe6c4eSniklas.Pp
72bad0180eShoTo activate changes to
73bad0180eSho.Nm
74bad0180eShowithout restarting
75ffa2dcb0Sjmc.Xr isakmpd 8 ,
764eb3dd62Sjmcsend a
774eb3dd62Sjmc.Dv SIGHUP
784eb3dd62Sjmcsignal to the daemon process.
79ffa2dcb0Sjmc.Sh AUTO-GENERATED PARTS OF THE CONFIGURATION
800e2d4717SkjellSome predefined section names are recognized by the daemon, avoiding the need
810e2d4717Skjellto fully specify the Main Mode transforms and Quick Mode suites, protocols,
8252e712aeSniklasand transforms.
8352e712aeSniklas.Pp
8452e712aeSniklasFor Main Mode:
853d96a9c1Sschwarze.\" cipher-hash[-group][-RSA_SIG]
86ffa2dcb0Sjmc.Bl -inset -compact
87ffa2dcb0Sjmc.It Xo
88ffa2dcb0Sjmc.Sm off
893d96a9c1Sschwarze.Ar cipher No - Ar hash
903d96a9c1Sschwarze.Op - Ar group
913d96a9c1Sschwarze.Op -RSA_SIG
92ffa2dcb0Sjmc.Sm on
93ffa2dcb0Sjmc.Xc
94ffa2dcb0Sjmc.El
9552e712aeSniklas.Pp
96d9bb20e6Shshoexerwhere:
973d96a9c1Sschwarze.Bl -tag -width "cipher" -offset indent -compact
983d96a9c1Sschwarze.It Ar cipher
990e800071Snaddyis either BLF, 3DES, CAST, AES, AES-128, AES-192 or AES-256
1003d96a9c1Sschwarze.It Ar hash
101d9bb20e6Shshoexeris either MD5, SHA, or SHA2-{256,384,512}
1023d96a9c1Sschwarze.It Ar group
10326c588ccSmpiis either GRP1, GRP2, GRP5, GRP14, GRP15, GRP16, GRP17, GRP18,
10426c588ccSmpiGRP19, GRP20, GRP21, GRP25, GRP26, GRP27, GRP28, GRP29 or GRP30.
105d9bb20e6Shshoexer.El
106d9bb20e6Shshoexer.Pp
10752e712aeSniklasFor Quick Mode:
1083d96a9c1Sschwarze.\" QM-proto[-TRP]-cipher[-hash][-PFS[-group]]-SUITE
109ffa2dcb0Sjmc.Bl -inset -compact
110ffa2dcb0Sjmc.It Xo
111ffa2dcb0Sjmc.Sm off
1123d96a9c1Sschwarze.No QM- Ar proto Op -TRP
1133d96a9c1Sschwarze.No - Ar cipher Op - Ar hash
1143d96a9c1Sschwarze.Op -PFS Op - Ar group
1153d96a9c1Sschwarze.No -SUITE
116ffa2dcb0Sjmc.Sm on
117ffa2dcb0Sjmc.Xc
118ffa2dcb0Sjmc.El
119ffa2dcb0Sjmc.Pp
120ffa2dcb0Sjmcwhere:
1213d96a9c1Sschwarze.Bl -tag -width "cipher" -offset indent -compact
1223d96a9c1Sschwarze.It Ar proto
123ffa2dcb0Sjmcis either ESP or AH
1243d96a9c1Sschwarze.It Ar cipher
1250e800071Snaddyis either 3DES, CAST, BLF, AES, AES-128, AES-192, AES-256, AESCTR,
1265f649d51SnaddyAESCTR-128, AESCTR-192, AESCTR-256,
1277ebc7616SmikebAESGCM-128, AESGCM-192, AESGCM-256, AESGMAC-128, AESGMAC-192, AESGMAC-256
1287ebc7616Smikebor NULL
1293d96a9c1Sschwarze.It Ar hash
130ffa2dcb0Sjmcis either MD5, SHA, RIPEMD, or SHA2-{256,384,512}
1313d96a9c1Sschwarze.It Ar group
13226c588ccSmpiis either GRP1, GRP2, GRP5, GRP14, GRP15, GRP16, GRP17, GRP18,
13326c588ccSmpiGRP19, GRP20, GRP21, GRP25, GRP26, GRP27, GRP28, GRP29 or GRP30.
134ffa2dcb0Sjmc.El
13552e712aeSniklas.Pp
136d9bb20e6ShshoexerFor example, AES-SHA2-256 means: AES encryption, SHA2-256 hash, and
137d9bb20e6Shshoexerauthorization by pre-shared keys.
138d9bb20e6ShshoexerAdding "-RSA_SIG" will enable public key authentication,
139d9bb20e6Shshoexere.g. AES-SHA2-256-RSA_SIG.
1400e2d4717SkjellSimilarly, QM-ESP-3DES-SHA-PFS-SUITE means: ESP protocol, 3DES encryption,
14182184a41SjmcSHA hash, and use Perfect Forward Secrecy.
14252e712aeSniklas.Pp
14326c588ccSmpiUnless explicitly stated with -GRP1, 2, 5, 14, 15, 16, 17, 18, 19, 20, 21,
14426c588ccSmpi25, 26, 27, 28, 29 or 30, transforms and PFS suites use DH group 2.
1454eb3dd62SjmcThere are currently no predefined ESP+AH Quick Mode suites.
14652e712aeSniklas.Pp
1472039fcadShoThe predefinitions include some default values for the special
148419caefeShosections "General", "Keynote", "X509-certificates", and
14935ff0956Sho"Default-phase-1-configuration".
150419caefeShoThese default values are presented in the example below.
15152e712aeSniklas.Pp
15252e712aeSniklasAll autogenerated values can be overridden by manual entries by using the
15352e712aeSniklassame section and tag names in the configuration file.
154b57b191eSniklasIn particular, the default phase 1 (Main or Aggressive Mode) and phase 2
155b57b191eSniklas(Quick Mode) lifetimes can be overridden by these tags under the "General"
156ffa2dcb0Sjmcsection:
157ffa2dcb0Sjmc.Bd -literal -offset indent
158b57b191eSniklas[General]
159b57b191eSniklasDefault-phase-1-lifetime=	3600,60:86400
160b57b191eSniklasDefault-phase-2-lifetime=	1200,60:86400
161b57b191eSniklas.Ed
1622039fcadSho.Pp
1632039fcadShoThe Main Mode lifetime currently defaults to one hour (minimum 60
1644eb3dd62Sjmcseconds, maximum 1 day).
1654eb3dd62SjmcThe Quick Mode lifetime defaults to 20 minutes
1664eb3dd62Sjmc(minimum 60 seconds, maximum 1 day).
16752e712aeSniklas.Pp
168ffa2dcb0SjmcAlso, the default phase 1 ID can be set by creating a
169ffa2dcb0Sjmc.Aq Sy Phase1-ID
1700378d1f2Sniklassection, as shown below, and adding this tag under the "General"
171ffa2dcb0Sjmcsection:
172ffa2dcb0Sjmc.Bd -literal -offset indent
1730378d1f2Sniklas[General]
1740378d1f2SniklasDefault-phase-1-ID=		Phase1-ID-name
1750378d1f2Sniklas
1760378d1f2Sniklas[Phase1-ID-name]
1770378d1f2SniklasID-type=			USER_FQDN
1780378d1f2SniklasName=				foo@bar.com
1790378d1f2Sniklas.Ed
180ffa2dcb0Sjmc.Sh ROOTS
181ffa2dcb0Sjmc.Bl -hang -width 8n
182c00f6aafSjmc.It Bq Sy General
183c5fe6c4eSniklasGeneric global configuration parameters
184ffa2dcb0Sjmc.Bl -tag -width Ds
185e0eef2f9Shshoexer.It Em Acquire-Only
186e0eef2f9ShshoexerIf this tag is defined,
187ffa2dcb0Sjmc.Xr isakmpd 8
188e0eef2f9Shshoexerwill not set up flows automatically.
189e0eef2f9ShshoexerThis is useful when flows are configured with
1909fb8734eSjmc.Xr ipsecctl 8
191e0eef2f9Shshoexeror by other programs like
192e0eef2f9Shshoexer.Xr bgpd 8 .
193e0eef2f9ShshoexerThus
194ffa2dcb0Sjmc.Xr isakmpd 8
195e0eef2f9Shshoexeronly takes care of the SA establishment.
19635ff0956Sho.It Em Check-interval
197e0d722f1ShoThe interval between watchdog checks of connections we want up at all
1981ab51479Sclodertimes, in seconds.
1991ab51479ScloderThe default value is 60 seconds.
200e407932bSjmc.It Em Default-phase-1-ID
201e407932bSjmcOptional default phase 1 ID name.
202e407932bSjmc.It Em Default-phase-1-lifetime
203e407932bSjmcThe default lifetime for autogenerated transforms (phase 1).
204e407932bSjmcIf unspecified, the value 3600,60:86400 is used as the default.
205e407932bSjmc.It Em Default-phase-2-lifetime
206e407932bSjmcThe default lifetime for autogenerated suites (phase 2).
207e407932bSjmcIf unspecified, the value 1200,60:86400 is used as the default.
208e407932bSjmc.It Em Default-phase-2-suites
209e407932bSjmcA list of phase 2 suites that will be used when establishing dynamic
210e407932bSjmcSAs.
211e407932bSjmcIf left unspecified, QM-ESP-3DES-SHA-PFS-SUITE is used as the default.
212e0d722f1Sho.It Em DPD-check-interval
2131ab51479ScloderThe interval between RFC 3706 (Dead Peer Detection) messages, in seconds.
214e0d722f1ShoThe default value is 0 (zero), which means DPD is disabled.
21535ff0956Sho.It Em Exchange-max-time
21635ff0956ShoHow many seconds should an exchange maximally take to set up before we
21735ff0956Shogive up.
21835ff0956Sho.It Em Listen-on
219d39c0235ScloderA list of IP addresses or interface names OK to listen on.
22035ff0956ShoThis list is used as a filter for the set of addresses the interfaces
22135ff0956Shoconfigured provides.
22235ff0956ShoThis means that we won't see if an address given here does not exist
22335ff0956Shoon this host, and thus no error is given for that case.
22489adc933SstspOn multi-homed systems, this parameter can be used to enforce the
22589adc933Sstspuse of particular source IP addresses in packets sent by
22689adc933Sstsp.Xr isakmpd 8 .
2274e2ad344Shshoexer.It Em Loglevel
2284e2ad344ShshoexerA list of the form
2294e2ad344Shshoexer.Ar class Ns = Ns Ar level ,
2304e2ad344Shshoexerwhere both
2314e2ad344Shshoexer.Ar class
2324e2ad344Shshoexerand
2334e2ad344Shshoexer.Ar level
2344e2ad344Shshoexerare numbers.
2354e2ad344ShshoexerThis is similar to the
2364e2ad344Shshoexer.Fl D
2374e2ad344Shshoexercommand line switch of
238ffa2dcb0Sjmc.Xr isakmpd 8 .
2394e2ad344Shshoexer.It Em Logverbose
2404e2ad344ShshoexerIf this tag is defined, whatever the value is, verbose logging is enabled.
2414e2ad344ShshoexerThis is similar to the
2424e2ad344Shshoexer.Fl v
243235cbc01Sjmccommand line switch of
244ffa2dcb0Sjmc.Xr isakmpd 8 .
2450b2bcfccSho.It Em NAT-T-Keepalive
2460b2bcfccShoThe number of seconds between NAT-T keepalive messages, sent by the
247d4c8cd14Sjmcpeer behind NAT to keep the mapping active.
248d4c8cd14SjmcDefaults to 20.
249447a9f3aSho.It Em Policy-file
25080c8b3dbSniklasThe name of the file that contains
2511215c700Sjmc.Xr keynote 4
2524aac73a4Saaronpolicies.
253ffa2dcb0SjmcThe default is
254ffa2dcb0Sjmc.Pa /etc/isakmpd/isakmpd.policy .
2550b880a72Sho.It Em Pubkey-directory
2560b880a72ShoThe directory in which
2570b880a72Sho.Nm
258ac1aa35bSmpechlooks for explicitly trusted public keys.
259ffa2dcb0SjmcThe default is
260ffa2dcb0Sjmc.Pa /etc/isakmpd/pubkeys .
261ac1aa35bSmpechRead
2620b880a72Sho.Xr isakmpd 8
2630b880a72Shofor the required naming convention of the files in here.
2644d27bb0fSho.It Em Renegotiate-on-HUP
2654d27bb0fShoIf this tag is defined, whatever the value is,
266ffa2dcb0Sjmc.Xr isakmpd 8
2674eb3dd62Sjmcwill renegotiate all current phase 2 SAs when the daemon receives a
2684eb3dd62Sjmc.Dv SIGHUP
2694eb3dd62Sjmcsignal, or an
2704eb3dd62Sjmc.Sq R
2714eb3dd62Sjmcis sent to the FIFO interface (see
2724d27bb0fSho.Xr isakmpd 8 ) .
27335ff0956Sho.It Em Retransmits
27435ff0956ShoHow many times should a message be retransmitted before giving up.
27535ff0956Sho.It Em Shared-SADB
27635ff0956ShoIf this tag is defined, whatever the value is, some semantics of
27735ff0956Sho.Nm
27835ff0956Shoare changed so that multiple instances can run on top of one SADB
27935ff0956Shoand set up SAs with each other.
28035ff0956ShoSpecifically this means replay
28135ff0956Shoprotection will not be asked for, and errors that can occur when
28235ff0956Shoupdating an SA with its parameters a 2nd time will be ignored.
283e0eef2f9Shshoexer.It Em Use-Keynote
284e0eef2f9ShshoexerThis tag controls the use of
285e0eef2f9Shshoexer.Xr keynote 4
286e0eef2f9Shshoexerpolicy checking.
287e0eef2f9ShshoexerThe default value is
288e0eef2f9Shshoexer.Qq yes ,
289e0eef2f9Shshoexerwhich enables the policy checking.
290e0eef2f9ShshoexerWhen set to any other value, policies will not be checked.
2917a9bba63SjmcThis is useful when policies for flows and SA establishment are arranged by
292e0eef2f9Shshoexerother programs like
293937c2feaSderaadt.Xr ipsecctl 8
294e0eef2f9Shshoexeror
295e0eef2f9Shshoexer.Xr bgpd 8 .
296c5fe6c4eSniklas.El
297c00f6aafSjmc.It Bq Sy Phase 1
298c5fe6c4eSniklasISAKMP SA negotiation parameter root
299ffa2dcb0Sjmc.Bl -tag -width Ds
300cc3c8b42Sniklas.It Em Default
301ac1aa35bSmpechA name of the default ISAKMP peer.
302ffa2dcb0SjmcIncoming phase 1 connections from other IP addresses will use this peer name.
3039615e1d4SaaronThis name is used as the section name for further information to be found.
304ffa2dcb0SjmcLook at
305ffa2dcb0Sjmc.Aq Sy ISAKMP-peer
306ffa2dcb0Sjmcbelow.
307e407932bSjmc.It Aq Em IP-address
308e407932bSjmcA name of the ISAKMP peer at the given IP address.
309c5fe6c4eSniklas.El
310c00f6aafSjmc.It Bq Sy Phase 2
311c5fe6c4eSniklasIPsec SA negotiation parameter root
312ffa2dcb0Sjmc.Bl -tag -width Ds
313c5fe6c4eSniklas.It Em Connections
31461d575f0SangelosA list of directed IPsec "connection" names that should be brought up
3152ddc24cbSniklasautomatically, either on first use if the system supports it, or at
3169615e1d4Saaronstartup of the daemon.
3179615e1d4SaaronThese names are section names where further information can be found.
318ffa2dcb0SjmcLook at
319ffa2dcb0Sjmc.Aq Sy IPsec-connection
320ffa2dcb0Sjmcbelow.
32144143af3SderaadtNormally any connections mentioned here are treated as part of the
322ffa2dcb0Sjmc"Passive-connection" list we present below; however there is a flag,
323ffa2dcb0Sjmc.Em Active-only ,
324ffa2dcb0Sjmcthat disables this behaviour.
325ffa2dcb0SjmcThis too is mentioned in the
326ffa2dcb0Sjmc.Aq Sy IPsec-connection
327ffa2dcb0Sjmcsection, in the "Flags" tag.
32880baf197Sniklas.It Em Passive-connections
32961d575f0SangelosA list of IPsec "connection" names we recognize and accept initiations for.
3309615e1d4SaaronThese names are section names where further information can be found.
331ffa2dcb0SjmcLook at
332ffa2dcb0Sjmc.Aq Sy IPsec-connection
333ffa2dcb0Sjmcbelow.
3349615e1d4SaaronCurrently only the Local-ID and Remote-ID tags
33580baf197Sniklasare looked at in those sections, as they are matched against the IDs given
33680baf197Sniklasby the initiator.
337c5fe6c4eSniklas.El
338c00f6aafSjmc.It Bq Sy KeyNote
339c00f6aafSjmcKeyNote configuration section
340ffa2dcb0Sjmc.Bl -tag -width Ds
341b57b191eSniklas.It Em Credential-directory
342b57b191eSniklasA directory containing directories named after IDs (IP
3434eb3dd62Sjmcaddresses,
3444eb3dd62Sjmc.Dq user@domain ,
3454eb3dd62Sjmcor hostnames) that contain files named
3464eb3dd62Sjmc.Dq credentials
3474eb3dd62Sjmcand
3484eb3dd62Sjmc.Dq private_key .
349b57b191eSniklas.Pp
350b57b191eSniklasThe credentials file contains
351b57b191eSniklas.Xr keynote 4
352b57b191eSniklascredentials that are sent to a remote IKE daemon when we use the
353b57b191eSniklasassociated ID, or credentials that we may want to consider when doing
354ac1aa35bSmpechan exchange with a remote IKE daemon that uses that ID.
355ac1aa35bSmpechNote that, in the former case, the last credential in the file
356ac1aa35bSmpechMUST contain our public key in its Licensees field.
357ac1aa35bSmpechMore than one credentials may exist in the file.
358ac1aa35bSmpechThey are separated by whitelines (the format is essentially the same as
359ac1aa35bSmpechthat of the policy file).
360ac1aa35bSmpechThe credentials are of the same format as the policies described in
361b57b191eSniklas.Xr isakmpd.policy 5 .
362b57b191eSniklasThe only difference is that the Authorizer field contains a public
363ac1aa35bSmpechkey, and the assertion is signed.
364ac1aa35bSmpechSigned assertions can be generated using the
365b57b191eSniklas.Xr keynote 1
366b57b191eSniklasutility.
367b57b191eSniklas.Pp
368b57b191eSniklasThe private_key file contains the private RSA key we use for
369ac1aa35bSmpechauthentication.
370ac1aa35bSmpechIf the directory (and the files) exist, they take precedence over X509-based
371ac1aa35bSmpechauthentication.
372b57b191eSniklas.El
373c00f6aafSjmc.It Bq Sy X509-Certificates
374c00f6aafSjmcX509-certificate configuration section
375ffa2dcb0Sjmc.Bl -tag -width Ds
37635ff0956Sho.It Em Accept-self-signed
37735ff0956ShoIf this tag is defined, whatever the value is, certificates that
37835ff0956Shodo not originate from a trusted CA but are self-signed will be
37935ff0956Shoaccepted.
380fb1921ccSniklas.It Em Ca-directory
381fb1921ccSniklasA directory containing PEM certificates of certification authorities
382ac1aa35bSmpechthat we trust to sign other certificates.
383ac1aa35bSmpechNote that for a CA to be really trusted, it needs to be somehow
384ac1aa35bSmpechreferred to by policy, in
385e5814869Sangelos.Xr isakmpd.policy 5 .
386e5814869SangelosThe certificates in this directory are used for the actual X.509
387e5814869Sangelosauthentication and for cross-referencing policies that refer to
388ac1aa35bSmpechDistinguished Names (DNs).
389ac1aa35bSmpechKeeping a separate directory (as opposed to integrating policies
390ac1aa35bSmpechand X.509 CA certificates) allows for maintenance of a list of
391dfb201a9Stb"well-known" CAs without actually having to trust all (or any) of them.
392fb1921ccSniklas.It Em Cert-directory
393fb1921ccSniklasA directory containing PEM certificates that we trust to be valid.
394fb1921ccSniklasThese certificates are used in preference to those passed in messages and
3950e2d4717Skjellare required to have a subjectAltName extension containing the certificate
39691d5cfbaShshoexerholder identity; usually IP address, FQDN, or User FQDN.
397954b1b31Sniklas.It Em Private-key
398954b1b31SniklasThe private key matching the public key of our certificate (which should be
3990e2d4717Skjellin the "Cert-directory", and have an appropriate subjectAltName field).
400db26b2b9Smsf.It Em Private-key-directory
401db26b2b9SmsfA directory containing private keys named after an ID (IP addresses,
402db26b2b9Smsf.Dq user@domain ,
40395f3b939Sjmcor hostnames).
404fb1921ccSniklas.El
405c5fe6c4eSniklas.El
406ffa2dcb0Sjmc.Sh REFERRED-TO SECTIONS
407ffa2dcb0Sjmc.Bl -hang -width Ds
408ffa2dcb0Sjmc.It Aq Sy ISAKMP-peer
409c5fe6c4eSniklasParameters for negotiation with an ISAKMP peer
410ffa2dcb0Sjmc.Bl -tag -width Ds
411c5fe6c4eSniklas.It Em Address
412ffa2dcb0SjmcIf existent, the IP address of the peer.
413e407932bSjmc.It Em Authentication
414e407932bSjmcIf existent, authentication data for this specific peer.
415e407932bSjmcIn the case of a pre-shared key, this is the key value itself.
416c5fe6c4eSniklas.It Em Configuration
4179615e1d4SaaronThe name of the ISAKMP-configuration section to use.
418ffa2dcb0SjmcLook at
419ffa2dcb0Sjmc.Aq Sy ISAKMP-configuration
420ffa2dcb0Sjmcbelow.
42135ff0956ShoIf unspecified, defaults to "Default-phase-1-configuration".
422e407932bSjmc.It Em Flags
423e407932bSjmcA comma-separated list of flags controlling the further
424e407932bSjmchandling of the ISAKMP SA.
425e407932bSjmcCurrently there are no specific ISAKMP SA flags defined.
4266a8478f3Sniklas.It Em ID
4276a8478f3SniklasIf existent, the name of the section that describes the
4284aac73a4Saaronlocal client ID that we should present to our peer.
4294aac73a4SaaronIf not present, it
4306a8478f3Sniklasdefaults to the address of the local interface we are sending packets
4314aac73a4Saaronover to the remote daemon.
432ffa2dcb0SjmcLook at
433ffa2dcb0Sjmc.Aq Sy Phase1-ID
434ffa2dcb0Sjmcbelow.
435e407932bSjmc.It Em Local-address
436e407932bSjmcThe Local IP address to use, if we are multi-homed, or have aliases.
437e407932bSjmc.It Em Phase
438e407932bSjmcThe constant
439e407932bSjmc.Sq 1 ,
440e407932bSjmcas ISAKMP-peers and IPsec-connections
441e407932bSjmcreally are handled by the same code inside
442e407932bSjmc.Xr isakmpd 8 .
443e407932bSjmc.It Em Port
444e407932bSjmcFor UDP, the UDP port number to send to.
445e407932bSjmcThis is optional;
446e407932bSjmcthe default value is 500 which is the IANA-registered number for ISAKMP.
447a2067f52Sniklas.It Em Remote-ID
448a2067f52SniklasIf existent, the name of the section that describes the remote client
449a2067f52SniklasID we expect the remote daemon to send us.
450a2067f52SniklasIf not present, it defaults to the address of the remote daemon.
451ffa2dcb0SjmcLook at
452ffa2dcb0Sjmc.Aq Sy Phase1-ID
453ffa2dcb0Sjmcbelow.
454e407932bSjmc.It Em Transport
455e407932bSjmcThe name of the transport protocol; defaults to UDP.
456c5fe6c4eSniklas.El
457ffa2dcb0Sjmc.It Aq Sy Phase1-ID
458c00f6aafSjmcParameters for Phase 1 negotiation
459ffa2dcb0Sjmc.Bl -tag -width Ds
460e407932bSjmc.It Em Address
461e407932bSjmcIf the ID-type is
462e407932bSjmc.Li IPV4_ADDR
463e407932bSjmcor
464e407932bSjmc.Li IPV6_ADDR ,
465e407932bSjmcthis tag should exist and be an IP address.
4666a8478f3Sniklas.It Em ID-type
467d8ca7c44ShoThe ID type as given by the RFC specifications.
46835ff0956ShoFor phase 1 this is currently
4696a8478f3Sniklas.Li IPV4_ADDR ,
4706a8478f3Sniklas.Li IPV4_ADDR_SUBNET ,
471d8ca7c44Sho.Li IPV6_ADDR ,
472d8ca7c44Sho.Li IPV6_ADDR_SUBNET ,
4736a8478f3Sniklas.Li FQDN ,
474ffa2dcb0Sjmc.Li USER_FQDN ,
4756a8478f3Sniklasor
4765bc978dfSangelos.Li KEY_ID .
4776a8478f3Sniklas.It Em Name
4786a8478f3SniklasIf the ID-type is
4795bc978dfSangelos.Li FQDN ,
480ffa2dcb0Sjmc.Li USER_FQDN ,
4815bc978dfSangelosor
4825bc978dfSangelos.Li KEY_ID ,
4835bc978dfSangelosthis tag should exist and contain a domain name, user@domain, or
4845bc978dfSangelosother identifying string respectively.
4853f167ca4Sangelos.Pp
4863f167ca4SangelosIn the case of
4873f167ca4Sangelos.Li KEY_ID ,
4883f167ca4Sangelosnote that the IKE protocol allows any octet sequence to be sent or
4893f167ca4Sangelosreceived under this payload, potentially including non-printable
4903f167ca4Sangelosones.
4911215c700Sjmc.Xr isakmpd 8
4923f167ca4Sangeloscan only transmit printable
4933f167ca4Sangelos.Li KEY_ID
4943f167ca4Sangelospayloads, but can receive and process arbitrary
4953f167ca4Sangelos.Li KEY_ID
4963f167ca4Sangelospayloads.
4973f167ca4SangelosThis effectively means that non-printable
4983f167ca4Sangelos.Li KEY_ID
4993f167ca4Sangelosremote identities cannot be verified through this means, although it
5003f167ca4Sangelosis still possible to do so through
5013f167ca4Sangelos.Xr isakmpd.policy 5 .
502e407932bSjmc.It Em Netmask
503e407932bSjmcIf the ID-type is
504e407932bSjmc.Li IPV4_ADDR_SUBNET
505e407932bSjmcor
506e407932bSjmc.Li IPV6_ADDR_SUBNET ,
507e407932bSjmcthis tag should exist and
508e407932bSjmcbe a network subnet mask.
509e407932bSjmc.It Em Network
510e407932bSjmcIf the ID-type is
511e407932bSjmc.Li IPV4_ADDR_SUBNET
512e407932bSjmcor
513e407932bSjmc.Li IPV6_ADDR_SUBNET ,
514e407932bSjmcthis tag should exist and
515e407932bSjmcbe a network address.
5166a8478f3Sniklas.El
517ffa2dcb0Sjmc.It Aq Sy ISAKMP-configuration
518c00f6aafSjmcParameters for ISAKMP configuration
519ffa2dcb0Sjmc.Bl -tag -width Ds
520c5fe6c4eSniklas.It Em DOI
5219615e1d4SaaronThe domain of interpretation as given by the RFCs.
5229615e1d4SaaronNormally
523c5fe6c4eSniklas.Li IPSEC .
524b57b191eSniklasIf unspecified, defaults to
525b57b191eSniklas.Li IPSEC .
526c5fe6c4eSniklas.It Em EXCHANGE_TYPE
5279615e1d4SaaronThe exchange type as given by the RFCs.
5289615e1d4SaaronFor main mode this is
5299f078bd8Sniklas.Li ID_PROT
5309f078bd8Sniklasand for aggressive mode it is
5319f078bd8Sniklas.Li AGGRESSIVE .
532c5fe6c4eSniklas.It Em Transforms
533c5fe6c4eSniklasA list of proposed transforms to use for protecting the
5349615e1d4SaaronISAKMP traffic.
5359615e1d4SaaronThese are actually names for sections
5369615e1d4Saaronfurther describing the transforms.
537ffa2dcb0SjmcLook at
538ffa2dcb0Sjmc.Aq Sy ISAKMP-transform
539ffa2dcb0Sjmcbelow.
540c5fe6c4eSniklas.El
541ffa2dcb0Sjmc.It Aq Sy ISAKMP-transform
542c00f6aafSjmcParameters for ISAKMP authentication
543ffa2dcb0Sjmc.Bl -tag -width Ds
544e407932bSjmc.It Em AUTHENTICATION_METHOD
545e407932bSjmcThe authentication method as the RFCs name it, or ANY.
546c5fe6c4eSniklas.It Em ENCRYPTION_ALGORITHM
547850f7173SniklasThe encryption algorithm as the RFCs name it, or ANY to denote that any
548850f7173Sniklasencryption algorithm proposed will be accepted.
549c5fe6c4eSniklas.It Em GROUP_DESCRIPTION
5509615e1d4SaaronThe group used for Diffie-Hellman exponentiations, or ANY.
55144143af3SderaadtThe names are symbolic, like
552ffa2dcb0Sjmc.Li MODP_768 , MODP_1024 , EC_155 ,
553c5fe6c4eSniklasand
554c5fe6c4eSniklas.Li EC_185 .
555e407932bSjmc.It Em HASH_ALGORITHM
556e407932bSjmcThe hash algorithm as the RFCs name it, or ANY.
557e407932bSjmc.It Em KEY_LENGTH
558e407932bSjmcFor encryption algorithms with variable key length, this is
559e407932bSjmcwhere the offered/accepted keylengths are described.
560e407932bSjmcThe value is of the offer-accept kind described above.
561c5fe6c4eSniklas.It Em Life
5624aac73a4SaaronA list of lifetime descriptions, or ANY.
5634aac73a4SaaronIn the former case, each
564850f7173Sniklaselement is in itself a name of the section that defines the lifetime.
565ffa2dcb0SjmcLook at
566ffa2dcb0Sjmc.Aq Sy Lifetime
567ffa2dcb0Sjmcbelow.
5684aac73a4SaaronIf it is set to ANY, then any type of
569850f7173Sniklasproposed lifetime type and value will be accepted.
570e407932bSjmc.It Em PRF
571e407932bSjmcThe algorithm to use for the keyed pseudo-random function (used for key
572e407932bSjmcderivation and authentication in phase 1), or ANY.
573c5fe6c4eSniklas.El
574ffa2dcb0Sjmc.It Aq Sy Lifetime
575c00f6aafSjmcParameters for connection duration
576ffa2dcb0Sjmc.Bl -tag -width Ds
577e407932bSjmc.It Em LIFE_DURATION
578e407932bSjmcAn offer/accept kind of value; see above.
579e407932bSjmcCan also be set to ANY.
580c5fe6c4eSniklas.It Em LIFE_TYPE
581c5fe6c4eSniklas.Li SECONDS
582c5fe6c4eSniklasor
583e55ca143Sniklas.Li KILOBYTES
5844aac73a4Saarondepending on the type of the duration.
5854aac73a4SaaronNotice that this field may NOT be set to ANY.
586c5fe6c4eSniklas.El
587ffa2dcb0Sjmc.It Aq Sy IPsec-connection
588c00f6aafSjmcParameters for IPsec connection configuration
589ffa2dcb0Sjmc.Bl -tag -width Ds
590c5fe6c4eSniklas.It Em Configuration
59161d575f0SangelosThe name of the IPsec-configuration section to use.
592ffa2dcb0SjmcLook at
593ffa2dcb0Sjmc.Aq Sy IPsec-configuration
594ffa2dcb0Sjmcbelow.
59513a99464Sniklas.It Em Flags
59613a99464SniklasA comma-separated list of flags controlling the further
59761d575f0Sangeloshandling of the IPsec SA.
5989615e1d4SaaronCurrently only one flag is defined:
59980baf197Sniklas.Bl -tag -width 12n
60080baf197Sniklas.It Em Active-only
601ffa2dcb0SjmcIf this flag is given and this
602ffa2dcb0Sjmc.Aq Sy IPsec-connection
603ffa2dcb0Sjmcis part of the phase 2
60480baf197Sniklasconnections we automatically keep up, it will not automatically be used for
60580baf197Sniklasaccepting connections from the peer.
60680baf197Sniklas.El
607e407932bSjmc.It Em ISAKMP-peer
608604faeecSjmcThe name of the ISAKMP-peer to talk to in order to
609e407932bSjmcset up this connection.
610e407932bSjmcThe value is the name of an
611e407932bSjmc.Aq Sy ISAKMP-peer
612e407932bSjmcsection.
613e407932bSjmcSee above.
614e407932bSjmc.It Em Local-ID
615e407932bSjmcIf existent, the name of the section that describes the
616e407932bSjmcoptional local client ID that we should present to our peer.
617e407932bSjmcIt is also used when we act as responders to find out what
618e407932bSjmc.Aq Sy IPsec-connection
619e407932bSjmcwe are dealing with.
620e407932bSjmcLook at
621e407932bSjmc.Aq Sy IPsec-ID
622e407932bSjmcbelow.
623e407932bSjmc.It Em Phase
624e407932bSjmcThe constant
625e407932bSjmc.Sq 2 ,
626e407932bSjmcas ISAKMP-peers and IPsec-connections
627e407932bSjmcreally are handled by the same code inside
628e407932bSjmc.Xr isakmpd 8 .
629e407932bSjmc.It Em Remote-ID
630e407932bSjmcIf existent, the name of the section that describes the
631e407932bSjmcoptional remote client ID that we should present to our peer.
632e407932bSjmcIt is also used when we act as responders to find out what
633e407932bSjmc.Aq Sy IPsec-connection
634e407932bSjmcwe are dealing with.
635e407932bSjmcLook at
636e407932bSjmc.Aq Sy IPsec-ID
637e407932bSjmcbelow.
638aa920ac7Sreyk.It Em PF-Tag
639aa920ac7SreykAdd a
640aa920ac7Sreyk.Xr pf 4
641aa920ac7Sreyktag to all packets of phase 2 SAs created for this connection.
642aa920ac7SreykThis will allow matching packets for this connection by defining
643aa920ac7Sreykrules in
644aa920ac7Sreyk.Xr pf.conf 5
645aa920ac7Sreykusing the
646aa920ac7Sreyk.Em tagged
647aa920ac7Sreykkeyword.
648aa920ac7Sreyk.Pp
649aa920ac7SreykThe following variables can be used in tags to include information
650aa920ac7Sreykfrom the remote peer on runtime:
651aa920ac7Sreyk.Pp
652aa920ac7Sreyk.Bl -tag -width $domain -compact -offset indent
653aa920ac7Sreyk.It Ar $id
654aa920ac7SreykThe remote phase 1 ID.
655aa920ac7SreykIt will be expanded to
656aa920ac7Sreyk.Ar id-type/id-value ,
657aa920ac7Sreyke.g.\&
658aa920ac7Sreyk.Ar fqdn/foo.bar.org .
659aa920ac7Sreyk.It Ar $domain
660aa920ac7SreykExtract the domain from IDs of type FQDN or UFQDN.
661aa920ac7Sreyk.El
662aa920ac7Sreyk.Pp
663aa920ac7SreykFor example, if the ID is
664aa920ac7Sreyk.Ar fqdn/foo.bar.org
665aa920ac7Sreykor
666aa920ac7Sreyk.Ar ufqdn/user@bar.org ,
667aa920ac7Sreyk.Dq PF-Tag=ipsec-$domain
668aa920ac7Sreykexpands to
669aa920ac7Sreyk.Dq ipsec-bar.org .
670aa920ac7SreykThe variable expansion for the
671aa920ac7Sreyk.Ar PF-Tag
672aa920ac7Sreykdirective occurs only at runtime, not during configuration file parse time.
673*ce531476Sdlg.It Em Interface
674*ce531476SdlgSpecify a
675*ce531476Sdlg.Xr sec 4
676*ce531476Sdlginterface minor number that the SAs will be used with.
677*ce531476SdlgConfiguring
678*ce531476Sdlg.Ar Interface
679*ce531476Sdlgalso disables the insertion of flows, and instead relies on the
680*ce531476Sdlgrouting of packets over the associated
681*ce531476Sdlg.Xr sec 4
682*ce531476Sdlginterface.
683c5fe6c4eSniklas.El
684ffa2dcb0Sjmc.It Aq Sy IPsec-configuration
685c00f6aafSjmcParameters for IPsec configuration
686ffa2dcb0Sjmc.Bl -tag -width Ds
687c5fe6c4eSniklas.It Em DOI
6889615e1d4SaaronThe domain of interpretation as given by the RFCs.
6899615e1d4SaaronNormally
690c5fe6c4eSniklas.Li IPSEC .
691b57b191eSniklasIf unspecified, defaults to
692b57b191eSniklas.Li IPSEC .
693c5fe6c4eSniklas.It Em EXCHANGE_TYPE
6949615e1d4SaaronThe exchange type as given by the RFCs.
6959615e1d4SaaronFor quick mode this is
696c5fe6c4eSniklas.Li QUICK_MODE .
697c5fe6c4eSniklas.It Em Suites
6983b2a0cf1SaaronA list of protection suites (bundles of protocols) usable for
6999615e1d4Saaronprotecting the IP traffic.
700ffa2dcb0SjmcEach of the list elements is a name of an
701ffa2dcb0Sjmc.Aq Sy IPsec-suite
7029615e1d4Saaronsection.
7039615e1d4SaaronSee below.
704c5fe6c4eSniklas.El
705ffa2dcb0Sjmc.It Aq Sy IPsec-suite
706c00f6aafSjmcParameters for IPsec protection suite configuration
707ffa2dcb0Sjmc.Bl -tag -width Ds
708ffa2dcb0Sjmc.It Em Protocols
709ffa2dcb0SjmcA list of the protocols included in this protection suite.
710ffa2dcb0SjmcEach of the list elements is a name of an
711ffa2dcb0Sjmc.Aq Sy IPsec-protocol
712ffa2dcb0Sjmcsection.
713ffa2dcb0SjmcSee below.
714ffa2dcb0Sjmc.El
715ffa2dcb0Sjmc.It Aq Sy IPsec-protocol
716c00f6aafSjmcParameters for IPsec protocol configuration
717ffa2dcb0Sjmc.Bl -tag -width Ds
718c5fe6c4eSniklas.It Em PROTOCOL_ID
7199615e1d4SaaronThe protocol as given by the RFCs.
720ffa2dcb0SjmcAcceptable values are currently
721c5fe6c4eSniklas.Li IPSEC_AH
722c5fe6c4eSniklasand
723c5fe6c4eSniklas.Li IPSEC_ESP .
724e407932bSjmc.It Em ReplayWindow
725e407932bSjmcThe size of the window used for replay protection.
726e407932bSjmcThis is normally left alone.
727e407932bSjmcLook at the ESP and AH RFCs for a better description.
728c5fe6c4eSniklas.It Em Transforms
7293b2a0cf1SaaronA list of transforms usable for implementing the protocol.
730ffa2dcb0SjmcEach of the list elements is a name of an
731ffa2dcb0Sjmc.Aq Sy IPsec-transform
7329615e1d4Saaronsection.
7339615e1d4SaaronSee below.
734c5fe6c4eSniklas.El
735ffa2dcb0Sjmc.It Aq Sy IPsec-transform
736c00f6aafSjmcParameters for IPsec transform configuration
737ffa2dcb0Sjmc.Bl -tag -width Ds
738c5fe6c4eSniklas.It Em AUTHENTICATION_ALGORITHM
73954f4b78aSyasuokaThe optional authentication algorithm, or ANY in the case of this
740c5fe6c4eSniklasbeing an ESP transform.
741e407932bSjmc.It Em ENCAPSULATION_MODE
742e407932bSjmcThe encapsulation mode as given by the RFCs.
743e407932bSjmcThis means TRANSPORT or TUNNEL.
744c5fe6c4eSniklas.It Em GROUP_DESCRIPTION
745c5fe6c4eSniklasAn optional (provides PFS if present) Diffie-Hellman group
7469615e1d4Saarondescription.
747ffa2dcb0SjmcThe values are the same as those for GROUP_DESCRIPTION in
748ffa2dcb0Sjmc.Aq Sy ISAKMP-transform
749ffa2dcb0Sjmcsections shown above.
750a806508bShshoexer.It Em KEY_LENGTH
751a806508bShshoexerFor encryption algorithms with variable key length, this is
752a806508bShshoexerwhere the offered keylength is described.
753c5fe6c4eSniklas.It Em Life
754ffa2dcb0SjmcList of lifetimes, each element is a
755ffa2dcb0Sjmc.Aq Sy Lifetime
756ffa2dcb0Sjmcsection name.
757e407932bSjmc.It Em TRANSFORM_ID
75854f4b78aSyasuokaThe transform ID as given by the RFCs, or ANY to denote that any
75954f4b78aSyasuokatransform proposed will be accepted.
760c5fe6c4eSniklas.El
761ffa2dcb0Sjmc.It Aq Sy IPsec-ID
762c00f6aafSjmcParameters for IPsec ID configuration
763ffa2dcb0Sjmc.Bl -tag -width Ds
764c5fe6c4eSniklas.It Em Address
765c5fe6c4eSniklasIf the ID-type is
766d8ca7c44Sho.Li IPV4_ADDR
767d8ca7c44Shoor
768ffa2dcb0Sjmc.Li IPV6_ADDR ,
769ffa2dcb0Sjmcthis tag should exist and be an IP address, an interface name, or the
770e3283cbfSmcbride.Em default
771e3283cbfSmcbridekeyword.
772e3283cbfSmcbrideIf an interface is used, the first address of the appropriate
773e3283cbfSmcbridefamily will be used.
774e3283cbfSmcbrideThe
775e3283cbfSmcbride.Em default
776e3283cbfSmcbridekeyword uses the interface associated with the default route.
777ffa2dcb0SjmcIn the case of IPv6, link-local addresses will be skipped if
778e3283cbfSmcbrideaddresses which are not link-local exist.
77941ce3b17SnaddyIf the address on the interface changes,
780ffa2dcb0Sjmc.Xr isakmpd 8
781e3283cbfSmcbridewill not track the change.
782e3283cbfSmcbrideThe configuration must be reloaded to learn the new address.
783e407932bSjmc.It Em ID-type
784e407932bSjmcThe ID type as given by the RFCs.
785e407932bSjmcFor IPsec this is currently
786e407932bSjmc.Li IPV4_ADDR ,
787e407932bSjmc.Li IPV6_ADDR ,
788e407932bSjmc.Li IPV4_ADDR_SUBNET ,
789d8ca7c44Shoor
790e407932bSjmc.Li IPV6_ADDR_SUBNET .
791c5fe6c4eSniklas.It Em Netmask
792c5fe6c4eSniklasIf the ID-type is
793c5fe6c4eSniklas.Li IPV4_ADDR_SUBNET
794d8ca7c44Shoor
795ffa2dcb0Sjmc.Li IPV6_ADDR_SUBNET ,
796c5fe6c4eSniklasthis tag should exist and
797e3283cbfSmcbridebe a network subnet mask or an interface.
798ffa2dcb0SjmcWhen an interface is specified, the netmask is the mask associated with the
799e3283cbfSmcbride.Em Network .
800e3283cbfSmcbrideThe
801e3283cbfSmcbride.Em default
802e3283cbfSmcbridekeyword uses the interface associated with the default route.
803e407932bSjmc.It Em Network
8040378d1f2SniklasIf the ID-type is
805e407932bSjmc.Li IPV4_ADDR_SUBNET
806d8ca7c44Shoor
807ffa2dcb0Sjmc.Li IPV6_ADDR_SUBNET ,
808e407932bSjmcthis tag should exist and be a network address, an interface, or the
809e407932bSjmc.Em default
810e407932bSjmckeyword.
811e407932bSjmcWhen an interface is specified, the network is selected as with the
812e407932bSjmc.Em Address
813e407932bSjmctag.
8140378d1f2Sniklas.It Em Port
8150378d1f2SniklasIf the ID-type is
816d8ca7c44Sho.Li IPV4_ADDR ,
8170378d1f2Sniklas.Li IPV4_ADDR_SUBNET ,
818ffa2dcb0Sjmc.Li IPV6_ADDR ,
819d8ca7c44Shoor
820ffa2dcb0Sjmc.Li IPV6_ADDR_SUBNET ,
8210378d1f2Sniklasthis tag indicates what source or destination port is allowed to be
8220378d1f2Sniklastransported over the SA (depending on whether this is a local or
8230378d1f2Sniklasremote ID).
8240378d1f2SniklasIf left unspecified, all ports of the given transport protocol
8250378d1f2Sniklaswill be transmitted (or permitted) over the SA.
826ffa2dcb0SjmcThe
827ffa2dcb0Sjmc.Em Protocol
828ffa2dcb0Sjmctag must be specified in conjunction with this tag.
829e407932bSjmc.It Em Protocol
830e407932bSjmcIf the ID-type is
831e407932bSjmc.Li IPV4_ADDR ,
832e407932bSjmc.Li IPV4_ADDR_SUBNET ,
833e407932bSjmc.Li IPV6_ADDR ,
834e407932bSjmcor
835e407932bSjmc.Li IPV6_ADDR_SUBNET ,
836e407932bSjmcthis tag indicates what transport protocol should be transmitted over
837e407932bSjmcthe SA.
838e407932bSjmcIf left unspecified, all transport protocols between the two address
839e407932bSjmc(ranges) will be sent (or permitted) over that SA.
840c5fe6c4eSniklas.El
841c5fe6c4eSniklas.El
842ffa2dcb0Sjmc.Sh OTHER SECTIONS
843ffa2dcb0Sjmc.Bl -hang -width 8n
844ffa2dcb0Sjmc.It Aq Sy IKECFG-ID
8454eb3dd62SjmcParameters to use with IKE mode-config.
8464eb3dd62SjmcOne ID per peer.
8474ca71560Sho.Pp
8484ca71560ShoAn IKECFG-ID is written as [<ID-type>/<name>].
8494ca71560ShoThe following ID types are supported:
850ffa2dcb0Sjmc.Pp
851ffa2dcb0Sjmc.Bl -tag -width "ASN1_DNXX" -offset indent -compact
8524ca71560Sho.It IPv4
8534ca71560Sho[ipv4/A.B.C.D]
8544ca71560Sho.It IPv6
8554ca71560Sho[ipv6/abcd:abcd::ab:cd]
8564ca71560Sho.It FQDN
8574ca71560Sho[fqdn/foo.bar.org]
8584ca71560Sho.It UFQDN
8594ca71560Sho[ufqdn/user@foo.bar.org]
8604ca71560Sho.It ASN1_DN
8614ca71560Sho[asn1_dn//C=aa/O=cc/...] (Note the double slashes as the DN itself
8624eb3dd62Sjmcstarts with a
8634eb3dd62Sjmc.Sq / . )
8644ca71560Sho.El
8654ca71560Sho.Pp
8664ca71560ShoEach section specifies what configuration values to return to the peer
8674eb3dd62Sjmcrequesting IKE mode-config.
8684eb3dd62SjmcCurrently supported values are:
869ffa2dcb0Sjmc.Pp
870ffa2dcb0Sjmc.Bl -tag -width "WINS-serverXX" -offset indent -compact
8714ca71560Sho.It Em Address
8724ca71560ShoThe peer's network address.
8734ca71560Sho.It Em Netmask
8744ca71560ShoThe peer's netmask.
8754ca71560Sho.It Em Nameserver
8764ca71560ShoThe IP address of a DNS nameserver.
8774ca71560Sho.It Em WINS-server
8784ca71560ShoThe IP address of a WINS server.
8794ca71560Sho.El
880ffa2dcb0Sjmc.It Aq Sy Initiator-ID
881c00f6aafSjmcParameters for peer initiator configuration
882106cbd59Smarkus.Pp
883106cbd59SmarkusDuring phase 1 negotiation
884ffa2dcb0Sjmc.Xr isakmpd 8
885ffa2dcb0Sjmclooks for a pre-shared key in the
886ffa2dcb0Sjmc.Aq Sy ISAKMP-peer
887ffa2dcb0Sjmcsection.
888106cbd59SmarkusIf no Authentication data is specified in that section, and
889ffa2dcb0Sjmc.Xr isakmpd 8
890106cbd59Smarkusis not the initiator, it looks for Authentication data in a section named after
891106cbd59Smarkusthe initiator's phase 1 ID.
892106cbd59SmarkusThis allows mobile users with dynamic IP addresses
893106cbd59Smarkusto have different shared secrets.
894106cbd59Smarkus.Pp
895106cbd59SmarkusThis only works for aggressive mode because in main mode the remote
896106cbd59Smarkusinitiator ID would not yet be known.
897830c32f9ShshoexerNote, however, that use of aggressive mode is discouraged.
898830c32f9ShshoexerSee
899ffa2dcb0Sjmc.Sx CAVEATS ,
900ffa2dcb0Sjmcbelow.
901106cbd59Smarkus.Pp
902ffa2dcb0SjmcThe name of the
903ffa2dcb0Sjmc.Aq Sy Initiator-ID
904ffa2dcb0Sjmcsection depends on the ID type sent by the initiator.
905106cbd59SmarkusCurrently this can be:
906ffa2dcb0Sjmc.Pp
907ffa2dcb0Sjmc.Bl -tag -width "UFQDNXX" -offset indent -compact
908106cbd59Smarkus.It IPv4
909106cbd59Smarkus[A.B.C.D]
910106cbd59Smarkus.It IPv6
911106cbd59Smarkus[abcd:abcd::ab:cd]
912106cbd59Smarkus.It FQDN
913106cbd59Smarkus[foo.bar.org]
914106cbd59Smarkus.It UFQDN
915106cbd59Smarkus[user@foo.bar.org]
916106cbd59Smarkus.El
9174ca71560Sho.El
9182b65e200Sjmc.Sh FILES
9192b65e200Sjmc.Bl -tag -width /etc/isakmpd/isakmpd.conf
9202b65e200Sjmc.It Pa /etc/isakmpd/isakmpd.conf
9212b65e200SjmcThe default
922ffa2dcb0Sjmc.Xr isakmpd 8
9232b65e200Sjmcconfiguration file.
9242b65e200Sjmc.El
92500b2ba71Saaron.Sh EXAMPLES
9262040585eSniklasAn example of a configuration file:
9272040585eSniklas.Bd -literal
928fceee491Sjmc# A configuration sample for the isakmpd ISAKMP/Oakley (aka IKEv1) daemon.
9292040585eSniklas
9302040585eSniklas[General]
931c5fe6c4eSniklasListen-on=		10.1.0.2
9322040585eSniklas
933c5fe6c4eSniklas# Incoming phase 1 negotiations are multiplexed on the source IP address
9342b81057dSniklas[Phase 1]
935c5fe6c4eSniklas10.1.0.1=		ISAKMP-peer-west
9362b81057dSniklas
937c5fe6c4eSniklas# These connections are walked over after config file parsing and told
938c5fe6c4eSniklas# to the application layer so that it will inform us when traffic wants to
93952250141Smoritz# pass over them.  This means we can do on-demand keying.
940c5fe6c4eSniklas[Phase 2]
941c5fe6c4eSniklasConnections=		IPsec-east-west
942c5fe6c4eSniklas
943cc3c8b42Sniklas# Default values are commented out.
944c5fe6c4eSniklas[ISAKMP-peer-west]
9452b81057dSniklasPhase=			1
946cc3c8b42Sniklas#Transport=		udp
947f6dd85a7SniklasLocal-address=		10.1.0.2
9482b81057dSniklasAddress=		10.1.0.1
9492b81057dSniklas#Port=			isakmp
9502b81057dSniklas#Port=			500
95135ff0956Sho#Configuration=		Default-phase-1-configuration
9522b81057dSniklasAuthentication=		mekmitasdigoat
953cc3c8b42Sniklas#Flags=
9542b81057dSniklas
955c5fe6c4eSniklas[IPsec-east-west]
9562b81057dSniklasPhase=			2
957c5fe6c4eSniklasISAKMP-peer=		ISAKMP-peer-west
9582b81057dSniklasConfiguration=		Default-quick-mode
959c5fe6c4eSniklasLocal-ID=		Net-east
960c5fe6c4eSniklasRemote-ID=		Net-west
961cc3c8b42Sniklas#Flags=
9622b81057dSniklas
963c5fe6c4eSniklas[Net-west]
9642b81057dSniklasID-type=		IPV4_ADDR_SUBNET
9652b81057dSniklasNetwork=		192.168.1.0
9662b81057dSniklasNetmask=		255.255.255.0
9672b81057dSniklas
968c5fe6c4eSniklas[Net-east]
9692b81057dSniklasID-type=		IPV4_ADDR_SUBNET
9702b81057dSniklasNetwork=		192.168.2.0
9712b81057dSniklasNetmask=		255.255.255.0
9722b81057dSniklas
97352e712aeSniklas# Quick mode descriptions
97452e712aeSniklas
97552e712aeSniklas[Default-quick-mode]
97652e712aeSniklasEXCHANGE_TYPE=		QUICK_MODE
9771a87c1a3ShoSuites=			QM-ESP-3DES-SHA-PFS-SUITE,QM-ESP-AES-SHA-PFS-SUITE
97852e712aeSniklas
9794ca71560Sho# Data for an IKE mode-config peer
9804ca71560Sho[asn1_dn//C=SE/L=SomeCity/O=SomeCompany/CN=SomePeer.company.com]
9814ca71560ShoAddress=		192.168.1.123
9824ca71560ShoNetmask=		255.255.255.0
9834ca71560ShoNameserver=		192.168.1.10
9844ca71560ShoWINS-server=		192.168.1.11
9854ca71560Sho
986106cbd59Smarkus# pre-shared key based on initiator's phase 1 ID
987106cbd59Smarkus[foo.bar.org]
988106cbd59SmarkusAuthentication=		mekmitasdigoat
989106cbd59Smarkus
99052e712aeSniklas#
99152e712aeSniklas# #####################################################################
99244143af3Sderaadt# All configuration data below this point is not required as the example
99352e712aeSniklas# uses the predefined Main Mode transform and Quick Mode suite names.
99452e712aeSniklas# It is included here for completeness.  Note the default values for the
99552e712aeSniklas# [General] and [X509-certificates] sections just below.
99652e712aeSniklas# #####################################################################
99752e712aeSniklas#
99852e712aeSniklas
99952e712aeSniklas[General]
1000447a9f3aShoPolicy-file=		/etc/isakmpd/isakmpd.policy
100152e712aeSniklasRetransmits=		3
100252e712aeSniklasExchange-max-time=	120
100352e712aeSniklas
1004b57b191eSniklas# KeyNote credential storage
1005b57b191eSniklas[KeyNote]
1006b57b191eSniklasCredential-directory=	/etc/isakmpd/keynote/
1007b57b191eSniklas
1008fb1921ccSniklas# Certificates stored in PEM format
1009fb1921ccSniklas[X509-certificates]
1010fb1921ccSniklasCA-directory=           /etc/isakmpd/ca/
1011fb1921ccSniklasCert-directory=         /etc/isakmpd/certs/
10129dbe9fb4ShoCRL-directory=		/etc/isakmpd/crls/
1013954b1b31SniklasPrivate-key=		/etc/isakmpd/private/local.key
1014fb1921ccSniklas
1015419caefeSho# Default phase 1 description (Main Mode)
1016419caefeSho
101735ff0956Sho[Default-phase-1-configuration]
1018419caefeShoEXCHANGE_TYPE=		ID_PROT
1019419caefeShoTransforms=		3DES-SHA
1020419caefeSho
10212b81057dSniklas# Main mode transforms
10222b81057dSniklas######################
10232b81057dSniklas
10242b81057dSniklas# 3DES
10252b81057dSniklas
10262b81057dSniklas[3DES-SHA]
10272b81057dSniklasENCRYPTION_ALGORITHM=	3DES_CBC
10282040585eSniklasHASH_ALGORITHM=		SHA
10292040585eSniklasAUTHENTICATION_METHOD=	PRE_SHARED
10302040585eSniklasGROUP_DESCRIPTION=	MODP_1024
103124fbfe96ShshoexerLife=			LIFE_MAIN_MODE
10322b81057dSniklas
1033a806508bShshoexer# AES
1034a806508bShshoexer
1035a806508bShshoexer[AES-SHA]
1036a806508bShshoexerENCRYPTION_ALGORITHM=	AES_CBC
1037a806508bShshoexerKEY_LENGTH=		128,128:256
1038a806508bShshoexerHASH_ALGORITHM=		SHA
1039a806508bShshoexerAUTHENTICATION_METHOD=	PRE_SHARED
1040a806508bShshoexerGROUP_DESCRIPTION=	MODP_1024
104124fbfe96ShshoexerLife=			LIFE_MAIN_MODE
1042a806508bShshoexer
1043601f7947Shshoexer# AES-128
1044601f7947Shshoexer
1045601f7947Shshoexer[AES-128-SHA]
1046601f7947ShshoexerENCRYPTION_ALGORITHM=   AES_CBC
1047601f7947ShshoexerKEY_LENGTH=             128,128:128
1048601f7947ShshoexerHASH_ALGORITHM=         SHA
1049601f7947ShshoexerAUTHENTICATION_METHOD=  PRE_SHARED
1050601f7947ShshoexerGROUP_DESCRIPTION=      MODP_1024
1051601f7947ShshoexerLife=                   LIFE_MAIN_MODE
1052601f7947Shshoexer
1053601f7947Shshoexer# AES-192
1054601f7947Shshoexer
1055601f7947Shshoexer[AES-192-SHA]
1056601f7947ShshoexerENCRYPTION_ALGORITHM=   AES_CBC
1057601f7947ShshoexerKEY_LENGTH=             192,192:192
1058601f7947ShshoexerHASH_ALGORITHM=         SHA
1059601f7947ShshoexerAUTHENTICATION_METHOD=  PRE_SHARED
1060601f7947ShshoexerGROUP_DESCRIPTION=      MODP_1024
1061601f7947ShshoexerLife=                   LIFE_MAIN_MODE
1062601f7947Shshoexer
1063601f7947Shshoexer# AES-256
1064601f7947Shshoexer
1065601f7947Shshoexer[AES-256-SHA]
1066601f7947ShshoexerENCRYPTION_ALGORITHM=   AES_CBC
1067601f7947ShshoexerKEY_LENGTH=             256,256:256
1068601f7947ShshoexerHASH_ALGORITHM=         SHA
1069601f7947ShshoexerAUTHENTICATION_METHOD=  PRE_SHARED
1070601f7947ShshoexerGROUP_DESCRIPTION=      MODP_1024
1071601f7947ShshoexerLife=                   LIFE_MAIN_MODE
1072601f7947Shshoexer
10732b81057dSniklas# Blowfish
10742b81057dSniklas
107560f440ccSho[BLF-SHA]
10762b81057dSniklasENCRYPTION_ALGORITHM=	BLOWFISH_CBC
10772b81057dSniklasKEY_LENGTH=		128,96:192
10782b81057dSniklasHASH_ALGORITHM=		SHA
10792b81057dSniklasAUTHENTICATION_METHOD=	PRE_SHARED
10802b81057dSniklasGROUP_DESCRIPTION=	MODP_1024
108124fbfe96ShshoexerLife=			LIFE_MAIN_MODE
10822040585eSniklas
108360f440ccSho# Blowfish, using DH group 4 (non-default)
10842040585eSniklas[BLF-SHA-EC185]
1085d70ca5f7SniklasENCRYPTION_ALGORITHM=	BLOWFISH_CBC
10862b81057dSniklasKEY_LENGTH=		128,96:192
10872040585eSniklasHASH_ALGORITHM=		SHA
10882040585eSniklasAUTHENTICATION_METHOD=	PRE_SHARED
10892040585eSniklasGROUP_DESCRIPTION=	EC2N_185
109024fbfe96ShshoexerLife=			LIFE_MAIN_MODE
10912040585eSniklas
10922b81057dSniklas# Quick mode protection suites
10932b81057dSniklas##############################
10942b81057dSniklas
10952b81057dSniklas# 3DES
10962b81057dSniklas
10972b81057dSniklas[QM-ESP-3DES-SHA-SUITE]
10982b81057dSniklasProtocols=		QM-ESP-3DES-SHA
10992b81057dSniklas
11002b81057dSniklas[QM-ESP-3DES-SHA-PFS-SUITE]
11012b81057dSniklasProtocols=		QM-ESP-3DES-SHA-PFS
11022b81057dSniklas
1103bfc24386Sniklas# AES
1104bfc24386Sniklas
1105bfc24386Sniklas[QM-ESP-AES-SHA-SUITE]
1106bfc24386SniklasProtocols=              QM-ESP-AES-SHA
1107bfc24386Sniklas
110860f440ccSho[QM-ESP-AES-SHA-PFS-SUITE]
1109bfc24386SniklasProtocols=              QM-ESP-AES-SHA-PFS
1110bfc24386Sniklas
1111601f7947Shshoexer# AES-128
1112601f7947Shshoexer
1113601f7947Shshoexer[QM-ESP-AES-128-SHA-SUITE]
1114601f7947ShshoexerProtocols=              QM-ESP-AES-128-SHA
1115601f7947Shshoexer
1116601f7947Shshoexer[QM-ESP-AES-128-SHA-PFS-SUITE]
1117601f7947ShshoexerProtocols=              QM-ESP-AES-128-SHA-PFS
1118601f7947Shshoexer
1119601f7947Shshoexer# AES-192
1120601f7947Shshoexer
1121601f7947Shshoexer[QM-ESP-AES-192-SHA-SUITE]
1122601f7947ShshoexerProtocols=              QM-ESP-AES-192-SHA
1123601f7947Shshoexer
1124601f7947Shshoexer[QM-ESP-AES-192-SHA-PFS-SUITE]
1125601f7947ShshoexerProtocols=              QM-ESP-AES-192-SHA-PFS
1126601f7947Shshoexer
1127601f7947Shshoexer# AES-256
1128601f7947Shshoexer
1129601f7947Shshoexer[QM-ESP-AES-256-SHA-SUITE]
1130601f7947ShshoexerProtocols=              QM-ESP-AES-256-SHA
1131601f7947Shshoexer
1132601f7947Shshoexer[QM-ESP-AES-256-SHA-PFS-SUITE]
1133601f7947ShshoexerProtocols=              QM-ESP-AES-256-SHA-PFS
1134601f7947Shshoexer
11352b81057dSniklas# AH
11362b81057dSniklas
11372b81057dSniklas[QM-AH-MD5-SUITE]
11382b81057dSniklasProtocols=		QM-AH-MD5
11392b81057dSniklas
11402b81057dSniklas[QM-AH-MD5-PFS-SUITE]
11412b81057dSniklasProtocols=		QM-AH-MD5-PFS
11422b81057dSniklas
114360f440ccSho# AH + ESP (non-default)
11442040585eSniklas
11450e800071Snaddy[QM-AH-MD5-ESP-3DES-SHA-SUITE]
11460e800071SnaddyProtocols=		QM-AH-MD5,QM-ESP-3DES-SHA
11472040585eSniklas
11480e800071Snaddy[QM-ESP-3DES-SHA-AH-MD5-SUITE]
11490e800071SnaddyProtocols=		QM-ESP-3DES-SHA,QM-AH-MD5
11502b81057dSniklas
11512b81057dSniklas# Quick mode protocols
11522b81057dSniklas
11532b81057dSniklas# 3DES
11542b81057dSniklas
11552b81057dSniklas[QM-ESP-3DES-SHA]
11562b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
11572b81057dSniklasTransforms=		QM-ESP-3DES-SHA-XF
11582b81057dSniklas
11592b81057dSniklas[QM-ESP-3DES-SHA-PFS]
11602b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
11612b81057dSniklasTransforms=		QM-ESP-3DES-SHA-PFS-XF
11622b81057dSniklas
11632b81057dSniklas[QM-ESP-3DES-SHA-TRP]
11642b81057dSniklasPROTOCOL_ID=		IPSEC_ESP
11652b81057dSniklasTransforms=		QM-ESP-3DES-SHA-TRP-XF
11662b81057dSniklas
1167bfc24386Sniklas# AES
1168bfc24386Sniklas
1169bfc24386Sniklas[QM-ESP-AES-SHA]
1170bfc24386SniklasPROTOCOL_ID=		IPSEC_ESP
1171bfc24386SniklasTransforms=		QM-ESP-AES-SHA-XF
1172bfc24386Sniklas
1173bfc24386Sniklas[QM-ESP-AES-SHA-PFS]
1174bfc24386SniklasPROTOCOL_ID=		IPSEC_ESP
1175bfc24386SniklasTransforms=		QM-ESP-AES-SHA-PFS-XF
1176bfc24386Sniklas
1177bfc24386Sniklas[QM-ESP-AES-SHA-TRP]
1178bfc24386SniklasPROTOCOL_ID=		IPSEC_ESP
1179bfc24386SniklasTransforms=		QM-ESP-AES-SHA-TRP-XF
1180bfc24386Sniklas
1181601f7947Shshoexer# AES-128
1182601f7947Shshoexer
1183601f7947Shshoexer[QM-ESP-AES-128-SHA]
1184601f7947ShshoexerPROTOCOL_ID=            IPSEC_ESP
1185601f7947ShshoexerTransforms=             QM-ESP-AES-128-SHA-XF
1186601f7947Shshoexer
1187601f7947Shshoexer[QM-ESP-AES-128-SHA-PFS]
1188601f7947ShshoexerPROTOCOL_ID=            IPSEC_ESP
1189601f7947ShshoexerTransforms=             QM-ESP-AES-128-SHA-PFS-XF
1190601f7947Shshoexer
1191601f7947Shshoexer[QM-ESP-AES-128-SHA-TRP]
1192601f7947ShshoexerPROTOCOL_ID=            IPSEC_ESP
1193601f7947ShshoexerTransforms=             QM-ESP-AES-128-SHA-TRP-XF
1194601f7947Shshoexer
1195601f7947Shshoexer# AES-192
1196601f7947Shshoexer
1197601f7947Shshoexer[QM-ESP-AES-192-SHA]
1198601f7947ShshoexerPROTOCOL_ID=            IPSEC_ESP
1199601f7947ShshoexerTransforms=             QM-ESP-AES-192-SHA-XF
1200601f7947Shshoexer
1201601f7947Shshoexer[QM-ESP-AES-192-SHA-PFS]
1202601f7947ShshoexerPROTOCOL_ID=            IPSEC_ESP
1203601f7947ShshoexerTransforms=             QM-ESP-AES-192-SHA-PFS-XF
1204601f7947Shshoexer
1205601f7947Shshoexer[QM-ESP-AES-192-SHA-TRP]
1206601f7947ShshoexerPROTOCOL_ID=            IPSEC_ESP
1207601f7947ShshoexerTransforms=             QM-ESP-AES-192-SHA-TRP-XF
1208601f7947Shshoexer
1209601f7947Shshoexer# AES-256
1210601f7947Shshoexer
1211601f7947Shshoexer[QM-ESP-AES-256-SHA]
1212601f7947ShshoexerPROTOCOL_ID=            IPSEC_ESP
1213601f7947ShshoexerTransforms=             QM-ESP-AES-256-SHA-XF
1214601f7947Shshoexer
1215601f7947Shshoexer[QM-ESP-AES-256-SHA-PFS]
1216601f7947ShshoexerPROTOCOL_ID=            IPSEC_ESP
1217601f7947ShshoexerTransforms=             QM-ESP-AES-256-SHA-PFS-XF
1218601f7947Shshoexer
1219601f7947Shshoexer[QM-ESP-AES-256-SHA-TRP]
1220601f7947ShshoexerPROTOCOL_ID=            IPSEC_ESP
1221601f7947ShshoexerTransforms=             QM-ESP-AES-256-SHA-TRP-XF
1222601f7947Shshoexer
1223601f7947Shshoexer
12242b81057dSniklas# AH MD5
12252b81057dSniklas
12262b81057dSniklas[QM-AH-MD5]
12272b81057dSniklasPROTOCOL_ID=		IPSEC_AH
12282b81057dSniklasTransforms=		QM-AH-MD5-XF
12292b81057dSniklas
12302b81057dSniklas[QM-AH-MD5-PFS]
12312b81057dSniklasPROTOCOL_ID=		IPSEC_AH
12322b81057dSniklasTransforms=		QM-AH-MD5-PFS-XF
12332b81057dSniklas
12342b81057dSniklas# Quick mode transforms
12352b81057dSniklas
12362b81057dSniklas# 3DES
12372b81057dSniklas
12382b81057dSniklas[QM-ESP-3DES-SHA-XF]
12392b81057dSniklasTRANSFORM_ID=		3DES
12402b81057dSniklasENCAPSULATION_MODE=	TUNNEL
12412b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
124224fbfe96ShshoexerLife=			LIFE_QUICK_MODE
12432b81057dSniklas
12442b81057dSniklas[QM-ESP-3DES-SHA-PFS-XF]
12452b81057dSniklasTRANSFORM_ID=		3DES
12462b81057dSniklasENCAPSULATION_MODE=	TUNNEL
12472b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
12482b81057dSniklasGROUP_DESCRIPTION=	MODP_1024
124924fbfe96ShshoexerLife=			LIFE_QUICK_MODE
12502b81057dSniklas
12512b81057dSniklas[QM-ESP-3DES-SHA-TRP-XF]
12522b81057dSniklasTRANSFORM_ID=		3DES
12532b81057dSniklasENCAPSULATION_MODE=	TRANSPORT
12542b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
125524fbfe96ShshoexerLife=			LIFE_QUICK_MODE
12562b81057dSniklas
1257bfc24386Sniklas# AES
1258bfc24386Sniklas
1259bfc24386Sniklas[QM-ESP-AES-SHA-XF]
1260bfc24386SniklasTRANSFORM_ID=		AES
1261bfc24386SniklasENCAPSULATION_MODE=	TUNNEL
1262bfc24386SniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
1263a806508bShshoexerKEY_LENGTH=		128
126424fbfe96ShshoexerLife=			LIFE_QUICK_MODE
1265bfc24386Sniklas
1266bfc24386Sniklas[QM-ESP-AES-SHA-PFS-XF]
1267bfc24386SniklasTRANSFORM_ID=		AES
1268bfc24386SniklasENCAPSULATION_MODE=	TUNNEL
1269bfc24386SniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
1270bfc24386SniklasGROUP_DESCRIPTION=	MODP_1024
1271a806508bShshoexerKEY_LENGTH=		128
127224fbfe96ShshoexerLife=			LIFE_QUICK_MODE
1273bfc24386Sniklas
1274bfc24386Sniklas[QM-ESP-AES-SHA-TRP-XF]
1275bfc24386SniklasTRANSFORM_ID=		AES
1276bfc24386SniklasENCAPSULATION_MODE=	TRANSPORT
1277bfc24386SniklasAUTHENTICATION_ALGORITHM=	HMAC_SHA
1278a806508bShshoexerKEY_LENGTH=		128
127924fbfe96ShshoexerLife=			LIFE_QUICK_MODE
1280bfc24386Sniklas
1281601f7947Shshoexer# AES-128
1282601f7947Shshoexer
1283601f7947Shshoexer[QM-ESP-AES-128-SHA-XF]
1284601f7947ShshoexerTRANSFORM_ID=           AES
1285601f7947ShshoexerENCAPSULATION_MODE=     TUNNEL
1286601f7947ShshoexerAUTHENTICATION_ALGORITHM=       HMAC_SHA
1287601f7947ShshoexerKEY_LENGTH=             128
1288601f7947ShshoexerLife=                   LIFE_QUICK_MODE
1289601f7947Shshoexer
1290601f7947Shshoexer[QM-ESP-AES-128-SHA-PFS-XF]
1291601f7947ShshoexerTRANSFORM_ID=           AES
1292601f7947ShshoexerENCAPSULATION_MODE=     TUNNEL
1293601f7947ShshoexerAUTHENTICATION_ALGORITHM=       HMAC_SHA
1294601f7947ShshoexerGROUP_DESCRIPTION=      MODP_1024
1295601f7947ShshoexerKEY_LENGTH=             128
1296601f7947ShshoexerLife=                   LIFE_QUICK_MODE
1297601f7947Shshoexer
1298601f7947Shshoexer[QM-ESP-AES-128-SHA-TRP-XF]
1299601f7947ShshoexerTRANSFORM_ID=           AES
1300601f7947ShshoexerENCAPSULATION_MODE=     TRANSPORT
1301601f7947ShshoexerAUTHENTICATION_ALGORITHM=       HMAC_SHA
1302601f7947ShshoexerKEY_LENGTH=             128
1303601f7947ShshoexerLife=                   LIFE_QUICK_MODE
1304601f7947Shshoexer
1305601f7947Shshoexer# AES-192
1306601f7947Shshoexer
1307601f7947Shshoexer[QM-ESP-AES-192-SHA-XF]
1308601f7947ShshoexerTRANSFORM_ID=           AES
1309601f7947ShshoexerENCAPSULATION_MODE=     TUNNEL
1310601f7947ShshoexerAUTHENTICATION_ALGORITHM=       HMAC_SHA
1311601f7947ShshoexerKEY_LENGTH=             192
1312601f7947ShshoexerLife=                   LIFE_QUICK_MODE
1313601f7947Shshoexer
1314601f7947Shshoexer[QM-ESP-AES-192-SHA-PFS-XF]
1315601f7947ShshoexerTRANSFORM_ID=           AES
1316601f7947ShshoexerENCAPSULATION_MODE=     TUNNEL
1317601f7947ShshoexerAUTHENTICATION_ALGORITHM=       HMAC_SHA
1318601f7947ShshoexerGROUP_DESCRIPTION=      MODP_1024
1319601f7947ShshoexerKEY_LENGTH=             192
1320601f7947ShshoexerLife=                   LIFE_QUICK_MODE
1321601f7947Shshoexer
1322601f7947Shshoexer[QM-ESP-AES-192-SHA-TRP-XF]
1323601f7947ShshoexerTRANSFORM_ID=           AES
1324601f7947ShshoexerENCAPSULATION_MODE=     TRANSPORT
1325601f7947ShshoexerAUTHENTICATION_ALGORITHM=       HMAC_SHA
1326601f7947ShshoexerKEY_LENGTH=             192
1327601f7947ShshoexerLife=                   LIFE_QUICK_MODE
1328601f7947Shshoexer
1329601f7947Shshoexer# AES-256
1330601f7947Shshoexer
1331601f7947Shshoexer[QM-ESP-AES-256-SHA-XF]
1332601f7947ShshoexerTRANSFORM_ID=           AES
1333601f7947ShshoexerENCAPSULATION_MODE=     TUNNEL
1334601f7947ShshoexerAUTHENTICATION_ALGORITHM=       HMAC_SHA
1335601f7947ShshoexerKEY_LENGTH=             256
1336601f7947ShshoexerLife=                   LIFE_QUICK_MODE
1337601f7947Shshoexer
1338601f7947Shshoexer[QM-ESP-AES-256-SHA-PFS-XF]
1339601f7947ShshoexerTRANSFORM_ID=           AES
1340601f7947ShshoexerENCAPSULATION_MODE=     TUNNEL
1341601f7947ShshoexerAUTHENTICATION_ALGORITHM=       HMAC_SHA
1342601f7947ShshoexerGROUP_DESCRIPTION=      MODP_1024
1343601f7947ShshoexerKEY_LENGTH=             256
1344601f7947ShshoexerLife=                   LIFE_QUICK_MODE
1345601f7947Shshoexer
1346601f7947Shshoexer[QM-ESP-AES-256-SHA-TRP-XF]
1347601f7947ShshoexerTRANSFORM_ID=           AES
1348601f7947ShshoexerENCAPSULATION_MODE=     TRANSPORT
1349601f7947ShshoexerAUTHENTICATION_ALGORITHM=       HMAC_SHA
1350601f7947ShshoexerKEY_LENGTH=             256
1351601f7947ShshoexerLife=                   LIFE_QUICK_MODE
1352601f7947Shshoexer
1353601f7947Shshoexer
13542b81057dSniklas# AH
13552b81057dSniklas
13562b81057dSniklas[QM-AH-MD5-XF]
13572b81057dSniklasTRANSFORM_ID=		MD5
13582b81057dSniklasENCAPSULATION_MODE=	TUNNEL
13592b81057dSniklasAUTHENTICATION_ALGORITHM=	HMAC_MD5
136024fbfe96ShshoexerLife=			LIFE_QUICK_MODE
13612b81057dSniklas
13622b81057dSniklas[QM-AH-MD5-PFS-XF]
13632b81057dSniklasTRANSFORM_ID=		MD5
13642b81057dSniklasENCAPSULATION_MODE=	TUNNEL
13652039fcadShoGROUP_DESCRIPTION=	MODP_1024
136624fbfe96ShshoexerLife=			LIFE_QUICK_MODE
13672b81057dSniklas
136860f440ccSho[Sample-Life-Time]
13692b81057dSniklasLIFE_TYPE=		SECONDS
13702b81057dSniklasLIFE_DURATION=		3600,1800:7200
13712b81057dSniklas
137260f440ccSho[Sample-Life-Volume]
13732b81057dSniklasLIFE_TYPE=		KILOBYTES
13742b81057dSniklasLIFE_DURATION=		1000,768:1536
13752040585eSniklas.Ed
13762040585eSniklas.Sh SEE ALSO
1377b57b191eSniklas.Xr keynote 1 ,
1378ffa2dcb0Sjmc.Xr openssl 1 ,
1379dc89b21eSfgsch.Xr ipsec 4 ,
138030a2652aSniklas.Xr keynote 4 ,
138177725688Sniklas.Xr isakmpd.policy 5 ,
138210f11e23Sjmc.Xr isakmpd 8
1383830c32f9Shshoexer.Sh CAVEATS
1384830c32f9ShshoexerUsing aggressive mode is discouraged due to various design problems.
1385a4e61cf2SjsgIf your peer only supports aggressive mode, consider replacing that
1386830c32f9Shshoexerpeer with a sane ISAKMP/IKE implementation.
1387830c32f9ShshoexerFor details see
1388305b6e39Sschwarze.Lk http://www.usenix.org/publications/login/1999-12/features/harmful.html .
1389d7401508Sho.Sh BUGS
1390d7401508ShoThe RFCs do not permit differing DH groups in the same proposal for
1391d7401508Shoaggressive and quick mode exchanges.
1392d7401508ShoMixing both PFS and non-PFS suites in a quick mode proposal is not possible,
1393d7401508Shoas PFS implies using a DH group.
1394