1*52250141Smoritz.\" $OpenBSD: isakmpd.conf.5,v 1.98 2005/02/22 21:44:55 moritz 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 8887ab220eShshoexer.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} 10087ab220eShshoexer {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 10887ab220eShshoexerUnless 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. 161e0eef2f9Shshoexer.It Em Acquire-Only 162e0eef2f9ShshoexerIf this tag is defined, 163e0eef2f9Shshoexer.Nm isakmpd 164e0eef2f9Shshoexerwill not set up flows automatically. 165e0eef2f9ShshoexerThis is useful when flows are configured with 166e0eef2f9Shshoexer.Xr ipsecadm 4 167e0eef2f9Shshoexeror by other programs like 168e0eef2f9Shshoexer.Xr bgpd 8 . 169e0eef2f9ShshoexerThus 170e0eef2f9Shshoexer.Nm isakmpd 171e0eef2f9Shshoexeronly takes care of the SA establishment. 17235ff0956Sho.It Em Check-interval 173e0d722f1ShoThe interval between watchdog checks of connections we want up at all 174e0d722f1Shotimes. 175e0d722f1Sho.It Em DPD-check-interval 176e0d722f1ShoThe interval between RFC 3706 (Dead Peer Detection) messages. 177e0d722f1ShoThe default value is 0 (zero), which means DPD is disabled. 17835ff0956Sho.It Em Exchange-max-time 17935ff0956ShoHow many seconds should an exchange maximally take to set up before we 18035ff0956Shogive up. 18135ff0956Sho.It Em Listen-on 18235ff0956ShoA list of IP-addresses OK to listen on. 18335ff0956ShoThis list is used as a filter for the set of addresses the interfaces 18435ff0956Shoconfigured provides. 18535ff0956ShoThis means that we won't see if an address given here does not exist 18635ff0956Shoon this host, and thus no error is given for that case. 1874e2ad344Shshoexer.It Em Loglevel 1884e2ad344ShshoexerA list of the form 1894e2ad344Shshoexer.Ar class Ns = Ns Ar level , 1904e2ad344Shshoexerwhere both 1914e2ad344Shshoexer.Ar class 1924e2ad344Shshoexerand 1934e2ad344Shshoexer.Ar level 1944e2ad344Shshoexerare numbers. 1954e2ad344ShshoexerThis is similar to the 1964e2ad344Shshoexer.Fl D 1974e2ad344Shshoexercommand line switch of 1984e2ad344Shshoexer.Em isakmpd . 1994e2ad344ShshoexerSee 2004e2ad344Shshoexer.Xr isakmpd 8 2014e2ad344Shshoexerfor details. 2024e2ad344Shshoexer.It Em Logverbose 2034e2ad344ShshoexerIf this tag is defined, whatever the value is, verbose logging is enabled. 2044e2ad344ShshoexerThis is similar to the 2054e2ad344Shshoexer.Fl v 206235cbc01Sjmccommand line switch of 2074e2ad344Shshoexer.Em isakmpd . 2084e2ad344ShshoexerSee 2094e2ad344Shshoexer.Xr isakmpd 8 2104e2ad344Shshoexerfor details. 2110b2bcfccSho.It Em NAT-T-Keepalive 2120b2bcfccShoThe number of seconds between NAT-T keepalive messages, sent by the 213d4c8cd14Sjmcpeer behind NAT to keep the mapping active. 214d4c8cd14SjmcDefaults to 20. 215447a9f3aSho.It Em Policy-file 21680c8b3dbSniklasThe name of the file that contains 2171215c700Sjmc.Xr keynote 4 2184aac73a4Saaronpolicies. 2194aac73a4SaaronThe default is "/etc/isakmpd/isakmpd.policy". 2200b880a72Sho.It Em Pubkey-directory 2210b880a72ShoThe directory in which 2220b880a72Sho.Nm 223ac1aa35bSmpechlooks for explicitly trusted public keys. 224ac1aa35bSmpechThe default is "/etc/isakmpd/pubkeys". 225ac1aa35bSmpechRead 2260b880a72Sho.Xr isakmpd 8 2270b880a72Shofor the required naming convention of the files in here. 2284d27bb0fSho.It Em Renegotiate-on-HUP 2294d27bb0fShoIf this tag is defined, whatever the value is, 2304d27bb0fSho.Nm isakmpd 2314eb3dd62Sjmcwill renegotiate all current phase 2 SAs when the daemon receives a 2324eb3dd62Sjmc.Dv SIGHUP 2334eb3dd62Sjmcsignal, or an 2344eb3dd62Sjmc.Sq R 2354eb3dd62Sjmcis sent to the FIFO interface (see 2364d27bb0fSho.Xr isakmpd 8 ) . 23735ff0956Sho.It Em Retransmits 23835ff0956ShoHow many times should a message be retransmitted before giving up. 23935ff0956Sho.It Em Shared-SADB 24035ff0956ShoIf this tag is defined, whatever the value is, some semantics of 24135ff0956Sho.Nm 24235ff0956Shoare changed so that multiple instances can run on top of one SADB 24335ff0956Shoand set up SAs with each other. 24435ff0956ShoSpecifically this means replay 24535ff0956Shoprotection will not be asked for, and errors that can occur when 24635ff0956Shoupdating an SA with its parameters a 2nd time will be ignored. 247e0eef2f9Shshoexer.It Em Use-Keynote 248e0eef2f9ShshoexerThis tag controls the use of 249e0eef2f9Shshoexer.Xr keynote 4 250e0eef2f9Shshoexerpolicy checking. 251e0eef2f9ShshoexerThe default value is 252e0eef2f9Shshoexer.Qq yes , 253e0eef2f9Shshoexerwhich enables the policy checking. 254e0eef2f9ShshoexerWhen set to any other value, policies will not be checked. 2557a9bba63SjmcThis is useful when policies for flows and SA establishment are arranged by 256e0eef2f9Shshoexerother programs like 257e0eef2f9Shshoexer.Xr ipsecadm 8 258e0eef2f9Shshoexeror 259e0eef2f9Shshoexer.Xr bgpd 8 . 260c5fe6c4eSniklas.El 261c5fe6c4eSniklas.It Em Phase 1 262c5fe6c4eSniklasISAKMP SA negotiation parameter root 263c5fe6c4eSniklas.Bl -tag -width 12n 264c5fe6c4eSniklas.It Em <IP-address> 2659615e1d4SaaronA name of the ISAKMP peer at the given IP-address. 266cc3c8b42Sniklas.It Em Default 267ac1aa35bSmpechA name of the default ISAKMP peer. 26835ff0956ShoIncoming phase 1 connections from other IP-addresses will use this peer name. 269cc3c8b42Sniklas.It "" 2709615e1d4SaaronThis name is used as the section name for further information to be found. 2719615e1d4SaaronLook at <ISAKMP-peer> below. 272c5fe6c4eSniklas.El 273c5fe6c4eSniklas.It Em Phase 2 274c5fe6c4eSniklasIPsec SA negotiation parameter root 275c5fe6c4eSniklas.Bl -tag -width 12n 276c5fe6c4eSniklas.It Em Connections 27761d575f0SangelosA list of directed IPsec "connection" names that should be brought up 2782ddc24cbSniklasautomatically, either on first use if the system supports it, or at 2799615e1d4Saaronstartup of the daemon. 2809615e1d4SaaronThese names are section names where further information can be found. 28161d575f0SangelosLook at <IPsec-connection> below. 28244143af3SderaadtNormally any connections mentioned here are treated as part of the 28380baf197Sniklas"Passive-connection" list we present below, however there is a 2849615e1d4Saaronflag: "Active-only" that disables this behaviour. 28561d575f0SangelosThis too is mentioned in the <IPsec-connection> section, in the "Flags" tag. 28680baf197Sniklas.It Em Passive-connections 28761d575f0SangelosA list of IPsec "connection" names we recognize and accept initiations for. 2889615e1d4SaaronThese names are section names where further information can be found. 28961d575f0SangelosLook at <IPsec-connection> below. 2909615e1d4SaaronCurrently only the Local-ID and Remote-ID tags 29180baf197Sniklasare looked at in those sections, as they are matched against the IDs given 29280baf197Sniklasby the initiator. 293c5fe6c4eSniklas.El 294b57b191eSniklas.It Em KeyNote 295b57b191eSniklas.Bl -tag -width 12n 296b57b191eSniklas.It Em Credential-directory 297b57b191eSniklasA directory containing directories named after IDs (IP 2984eb3dd62Sjmcaddresses, 2994eb3dd62Sjmc.Dq user@domain , 3004eb3dd62Sjmcor hostnames) that contain files named 3014eb3dd62Sjmc.Dq credentials 3024eb3dd62Sjmcand 3034eb3dd62Sjmc.Dq private_key . 304b57b191eSniklas.Pp 305b57b191eSniklasThe credentials file contains 306b57b191eSniklas.Xr keynote 4 307b57b191eSniklascredentials that are sent to a remote IKE daemon when we use the 308b57b191eSniklasassociated ID, or credentials that we may want to consider when doing 309ac1aa35bSmpechan exchange with a remote IKE daemon that uses that ID. 310ac1aa35bSmpechNote that, in the former case, the last credential in the file 311ac1aa35bSmpechMUST contain our public key in its Licensees field. 312ac1aa35bSmpechMore than one credentials may exist in the file. 313ac1aa35bSmpechThey are separated by whitelines (the format is essentially the same as 314ac1aa35bSmpechthat of the policy file). 315ac1aa35bSmpechThe credentials are of the same format as the policies described in 316b57b191eSniklas.Xr isakmpd.policy 5 . 317b57b191eSniklasThe only difference is that the Authorizer field contains a public 318ac1aa35bSmpechkey, and the assertion is signed. 319ac1aa35bSmpechSigned assertions can be generated using the 320b57b191eSniklas.Xr keynote 1 321b57b191eSniklasutility. 322b57b191eSniklas.Pp 323b57b191eSniklasThe private_key file contains the private RSA key we use for 324ac1aa35bSmpechauthentication. 325ac1aa35bSmpechIf the directory (and the files) exist, they take precedence over X509-based 326ac1aa35bSmpechauthentication. 327b57b191eSniklas.El 328fb1921ccSniklas.It Em X509-Certificates 329fb1921ccSniklas.Bl -tag -width 12n 33035ff0956Sho.It Em Accept-self-signed 33135ff0956ShoIf this tag is defined, whatever the value is, certificates that 33235ff0956Shodo not originate from a trusted CA but are self-signed will be 33335ff0956Shoaccepted. 334fb1921ccSniklas.It Em Ca-directory 335fb1921ccSniklasA directory containing PEM certificates of certification authorities 336ac1aa35bSmpechthat we trust to sign other certificates. 337ac1aa35bSmpechNote that for a CA to be really trusted, it needs to be somehow 338ac1aa35bSmpechreferred to by policy, in 339e5814869Sangelos.Xr isakmpd.policy 5 . 340e5814869SangelosThe certificates in this directory are used for the actual X.509 341e5814869Sangelosauthentication and for cross-referencing policies that refer to 342ac1aa35bSmpechDistinguished Names (DNs). 343ac1aa35bSmpechKeeping a separate directory (as opposed to integrating policies 344ac1aa35bSmpechand X.509 CA certificates) allows for maintenance of a list of 345ac1aa35bSmpech"well known" CAs without actually having to trust all (or any) of them. 346fb1921ccSniklas.It Em Cert-directory 347fb1921ccSniklasA directory containing PEM certificates that we trust to be valid. 348fb1921ccSniklasThese certificates are used in preference to those passed in messages and 3490e2d4717Skjellare required to have a subjectAltName extension containing the certificate 3500e2d4717Skjellholder identity; usually IP address, FQDN, or User FQDN, as provided by 3510e2d4717Skjell.Xr certpatch 8 . 352954b1b31Sniklas.It Em Private-key 353954b1b31SniklasThe private key matching the public key of our certificate (which should be 3540e2d4717Skjellin the "Cert-directory", and have an appropriate subjectAltName field). 355fb1921ccSniklas.El 356c5fe6c4eSniklas.El 357c5fe6c4eSniklas.Ss Referred-to sections 358c5fe6c4eSniklas.Bl -hang -width 12n 359c5fe6c4eSniklas.It Em <ISAKMP-peer> 360c5fe6c4eSniklasParameters for negotiation with an ISAKMP peer 361c5fe6c4eSniklas.Bl -tag -width 12n 362c5fe6c4eSniklas.It Em Phase 363c5fe6c4eSniklasThe constant 364c5fe6c4eSniklas.Li 1 , 36561d575f0Sangelosas ISAKMP-peers and IPsec-connections 366c5fe6c4eSniklasreally are handled by the same code inside isakmpd. 367c5fe6c4eSniklas.It Em Transport 368cc3c8b42SniklasThe name of the transport protocol, defaults to 369cc3c8b42Sniklas.Li UDP . 370cc3c8b42Sniklas.It Em Port 371cc3c8b42SniklasIn case of 372cc3c8b42Sniklas.Li UDP , 373cc3c8b42Sniklasthe 374cc3c8b42Sniklas.Li UDP 375cc3c8b42Sniklasport number to send to. 376cc3c8b42SniklasThis is optional, the 377cc3c8b42Sniklasdefault value is 500 which is the IANA-registered number for ISAKMP. 378a2067f52Sniklas.It Em Local-address 379e2220ba8SniklasThe Local IP-address to use, if we are multi-homed, or have aliases. 380c5fe6c4eSniklas.It Em Address 381cc3c8b42SniklasIf existent, the IP-address of the peer. 382c5fe6c4eSniklas.It Em Configuration 3839615e1d4SaaronThe name of the ISAKMP-configuration section to use. 3849615e1d4SaaronLook at <ISAKMP-configuration> below. 38535ff0956ShoIf unspecified, defaults to "Default-phase-1-configuration". 386c5fe6c4eSniklas.It Em Authentication 387cc3c8b42SniklasIf existent, authentication data for this specific peer. 3889615e1d4SaaronIn the case of preshared key, this is the key value itself. 3896a8478f3Sniklas.It Em ID 3906a8478f3SniklasIf existent, the name of the section that describes the 3914aac73a4Saaronlocal client ID that we should present to our peer. 3924aac73a4SaaronIf not present, it 3936a8478f3Sniklasdefaults to the address of the local interface we are sending packets 3944aac73a4Saaronover to the remote daemon. 3954aac73a4SaaronLook at <Phase1-ID> below. 396a2067f52Sniklas.It Em Remote-ID 397a2067f52SniklasIf existent, the name of the section that describes the remote client 398a2067f52SniklasID we expect the remote daemon to send us. 399a2067f52SniklasIf not present, it defaults to the address of the remote daemon. 400a2067f52SniklasLook at <Phase1-ID> below. 4012ddc24cbSniklas.It Em Flags 4022ddc24cbSniklasA comma-separated list of flags controlling the further 4039615e1d4Saaronhandling of the ISAKMP SA. 4049615e1d4SaaronCurrently there are no specific ISAKMP SA flags defined. 405c5fe6c4eSniklas.El 4066a8478f3Sniklas.It Em <Phase1-ID> 4076a8478f3Sniklas.Bl -tag -width 12n 4086a8478f3Sniklas.It Em ID-type 409d8ca7c44ShoThe ID type as given by the RFC specifications. 41035ff0956ShoFor phase 1 this is currently 4116a8478f3Sniklas.Li IPV4_ADDR , 4126a8478f3Sniklas.Li IPV4_ADDR_SUBNET , 413d8ca7c44Sho.Li IPV6_ADDR , 414d8ca7c44Sho.Li IPV6_ADDR_SUBNET , 4156a8478f3Sniklas.Li FQDN , 416d8ca7c44Sho.Li USER_FQDN 4176a8478f3Sniklasor 4185bc978dfSangelos.Li KEY_ID . 4196a8478f3Sniklas.It Em Address 4206a8478f3SniklasIf the ID-type is 421d8ca7c44Sho.Li IPV4_ADDR 422d8ca7c44Shoor 423d8ca7c44Sho.Li IPV6_ADDR , 4246a8478f3Sniklasthis tag should exist and be an IP-address. 4256a8478f3Sniklas.It Em Network 4266a8478f3SniklasIf the ID-type is 4276a8478f3Sniklas.Li IPV4_ADDR_SUBNET 428d8ca7c44Shoor 429d8ca7c44Sho.Li IPV6_ADDR_SUBNET 4306a8478f3Sniklasthis tag should exist and 4316a8478f3Sniklasbe a network address. 4326a8478f3Sniklas.It Em Netmask 4336a8478f3SniklasIf the ID-type is 4346a8478f3Sniklas.Li IPV4_ADDR_SUBNET 435d8ca7c44Shoor 436d8ca7c44Sho.Li IPV6_ADDR_SUBNET 4376a8478f3Sniklasthis tag should exist and 4386a8478f3Sniklasbe a network subnet mask. 4396a8478f3Sniklas.It Em Name 4406a8478f3SniklasIf the ID-type is 4415bc978dfSangelos.Li FQDN , 442d8ca7c44Sho.Li USER_FQDN 4435bc978dfSangelosor 4445bc978dfSangelos.Li KEY_ID , 4455bc978dfSangelosthis tag should exist and contain a domain name, user@domain, or 4465bc978dfSangelosother identifying string respectively. 4473f167ca4Sangelos.Pp 4483f167ca4SangelosIn the case of 4493f167ca4Sangelos.Li KEY_ID , 4503f167ca4Sangelosnote that the IKE protocol allows any octet sequence to be sent or 4513f167ca4Sangelosreceived under this payload, potentially including non-printable 4523f167ca4Sangelosones. 4531215c700Sjmc.Xr isakmpd 8 4543f167ca4Sangeloscan only transmit printable 4553f167ca4Sangelos.Li KEY_ID 4563f167ca4Sangelospayloads, but can receive and process arbitrary 4573f167ca4Sangelos.Li KEY_ID 4583f167ca4Sangelospayloads. 4593f167ca4SangelosThis effectively means that non-printable 4603f167ca4Sangelos.Li KEY_ID 4613f167ca4Sangelosremote identities cannot be verified through this means, although it 4623f167ca4Sangelosis still possible to do so through 4633f167ca4Sangelos.Xr isakmpd.policy 5 . 4646a8478f3Sniklas.El 465c5fe6c4eSniklas.It Em <ISAKMP-configuration> 466c5fe6c4eSniklas.Bl -tag -width 12n 467c5fe6c4eSniklas.It Em DOI 4689615e1d4SaaronThe domain of interpretation as given by the RFCs. 4699615e1d4SaaronNormally 470c5fe6c4eSniklas.Li IPSEC . 471b57b191eSniklasIf unspecified, defaults to 472b57b191eSniklas.Li IPSEC . 473c5fe6c4eSniklas.It Em EXCHANGE_TYPE 4749615e1d4SaaronThe exchange type as given by the RFCs. 4759615e1d4SaaronFor main mode this is 4769f078bd8Sniklas.Li ID_PROT 4779f078bd8Sniklasand for aggressive mode it is 4789f078bd8Sniklas.Li AGGRESSIVE . 479c5fe6c4eSniklas.It Em Transforms 480c5fe6c4eSniklasA list of proposed transforms to use for protecting the 4819615e1d4SaaronISAKMP traffic. 4829615e1d4SaaronThese are actually names for sections 4839615e1d4Saaronfurther describing the transforms. 4849615e1d4SaaronLook at <ISAKMP-transform> below. 485c5fe6c4eSniklas.El 486c5fe6c4eSniklas.It Em <ISAKMP-transform> 487c5fe6c4eSniklas.Bl -tag -width 12n 488c5fe6c4eSniklas.It Em ENCRYPTION_ALGORITHM 489850f7173SniklasThe encryption algorithm as the RFCs name it, or ANY to denote that any 490850f7173Sniklasencryption algorithm proposed will be accepted. 491c5fe6c4eSniklas.It Em KEY_LENGTH 492c5fe6c4eSniklasFor encryption algorithms with variable key length, this is 4939615e1d4Saaronwhere the offered/accepted keylengths are described. 4949615e1d4SaaronThe value is of the offer-accept kind described above. 495c5fe6c4eSniklas.It Em HASH_ALGORITHM 496850f7173SniklasThe hash algorithm as the RFCs name it, or ANY. 497c5fe6c4eSniklas.It Em AUTHENTICATION_METHOD 498850f7173SniklasThe authentication method as the RFCs name it, or ANY. 499c5fe6c4eSniklas.It Em GROUP_DESCRIPTION 5009615e1d4SaaronThe group used for Diffie-Hellman exponentiations, or ANY. 50144143af3SderaadtThe names are symbolic, like 502c5fe6c4eSniklas.Li MODP_768 , MODP_1024 , EC_155 503c5fe6c4eSniklasand 504c5fe6c4eSniklas.Li EC_185 . 505850f7173Sniklas.It Em PRF 506850f7173SniklasThe algorithm to use for the keyed pseudo-random function (used for key 50735ff0956Shoderivation and authentication in phase 1), or ANY. 508c5fe6c4eSniklas.It Em Life 5094aac73a4SaaronA list of lifetime descriptions, or ANY. 5104aac73a4SaaronIn the former case, each 511850f7173Sniklaselement is in itself a name of the section that defines the lifetime. 5124aac73a4SaaronLook at <Lifetime> below. 5134aac73a4SaaronIf it is set to ANY, then any type of 514850f7173Sniklasproposed lifetime type and value will be accepted. 515c5fe6c4eSniklas.El 516c5fe6c4eSniklas.It Em <Lifetime> 517c5fe6c4eSniklas.Bl -tag -width 12n 518c5fe6c4eSniklas.It Em LIFE_TYPE 519c5fe6c4eSniklas.Li SECONDS 520c5fe6c4eSniklasor 521e55ca143Sniklas.Li KILOBYTES 5224aac73a4Saarondepending on the type of the duration. 5234aac73a4SaaronNotice that this field may NOT be set to ANY. 524c5fe6c4eSniklas.It Em LIFE_DURATION 5254aac73a4SaaronAn offer/accept kind of value, see above. 5264aac73a4SaaronCan also be set to ANY. 527c5fe6c4eSniklas.El 52861d575f0Sangelos.It Em <IPsec-connection> 529c5fe6c4eSniklas.Bl -tag -width 12n 530c5fe6c4eSniklas.It Em Phase 531c5fe6c4eSniklasThe constant 532c5fe6c4eSniklas.Li 2 , 53361d575f0Sangelosas ISAKMP-peers and IPsec-connections 534c5fe6c4eSniklasreally are handled by the same code inside isakmpd. 535c5fe6c4eSniklas.It Em ISAKMP-peer 536c5fe6c4eSniklasThe name of the ISAKMP-peer which to talk to in order to 5379615e1d4Saaronset up this connection. 5389615e1d4SaaronThe value is the name of an <ISAKMP-peer> section. 5399615e1d4SaaronSee above. 540c5fe6c4eSniklas.It Em Configuration 54161d575f0SangelosThe name of the IPsec-configuration section to use. 54261d575f0SangelosLook at <IPsec-configuration> below. 543c5fe6c4eSniklas.It Em Local-ID 544c5fe6c4eSniklasIf existent, the name of the section that describes the 545c5fe6c4eSniklasoptional local client ID that we should present to our peer. 54680baf197SniklasIt is also used when we act as responders to find out what 54761d575f0Sangelos<IPsec-connection> we are dealing with. 54861d575f0SangelosLook at <IPsec-ID> below. 549c5fe6c4eSniklas.It Em Remote-ID 550c5fe6c4eSniklasIf existent, the name of the section that describes the 551c5fe6c4eSniklasoptional remote client ID that we should present to our peer. 55280baf197SniklasIt is also used when we act as responders to find out what 55361d575f0Sangelos<IPsec-connection> we are dealing with. 55461d575f0SangelosLook at <IPsec-ID> below. 55513a99464Sniklas.It Em Flags 55613a99464SniklasA comma-separated list of flags controlling the further 55761d575f0Sangeloshandling of the IPsec SA. 5589615e1d4SaaronCurrently only one flag is defined: 55980baf197Sniklas.Bl -tag -width 12n 56080baf197Sniklas.It Em Active-only 56161d575f0SangelosIf this flag is given and this <IPsec-connection> is part of the phase 2 56280baf197Sniklasconnections we automatically keep up, it will not automatically be used for 56380baf197Sniklasaccepting connections from the peer. 56480baf197Sniklas.El 565c5fe6c4eSniklas.El 56661d575f0Sangelos.It Em <IPsec-configuration> 567c5fe6c4eSniklas.Bl -tag -width 12n 568c5fe6c4eSniklas.It Em DOI 5699615e1d4SaaronThe domain of interpretation as given by the RFCs. 5709615e1d4SaaronNormally 571c5fe6c4eSniklas.Li IPSEC . 572b57b191eSniklasIf unspecified, defaults to 573b57b191eSniklas.Li IPSEC . 574c5fe6c4eSniklas.It Em EXCHANGE_TYPE 5759615e1d4SaaronThe exchange type as given by the RFCs. 5769615e1d4SaaronFor quick mode this is 577c5fe6c4eSniklas.Li QUICK_MODE . 578c5fe6c4eSniklas.It Em Suites 5793b2a0cf1SaaronA list of protection suites (bundles of protocols) usable for 5809615e1d4Saaronprotecting the IP traffic. 58161d575f0SangelosEach of the list elements is a name of an <IPsec-suite> section. 5829615e1d4SaaronSee below. 583c5fe6c4eSniklas.El 58461d575f0Sangelos.It Em <IPsec-suite> 585c5fe6c4eSniklas.Bl -tag -width 12n 586c5fe6c4eSniklas.It Em Protocols 587c5fe6c4eSniklasA list of the protocols included in this protection suite. 58861d575f0SangelosEach of the list elements is a name of an <IPsec-protocol> 5899615e1d4Saaronsection. 5909615e1d4SaaronSee below. 591c5fe6c4eSniklas.El 59261d575f0Sangelos.It Em <IPsec-protocol> 593c5fe6c4eSniklas.Bl -tag -width 12n 594c5fe6c4eSniklas.It Em PROTOCOL_ID 5959615e1d4SaaronThe protocol as given by the RFCs. 5969615e1d4SaaronAcceptable values today are 597c5fe6c4eSniklas.Li IPSEC_AH 598c5fe6c4eSniklasand 599c5fe6c4eSniklas.Li IPSEC_ESP . 600c5fe6c4eSniklas.It Em Transforms 6013b2a0cf1SaaronA list of transforms usable for implementing the protocol. 60261d575f0SangelosEach of the list elements is a name of an <IPsec-transform> 6039615e1d4Saaronsection. 6049615e1d4SaaronSee below. 605c5fe6c4eSniklas.It Em ReplayWindow 6069615e1d4SaaronThe size of the window used for replay protection. 6079615e1d4SaaronThis is normally left alone. 6089615e1d4SaaronLook at the 609c5fe6c4eSniklas.Nm ESP 610c5fe6c4eSniklasand 611c5fe6c4eSniklas.Nm AH 612c5fe6c4eSniklasRFCs for a better description. 613c5fe6c4eSniklas.El 61461d575f0Sangelos.It Em <IPsec-transform> 615c5fe6c4eSniklas.Bl -tag -width 12n 616c5fe6c4eSniklas.It Em TRANSFORM_ID 617c5fe6c4eSniklasThe transform ID as given by the RFCs. 618c5fe6c4eSniklas.It Em ENCAPSULATION_MODE 6199615e1d4SaaronThe encapsulation mode as given by the RFCs. 6209615e1d4SaaronThis means TRANSPORT or TUNNEL. 621c5fe6c4eSniklas.It Em AUTHENTICATION_ALGORITHM 622c5fe6c4eSniklasThe optional authentication algorithm in the case of this 623c5fe6c4eSniklasbeing an ESP transform. 624c5fe6c4eSniklas.It Em GROUP_DESCRIPTION 625c5fe6c4eSniklasAn optional (provides PFS if present) Diffie-Hellman group 6269615e1d4Saarondescription. 6279615e1d4SaaronThe values are the same as GROUP_DESCRIPTION's 628c5fe6c4eSniklasin <ISAKMP-transform> sections shown above. 629c5fe6c4eSniklas.It Em Life 630c5fe6c4eSniklasList of lifetimes, each element is a <Lifetime> section name. 631c5fe6c4eSniklas.El 63261d575f0Sangelos.It Em <IPsec-ID> 633c5fe6c4eSniklas.Bl -tag -width 12n 634c5fe6c4eSniklas.It Em ID-type 6359615e1d4SaaronThe ID type as given by the RFCs. 63661d575f0SangelosFor IPsec this is currently 637d8ca7c44Sho.Li IPV4_ADDR , 638d8ca7c44Sho.Li IPV6_ADDR , 639d8ca7c44Sho.Li IPV4_ADDR_SUBNET 640c5fe6c4eSniklasor 641d8ca7c44Sho.Li IPV6_ADDR_SUBNET . 642c5fe6c4eSniklas.It Em Address 643c5fe6c4eSniklasIf the ID-type is 644d8ca7c44Sho.Li IPV4_ADDR 645d8ca7c44Shoor 646d8ca7c44Sho.Li IPV6_ADDR 647e3283cbfSmcbridethis tag should exist and be an IP-address, an interface name, or the 648e3283cbfSmcbride.Em default 649e3283cbfSmcbridekeyword. 650e3283cbfSmcbrideIf an interface is used, the first address of the appropriate 651e3283cbfSmcbridefamily will be used. 652e3283cbfSmcbrideThe 653e3283cbfSmcbride.Em default 654e3283cbfSmcbridekeyword uses the interface associated with the default route. 655e3283cbfSmcbrideIn the case of IPv6 link-local addresses will be skipped if 656e3283cbfSmcbrideaddresses which are not link-local exist. 657e3283cbfSmcbrideIf the address on the interface changes 658e3283cbfSmcbride.Em isakmpd 659e3283cbfSmcbridewill not track the change. 660e3283cbfSmcbrideThe configuration must be reloaded to learn the new address. 661c5fe6c4eSniklas.It Em Network 662c5fe6c4eSniklasIf the ID-type is 663c5fe6c4eSniklas.Li IPV4_ADDR_SUBNET 664d8ca7c44Shoor 665d8ca7c44Sho.Li IPV6_ADDR_SUBNET 666e3283cbfSmcbridethis tag should exist and be a network address, an interface, or the 667e3283cbfSmcbride.Em default 668e3283cbfSmcbridekeyword. 669e3283cbfSmcbrideWhen an interface is specified the network is selected as with the 670e3283cbfSmcbride.Em Address 671e3283cbfSmcbridetag. 672c5fe6c4eSniklas.It Em Netmask 673c5fe6c4eSniklasIf the ID-type is 674c5fe6c4eSniklas.Li IPV4_ADDR_SUBNET 675d8ca7c44Shoor 676d8ca7c44Sho.Li IPV6_ADDR_SUBNET 677c5fe6c4eSniklasthis tag should exist and 678e3283cbfSmcbridebe a network subnet mask or an interface. 679e3283cbfSmcbrideWhen an interface is specified the netmask is the mask associated with the 680e3283cbfSmcbride.Em Network . 681e3283cbfSmcbrideThe 682e3283cbfSmcbride.Em default 683e3283cbfSmcbridekeyword uses the interface associated with the default route. 6840378d1f2Sniklas.It Em Protocol 6850378d1f2SniklasIf the ID-type is 686d8ca7c44Sho.Li IPV4_ADDR , 6870378d1f2Sniklas.Li IPV4_ADDR_SUBNET , 688d8ca7c44Sho.Li IPV6_ADDR 689d8ca7c44Shoor 690d8ca7c44Sho.Li IPV6_ADDR_SUBNET 6910378d1f2Sniklasthis tag indicates what transport protocol should be transmitted over 6920378d1f2Sniklasthe SA. 6930378d1f2SniklasIf left unspecified, all transport protocols between the two address 6940378d1f2Sniklas(ranges) will be sent (or permitted) over that SA. 6950378d1f2Sniklas.It Em Port 6960378d1f2SniklasIf the ID-type is 697d8ca7c44Sho.Li IPV4_ADDR , 6980378d1f2Sniklas.Li IPV4_ADDR_SUBNET , 699d8ca7c44Sho.Li IPV6_ADDR 700d8ca7c44Shoor 701d8ca7c44Sho.Li IPV6_ADDR_SUBNET 7020378d1f2Sniklasthis tag indicates what source or destination port is allowed to be 7030378d1f2Sniklastransported over the SA (depending on whether this is a local or 7040378d1f2Sniklasremote ID). 7050378d1f2SniklasIf left unspecified, all ports of the given transport protocol 7060378d1f2Sniklaswill be transmitted (or permitted) over the SA. 7070378d1f2SniklasThe Protocol tag must be specified in conjunction with this tag. 708c5fe6c4eSniklas.El 709c5fe6c4eSniklas.El 7104ca71560Sho.Ss Other sections 7114ca71560Sho.Bl -hang -width 12n 7124ca71560Sho.It Em <IKECFG-ID> 7134eb3dd62SjmcParameters to use with IKE mode-config. 7144eb3dd62SjmcOne ID per peer. 7154ca71560Sho.Pp 7164ca71560ShoAn IKECFG-ID is written as [<ID-type>/<name>]. 7174ca71560ShoThe following ID types are supported: 7184ca71560Sho.Bl -tag -width 12n 7194ca71560Sho.It IPv4 7204ca71560Sho[ipv4/A.B.C.D] 7214ca71560Sho.It IPv6 7224ca71560Sho[ipv6/abcd:abcd::ab:cd] 7234ca71560Sho.It FQDN 7244ca71560Sho[fqdn/foo.bar.org] 7254ca71560Sho.It UFQDN 7264ca71560Sho[ufqdn/user@foo.bar.org] 7274ca71560Sho.It ASN1_DN 7284ca71560Sho[asn1_dn//C=aa/O=cc/...] (Note the double slashes as the DN itself 7294eb3dd62Sjmcstarts with a 7304eb3dd62Sjmc.Sq / . ) 7314ca71560Sho.El 7324ca71560Sho.Pp 7334ca71560ShoEach section specifies what configuration values to return to the peer 7344eb3dd62Sjmcrequesting IKE mode-config. 7354eb3dd62SjmcCurrently supported values are: 7364ca71560Sho.Bl -tag -width 12n 7374ca71560Sho.It Em Address 7384ca71560ShoThe peer's network address. 7394ca71560Sho.It Em Netmask 7404ca71560ShoThe peer's netmask. 7414ca71560Sho.It Em Nameserver 7424ca71560ShoThe IP address of a DNS nameserver. 7434ca71560Sho.It Em WINS-server 7444ca71560ShoThe IP address of a WINS server. 7454ca71560Sho.El 746106cbd59Smarkus.It Em <Initiator-ID> 747106cbd59Smarkus.Pp 748106cbd59SmarkusDuring phase 1 negotiation 749106cbd59Smarkus.Nm isakmpd 750106cbd59Smarkuslooks for a pre-shared key in the <ISAKMP-peer> section. 751106cbd59SmarkusIf no Authentication data is specified in that section, and 752106cbd59Smarkus.Nm isakmpd 753106cbd59Smarkusis not the initiator, it looks for Authentication data in a section named after 754106cbd59Smarkusthe initiator's phase 1 ID. 755106cbd59SmarkusThis allows mobile users with dynamic IP addresses 756106cbd59Smarkusto have different shared secrets. 757106cbd59Smarkus.Pp 758106cbd59SmarkusThis only works for aggressive mode because in main mode the remote 759106cbd59Smarkusinitiator ID would not yet be known. 760830c32f9ShshoexerNote, however, that use of aggressive mode is discouraged. 761830c32f9ShshoexerSee 762830c32f9Shshoexer.Sx CAVEATS 763830c32f9Shshoexersection below. 764106cbd59Smarkus.Pp 765106cbd59SmarkusThe name of the <Initiator-ID> section depends on the ID type sent by 766106cbd59Smarkusthe initiator. 767106cbd59SmarkusCurrently this can be: 768106cbd59Smarkus.Bl -tag -width 12n 769106cbd59Smarkus.It IPv4 770106cbd59Smarkus[A.B.C.D] 771106cbd59Smarkus.It IPv6 772106cbd59Smarkus[abcd:abcd::ab:cd] 773106cbd59Smarkus.It FQDN 774106cbd59Smarkus[foo.bar.org] 775106cbd59Smarkus.It UFQDN 776106cbd59Smarkus[user@foo.bar.org] 777106cbd59Smarkus.El 7784ca71560Sho.El 7792b65e200Sjmc.Sh FILES 7802b65e200Sjmc.Bl -tag -width /etc/isakmpd/isakmpd.conf 7812b65e200Sjmc.It Pa /etc/isakmpd/isakmpd.conf 7822b65e200SjmcThe default 7832b65e200Sjmc.Nm isakmpd 7842b65e200Sjmcconfiguration file. 7852b65e200Sjmc.It Pa /usr/share/ipsec/isakmpd/ 7862b65e200SjmcA directory containing some sample 7872b65e200Sjmc.Nm isakmpd 7882b65e200Sjmcconfiguration files. 7892b65e200Sjmc.El 79000b2ba71Saaron.Sh EXAMPLES 7912040585eSniklasAn example of a configuration file: 7922040585eSniklas.Bd -literal 7932040585eSniklas# A configuration sample for the isakmpd ISAKMP/Oakley (aka IKE) daemon. 7942040585eSniklas 7952040585eSniklas[General] 796c5fe6c4eSniklasListen-on= 10.1.0.2 7972040585eSniklas 798c5fe6c4eSniklas# Incoming phase 1 negotiations are multiplexed on the source IP address 7992b81057dSniklas[Phase 1] 800c5fe6c4eSniklas10.1.0.1= ISAKMP-peer-west 8012b81057dSniklas 802c5fe6c4eSniklas# These connections are walked over after config file parsing and told 803c5fe6c4eSniklas# to the application layer so that it will inform us when traffic wants to 804*52250141Smoritz# pass over them. This means we can do on-demand keying. 805c5fe6c4eSniklas[Phase 2] 806c5fe6c4eSniklasConnections= IPsec-east-west 807c5fe6c4eSniklas 808cc3c8b42Sniklas# Default values are commented out. 809c5fe6c4eSniklas[ISAKMP-peer-west] 8102b81057dSniklasPhase= 1 811cc3c8b42Sniklas#Transport= udp 812f6dd85a7SniklasLocal-address= 10.1.0.2 8132b81057dSniklasAddress= 10.1.0.1 8142b81057dSniklas#Port= isakmp 8152b81057dSniklas#Port= 500 81635ff0956Sho#Configuration= Default-phase-1-configuration 8172b81057dSniklasAuthentication= mekmitasdigoat 818cc3c8b42Sniklas#Flags= 8192b81057dSniklas 820c5fe6c4eSniklas[IPsec-east-west] 8212b81057dSniklasPhase= 2 822c5fe6c4eSniklasISAKMP-peer= ISAKMP-peer-west 8232b81057dSniklasConfiguration= Default-quick-mode 824c5fe6c4eSniklasLocal-ID= Net-east 825c5fe6c4eSniklasRemote-ID= Net-west 826cc3c8b42Sniklas#Flags= 8272b81057dSniklas 828c5fe6c4eSniklas[Net-west] 8292b81057dSniklasID-type= IPV4_ADDR_SUBNET 8302b81057dSniklasNetwork= 192.168.1.0 8312b81057dSniklasNetmask= 255.255.255.0 8322b81057dSniklas 833c5fe6c4eSniklas[Net-east] 8342b81057dSniklasID-type= IPV4_ADDR_SUBNET 8352b81057dSniklasNetwork= 192.168.2.0 8362b81057dSniklasNetmask= 255.255.255.0 8372b81057dSniklas 83852e712aeSniklas# Quick mode descriptions 83952e712aeSniklas 84052e712aeSniklas[Default-quick-mode] 84152e712aeSniklasEXCHANGE_TYPE= QUICK_MODE 8421a87c1a3ShoSuites= QM-ESP-3DES-SHA-PFS-SUITE,QM-ESP-AES-SHA-PFS-SUITE 84352e712aeSniklas 8444ca71560Sho# Data for an IKE mode-config peer 8454ca71560Sho[asn1_dn//C=SE/L=SomeCity/O=SomeCompany/CN=SomePeer.company.com] 8464ca71560ShoAddress= 192.168.1.123 8474ca71560ShoNetmask= 255.255.255.0 8484ca71560ShoNameserver= 192.168.1.10 8494ca71560ShoWINS-server= 192.168.1.11 8504ca71560Sho 851106cbd59Smarkus# pre-shared key based on initiator's phase 1 ID 852106cbd59Smarkus[foo.bar.org] 853106cbd59SmarkusAuthentication= mekmitasdigoat 854106cbd59Smarkus 85552e712aeSniklas# 85652e712aeSniklas# ##################################################################### 85744143af3Sderaadt# All configuration data below this point is not required as the example 85852e712aeSniklas# uses the predefined Main Mode transform and Quick Mode suite names. 85952e712aeSniklas# It is included here for completeness. Note the default values for the 86052e712aeSniklas# [General] and [X509-certificates] sections just below. 86152e712aeSniklas# ##################################################################### 86252e712aeSniklas# 86352e712aeSniklas 86452e712aeSniklas[General] 865447a9f3aShoPolicy-file= /etc/isakmpd/isakmpd.policy 86652e712aeSniklasRetransmits= 3 86752e712aeSniklasExchange-max-time= 120 86852e712aeSniklas 869b57b191eSniklas# KeyNote credential storage 870b57b191eSniklas[KeyNote] 871b57b191eSniklasCredential-directory= /etc/isakmpd/keynote/ 872b57b191eSniklas 873fb1921ccSniklas# Certificates stored in PEM format 874fb1921ccSniklas[X509-certificates] 875fb1921ccSniklasCA-directory= /etc/isakmpd/ca/ 876fb1921ccSniklasCert-directory= /etc/isakmpd/certs/ 8779dbe9fb4ShoCRL-directory= /etc/isakmpd/crls/ 878954b1b31SniklasPrivate-key= /etc/isakmpd/private/local.key 879fb1921ccSniklas 880419caefeSho# Default phase 1 description (Main Mode) 881419caefeSho 88235ff0956Sho[Default-phase-1-configuration] 883419caefeShoEXCHANGE_TYPE= ID_PROT 884419caefeShoTransforms= 3DES-SHA 885419caefeSho 8862b81057dSniklas# Main mode transforms 8872b81057dSniklas###################### 8882b81057dSniklas 8892b81057dSniklas# DES 8902040585eSniklas 8912040585eSniklas[DES-MD5] 8922040585eSniklasENCRYPTION_ALGORITHM= DES_CBC 8932040585eSniklasHASH_ALGORITHM= MD5 8942040585eSniklasAUTHENTICATION_METHOD= PRE_SHARED 8952039fcadShoGROUP_DESCRIPTION= MODP_1024 89660f440ccShoLife= Default-phase-1-lifetime 8972040585eSniklas 8982b81057dSniklas[DES-SHA] 8992b81057dSniklasENCRYPTION_ALGORITHM= DES_CBC 9002b81057dSniklasHASH_ALGORITHM= SHA 9012b81057dSniklasAUTHENTICATION_METHOD= PRE_SHARED 90260f440ccShoGROUP_DESCRIPTION= MODP_1024 90360f440ccShoLife= Default-phase-1-lifetime 9042b81057dSniklas 9052b81057dSniklas# 3DES 9062b81057dSniklas 9072b81057dSniklas[3DES-SHA] 9082b81057dSniklasENCRYPTION_ALGORITHM= 3DES_CBC 9092040585eSniklasHASH_ALGORITHM= SHA 9102040585eSniklasAUTHENTICATION_METHOD= PRE_SHARED 9112040585eSniklasGROUP_DESCRIPTION= MODP_1024 91260f440ccShoLife= Default-phase-1-lifetime 9132b81057dSniklas 9142b81057dSniklas# Blowfish 9152b81057dSniklas 91660f440ccSho[BLF-SHA] 9172b81057dSniklasENCRYPTION_ALGORITHM= BLOWFISH_CBC 9182b81057dSniklasKEY_LENGTH= 128,96:192 9192b81057dSniklasHASH_ALGORITHM= SHA 9202b81057dSniklasAUTHENTICATION_METHOD= PRE_SHARED 9212b81057dSniklasGROUP_DESCRIPTION= MODP_1024 92260f440ccShoLife= Default-phase-1-lifetime 9232040585eSniklas 92460f440ccSho# Blowfish, using DH group 4 (non-default) 9252040585eSniklas[BLF-SHA-EC185] 926d70ca5f7SniklasENCRYPTION_ALGORITHM= BLOWFISH_CBC 9272b81057dSniklasKEY_LENGTH= 128,96:192 9282040585eSniklasHASH_ALGORITHM= SHA 9292040585eSniklasAUTHENTICATION_METHOD= PRE_SHARED 9302040585eSniklasGROUP_DESCRIPTION= EC2N_185 93160f440ccShoLife= Default-phase-1-lifetime 9322040585eSniklas 9332b81057dSniklas# Quick mode protection suites 9342b81057dSniklas############################## 9352b81057dSniklas 9362b81057dSniklas# DES 9372040585eSniklas 938d70ca5f7Sniklas[QM-ESP-DES-SUITE] 939d70ca5f7SniklasProtocols= QM-ESP-DES 940d70ca5f7Sniklas 9412b81057dSniklas[QM-ESP-DES-PFS-SUITE] 9422b81057dSniklasProtocols= QM-ESP-DES-PFS 9432b81057dSniklas 9442040585eSniklas[QM-ESP-DES-MD5-SUITE] 9452040585eSniklasProtocols= QM-ESP-DES-MD5 9462040585eSniklas 9472b81057dSniklas[QM-ESP-DES-MD5-PFS-SUITE] 9482b81057dSniklasProtocols= QM-ESP-DES-MD5-PFS 9492040585eSniklas 9502b81057dSniklas[QM-ESP-DES-SHA-SUITE] 9512b81057dSniklasProtocols= QM-ESP-DES-SHA 9522040585eSniklas 9532b81057dSniklas[QM-ESP-DES-SHA-PFS-SUITE] 9542b81057dSniklasProtocols= QM-ESP-DES-SHA-PFS 9552040585eSniklas 9562b81057dSniklas# 3DES 9572b81057dSniklas 9582b81057dSniklas[QM-ESP-3DES-SHA-SUITE] 9592b81057dSniklasProtocols= QM-ESP-3DES-SHA 9602b81057dSniklas 9612b81057dSniklas[QM-ESP-3DES-SHA-PFS-SUITE] 9622b81057dSniklasProtocols= QM-ESP-3DES-SHA-PFS 9632b81057dSniklas 964bfc24386Sniklas# AES 965bfc24386Sniklas 966bfc24386Sniklas[QM-ESP-AES-SHA-SUITE] 967bfc24386SniklasProtocols= QM-ESP-AES-SHA 968bfc24386Sniklas 96960f440ccSho[QM-ESP-AES-SHA-PFS-SUITE] 970bfc24386SniklasProtocols= QM-ESP-AES-SHA-PFS 971bfc24386Sniklas 9722b81057dSniklas# AH 9732b81057dSniklas 9742b81057dSniklas[QM-AH-MD5-SUITE] 9752b81057dSniklasProtocols= QM-AH-MD5 9762b81057dSniklas 9772b81057dSniklas[QM-AH-MD5-PFS-SUITE] 9782b81057dSniklasProtocols= QM-AH-MD5-PFS 9792b81057dSniklas 98060f440ccSho# AH + ESP (non-default) 9812040585eSniklas 9822040585eSniklas[QM-AH-MD5-ESP-DES-SUITE] 9832040585eSniklasProtocols= QM-AH-MD5,QM-ESP-DES 9842040585eSniklas 9852b81057dSniklas[QM-AH-MD5-ESP-DES-MD5-SUITE] 9862b81057dSniklasProtocols= QM-AH-MD5,QM-ESP-DES-MD5 9872040585eSniklas 9882b81057dSniklas[QM-ESP-DES-MD5-AH-MD5-SUITE] 9892b81057dSniklasProtocols= QM-ESP-DES-MD5,QM-AH-MD5 9902b81057dSniklas 9912b81057dSniklas# Quick mode protocols 9922b81057dSniklas 9932b81057dSniklas# DES 9942040585eSniklas 9952040585eSniklas[QM-ESP-DES] 9962040585eSniklasPROTOCOL_ID= IPSEC_ESP 9972040585eSniklasTransforms= QM-ESP-DES-XF 9982040585eSniklas 9992b81057dSniklas[QM-ESP-DES-MD5] 10002b81057dSniklasPROTOCOL_ID= IPSEC_ESP 10012b81057dSniklasTransforms= QM-ESP-DES-MD5-XF 10022b81057dSniklas 10032b81057dSniklas[QM-ESP-DES-MD5-PFS] 10042b81057dSniklasPROTOCOL_ID= IPSEC_ESP 10052b81057dSniklasTransforms= QM-ESP-DES-MD5-PFS-XF 10062b81057dSniklas 10072b81057dSniklas[QM-ESP-DES-SHA] 10082b81057dSniklasPROTOCOL_ID= IPSEC_ESP 10092b81057dSniklasTransforms= QM-ESP-DES-SHA-XF 10102b81057dSniklas 10112b81057dSniklas# 3DES 10122b81057dSniklas 10132b81057dSniklas[QM-ESP-3DES-SHA] 10142b81057dSniklasPROTOCOL_ID= IPSEC_ESP 10152b81057dSniklasTransforms= QM-ESP-3DES-SHA-XF 10162b81057dSniklas 10172b81057dSniklas[QM-ESP-3DES-SHA-PFS] 10182b81057dSniklasPROTOCOL_ID= IPSEC_ESP 10192b81057dSniklasTransforms= QM-ESP-3DES-SHA-PFS-XF 10202b81057dSniklas 10212b81057dSniklas[QM-ESP-3DES-SHA-TRP] 10222b81057dSniklasPROTOCOL_ID= IPSEC_ESP 10232b81057dSniklasTransforms= QM-ESP-3DES-SHA-TRP-XF 10242b81057dSniklas 1025bfc24386Sniklas# AES 1026bfc24386Sniklas 1027bfc24386Sniklas[QM-ESP-AES-SHA] 1028bfc24386SniklasPROTOCOL_ID= IPSEC_ESP 1029bfc24386SniklasTransforms= QM-ESP-AES-SHA-XF 1030bfc24386Sniklas 1031bfc24386Sniklas[QM-ESP-AES-SHA-PFS] 1032bfc24386SniklasPROTOCOL_ID= IPSEC_ESP 1033bfc24386SniklasTransforms= QM-ESP-AES-SHA-PFS-XF 1034bfc24386Sniklas 1035bfc24386Sniklas[QM-ESP-AES-SHA-TRP] 1036bfc24386SniklasPROTOCOL_ID= IPSEC_ESP 1037bfc24386SniklasTransforms= QM-ESP-AES-SHA-TRP-XF 1038bfc24386Sniklas 10392b81057dSniklas# AH MD5 10402b81057dSniklas 10412b81057dSniklas[QM-AH-MD5] 10422b81057dSniklasPROTOCOL_ID= IPSEC_AH 10432b81057dSniklasTransforms= QM-AH-MD5-XF 10442b81057dSniklas 10452b81057dSniklas[QM-AH-MD5-PFS] 10462b81057dSniklasPROTOCOL_ID= IPSEC_AH 10472b81057dSniklasTransforms= QM-AH-MD5-PFS-XF 10482b81057dSniklas 10492b81057dSniklas# Quick mode transforms 10502b81057dSniklas 10512b81057dSniklas# ESP DES+MD5 10522b81057dSniklas 10532040585eSniklas[QM-ESP-DES-XF] 10542040585eSniklasTRANSFORM_ID= DES 10552040585eSniklasENCAPSULATION_MODE= TUNNEL 105660f440ccShoLife= Default-phase-2-lifetime 10572040585eSniklas 10582b81057dSniklas[QM-ESP-DES-MD5-XF] 10592b81057dSniklasTRANSFORM_ID= DES 10602b81057dSniklasENCAPSULATION_MODE= TUNNEL 10612b81057dSniklasAUTHENTICATION_ALGORITHM= HMAC_MD5 106260f440ccShoLife= Default-phase-2-lifetime 10632b81057dSniklas 10642b81057dSniklas[QM-ESP-DES-MD5-PFS-XF] 10652b81057dSniklasTRANSFORM_ID= DES 10662b81057dSniklasENCAPSULATION_MODE= TUNNEL 10672039fcadShoGROUP_DESCRIPTION= MODP_1024 10682b81057dSniklasAUTHENTICATION_ALGORITHM= HMAC_MD5 106960f440ccShoLife= Default-phase-2-lifetime 10702b81057dSniklas 10712b81057dSniklas[QM-ESP-DES-SHA-XF] 10722b81057dSniklasTRANSFORM_ID= DES 10732b81057dSniklasENCAPSULATION_MODE= TUNNEL 10742b81057dSniklasAUTHENTICATION_ALGORITHM= HMAC_SHA 107560f440ccShoLife= Default-phase-2-lifetime 10762b81057dSniklas 10772b81057dSniklas# 3DES 10782b81057dSniklas 10792b81057dSniklas[QM-ESP-3DES-SHA-XF] 10802b81057dSniklasTRANSFORM_ID= 3DES 10812b81057dSniklasENCAPSULATION_MODE= TUNNEL 10822b81057dSniklasAUTHENTICATION_ALGORITHM= HMAC_SHA 108360f440ccShoLife= Default-phase-2-lifetime 10842b81057dSniklas 10852b81057dSniklas[QM-ESP-3DES-SHA-PFS-XF] 10862b81057dSniklasTRANSFORM_ID= 3DES 10872b81057dSniklasENCAPSULATION_MODE= TUNNEL 10882b81057dSniklasAUTHENTICATION_ALGORITHM= HMAC_SHA 10892b81057dSniklasGROUP_DESCRIPTION= MODP_1024 109060f440ccShoLife= Default-phase-2-lifetime 10912b81057dSniklas 10922b81057dSniklas[QM-ESP-3DES-SHA-TRP-XF] 10932b81057dSniklasTRANSFORM_ID= 3DES 10942b81057dSniklasENCAPSULATION_MODE= TRANSPORT 10952b81057dSniklasAUTHENTICATION_ALGORITHM= HMAC_SHA 109660f440ccShoLife= Default-phase-2-lifetime 10972b81057dSniklas 1098bfc24386Sniklas# AES 1099bfc24386Sniklas 1100bfc24386Sniklas[QM-ESP-AES-SHA-XF] 1101bfc24386SniklasTRANSFORM_ID= AES 1102bfc24386SniklasENCAPSULATION_MODE= TUNNEL 1103bfc24386SniklasAUTHENTICATION_ALGORITHM= HMAC_SHA 110460f440ccShoLife= Default-phase-2-lifetime 1105bfc24386Sniklas 1106bfc24386Sniklas[QM-ESP-AES-SHA-PFS-XF] 1107bfc24386SniklasTRANSFORM_ID= AES 1108bfc24386SniklasENCAPSULATION_MODE= TUNNEL 1109bfc24386SniklasAUTHENTICATION_ALGORITHM= HMAC_SHA 1110bfc24386SniklasGROUP_DESCRIPTION= MODP_1024 111160f440ccShoLife= Default-phase-2-lifetime 1112bfc24386Sniklas 1113bfc24386Sniklas[QM-ESP-AES-SHA-TRP-XF] 1114bfc24386SniklasTRANSFORM_ID= AES 1115bfc24386SniklasENCAPSULATION_MODE= TRANSPORT 1116bfc24386SniklasAUTHENTICATION_ALGORITHM= HMAC_SHA 111760f440ccShoLife= Default-phase-2-lifetime 1118bfc24386Sniklas 11192b81057dSniklas# AH 11202b81057dSniklas 11212b81057dSniklas[QM-AH-MD5-XF] 11222b81057dSniklasTRANSFORM_ID= MD5 11232b81057dSniklasENCAPSULATION_MODE= TUNNEL 11242b81057dSniklasAUTHENTICATION_ALGORITHM= HMAC_MD5 112560f440ccShoLife= Default-phase-2-lifetime 11262b81057dSniklas 11272b81057dSniklas[QM-AH-MD5-PFS-XF] 11282b81057dSniklasTRANSFORM_ID= MD5 11292b81057dSniklasENCAPSULATION_MODE= TUNNEL 11302039fcadShoGROUP_DESCRIPTION= MODP_1024 113160f440ccShoLife= Default-phase-2-lifetime 11322b81057dSniklas 113360f440ccSho[Sample-Life-Time] 11342b81057dSniklasLIFE_TYPE= SECONDS 11352b81057dSniklasLIFE_DURATION= 3600,1800:7200 11362b81057dSniklas 113760f440ccSho[Sample-Life-Volume] 11382b81057dSniklasLIFE_TYPE= KILOBYTES 11392b81057dSniklasLIFE_DURATION= 1000,768:1536 11402040585eSniklas.Ed 11412040585eSniklas.Sh SEE ALSO 1142b57b191eSniklas.Xr keynote 1 , 1143dc89b21eSfgsch.Xr ipsec 4 , 114430a2652aSniklas.Xr keynote 4 , 114577725688Sniklas.Xr isakmpd.policy 5 , 1146350bb3b8Salex.Xr isakmpd 8 1147830c32f9Shshoexer.Sh CAVEATS 1148830c32f9ShshoexerUsing aggressive mode is discouraged due to various design problems. 1149830c32f9ShshoexerIf your peer only supports aggressive mode, please consider replacing that 1150830c32f9Shshoexerpeer with a sane ISAKMP/IKE implementation. 1151830c32f9ShshoexerFor details see 1152830c32f9Shshoexer.Pa http://www.usenix.org/publications/login/1999-12/features/harmful.html . 1153d7401508Sho.Sh BUGS 1154d7401508ShoThe RFCs do not permit differing DH groups in the same proposal for 1155d7401508Shoaggressive and quick mode exchanges. 1156d7401508ShoMixing both PFS and non-PFS suites in a quick mode proposal is not possible, 1157d7401508Shoas PFS implies using a DH group. 1158