Teldat Dm739-I IP Sec
Teldat Dm739-I IP Sec
IPsec
Teldat Dm739-I
IPsec 1
Manual Teldat SA
Legal Notice
Warranty
Teldat is not liable for any direct, indirect, collateral, consequential or any other damage connected to the delivery,
supply or use of this manual.
2 IPsec
Teldat SA Table of Contents
Table of Contents
I Related Documents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Chapter 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 IPsec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.1 IPsec tunnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.2 IPsec architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.3 Advanced IPsec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Chapter 2 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.4.1 Example 1: Manual mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.4.2 Example 2: Dynamic mode (IPSEC IKE main mode) . . . . . . . . . . . . . . . . . . . 84
2.4.3 Example 3: Dynamic mode (IPSEC IKE aggressive mode) where the address of one of the tunnel end-
points is unknown. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.4.4 Example 4: Tunnel End-point Discovery . . . . . . . . . . . . . . . . . . . . . . . . . 100
2.4.5 Example 5: Permanent tunnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
2.4.6 Example 6: GDOI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
2.4.7 Example 7: Fault tolerant IPsec recovery . . . . . . . . . . . . . . . . . . . . . . . . 111
2.4.8 Example 8: IPsec tunnel protection . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
2.4.9 Example 9: IKEv2 IPsec tunnel protection and Route Injection . . . . . . . . . . . . . . . 124
ii IPsec
Teldat SA Related Documents
I Related Documents
Teldat Dm719-I IP Tunnel
IPsec 1
1 Introduction Teldat SA
Chapter 1 Introduction
Packets circulating on public networks, like the Internet, travel through multiple nodes that we cannot control or mon-
itor. Packets to the same destination can take different paths, therefore we need to establish security mechanisms
that keep intruders from accessing the data we send over this type of network.
A virtual private network (VPN) aims to extend a company's Intranet across a public network such as the Internet by
creating a secure connection with private tunnels.
There are different types of VPN solutions which may be classified according to the OSI layer where they are imple-
mented:
• VPNs implemented at the Application layer: These authenticate and/or encrypt the message but not the source
and destination address of the packets they route.
• Link layer-based VPNs: Like L2TP, these can only authenticate the tunnel endpoints, not each individual packet.
• VPNs implemented at the Network layer: Like IPsec, these protect the data and the source and destination ad-
dresses without the user having to modify any applications, but offer no protection outside the tunnel (e.g., in the
company's Intranet).
To conclude, a combination of application and network layer VPNs is advisable to ensure adequate security.
2 IPsec
Teldat SA 1 Introduction
1.2 IPsec
IPsec is a network layer security platform developed by the IPsec Working Group of the Internet Engineering Task
Force (IETF). It provides a flexible and robust way to accommodate new encryption and authentication algorithms.
• Data source authentication: verifying that the received data has been sent by those claiming to have sent it.
• Data integrity: verifying that the received data has not been altered during transmission.
The term data authentication is often used to indicate both data integrity and source authentication.
IPsec has defined two different security services to address these issues:
• Encapsulating Security Payload (ESP): This provides confidentiality, source authentication, integrity and protec-
tion against replay attacks.
• Authentication Header (AH): This provides source authentication, integrity and protection against replay attacks,
but it does not offer confidentiality. This service should be used when you need to ensure the origin of the data.
• Transport mode: allows secure communication, normally established between two hosts (e.g., communication
between a workstation and a server or between two servers) but never masks the source and destination address
of the packet. In transport mode, IPsec only acts on the internal data of the IP packet, without altering the header
(e.g., on a TCP or UDP segment or an ICMP packet).
Note
In Transport mode, if there are several clients behind the same NAT, the TCP or UDP protocol must be
configured in the access lists and, even then, only one client will be able to open each service simultan-
eously against the same server (e.g., 1 Telnet connection or 1 SSH connection). For further details,
please see section 5.2 "Transport Mode Conflict" of RFC 3948 "UDP Encapsulation of IPsec ESP
Packets".
• Tunnel mode: the entire original IP packet is encapsulated in a new IP packet, thereby concealing all of the origin-
al content. In this way, information can travel through a tunnel from one point in the network to another without any-
one examining it. This mode is the best method to use for communications between a router and an external host,
or between two routers.
The IPsec platform needs to know which security policy to apply to the IP packet, based on the header fields (also
called selectors). Security policies decide which encryption and authentication algorithms to use in the secure con-
nection.
The Security Policy Database (SPD) stores entries containing control selectors and their associated security policies.
After carrying out a search of applicable actions for a packet in the security policy database, there are three possibil-
IPsec 3
1 Introduction Teldat SA
ities:
When a packet's selectors match an SPD entry, the packet is processed according to the policy associated with that
entry. A security association (SA) is the secure connection created after consulting the SPD and contains the secur-
ity information (encryption and authentication keys) necessary to process a packet.
Depending on the security service (ESP or AH) specified, you can choose between several different cryptographic
(DES, TRIPLE DES, etc.) and authentication (MD5, SHA1, etc.) algorithms.
The SPD or policy database is defined by the user and is used for traffic going out of the router. Inbound traffic is
controlled by means of a symmetrical implicit SDP. This way, all incoming packets are processed according to the
provisions set for outbound packets: if outbound traffic is to to be sent with a particular IPsec security policy, then the
matching inbound traffic should also comply with the same policy. Similarly, if the policy dictates routing/dropping the
outbound traffic, the inbound traffic would also be routed/dropped.
After the internal routing is done, the SPD is consulted again (this time to determine whether to drop, route or apply
IPsec processing to outbound traffic).
The following flowchart shows how an IP packet proceeds when the IPsec protocol is invoked on our routers.
4 IPsec
Teldat SA 1 Introduction
All secret key-based security platforms stop being secure if the keys are not renewed regularly.
A shorter refresh interval provides our system with greater protection against cryptanalysis.
Generally speaking, there are two ways to manage IPsec keys and security parameters: manual (manual IPsec) and
automatic or dynamic (IPsec IKE). These modes refer to the way in which peers reach agreement on tunnel security
parameters.
In manual IPsec (manual-keying), the keys used in the encryption and/or authentication process for each Security
Association (SA) are entered by the user. The same parameters (keys, encryption and authentication algorithms)
must be set at both tunnel endpoints to allow the secure communication to go ahead. This is practical in small, relat-
ively static environments. However, when the VPN starts to grow, the practice of renewing the keys manually may
become too costly a task.
IPsec 5
1 Introduction Teldat SA
Thanks to the IKE Internet Key Exchange protocol (based on OAKLEY key exchange and ISAKMP), the key renewal
process can now be fully automated. The two tunnel endpoints automatically negotiate the parameters of the secure
communication (keys, encryption and authentication algorithms). Before this negotiation can take place, the tunnel
endpoints must first negotiate phase I security parameters to protect the exchange. The first phase is also when the
tunnel endpoints authenticate one another. They do this using a common pre-shared key manually introduced at
both ends, digital certificates or a public key algorithm.
There are two pre-negotiation modes: main mode and aggressive mode.
• Main mode masks the identities of the tunnel endpoint routers. In this type of negotiation, both endpoints need to
know the IP addresses of the security server at the other end of the tunnel.
• Aggressive mode does not mask these identities and speeds up the authentication process. It also allows the ne-
gotiation to go ahead without having to know the IP address of the server at the other end of the tunnel. Thus, a
tunnel can be set up with an unknown security router if the security policy associated with the packet allows this.
IPSec IKE has four phase I operating modes, depending on the type of authentication used to negotiate the Security
Association's security parameters.
The two security routers are able to mutually authenticate by using a common pre-shared key that is manually con-
figured on both devices.
There are two types of exchange with pre-shared key authentication: main mode and aggressive mode:
Whenever a Security Association's (SA) lifetime expires, new keying material will be exchanged between the two se-
curity routers after authentication with the manual pre-shared key.
With IPsec manual keying and IPsec pre-shared key authentication, the tunnel endpoint IP address (i.e., the security
router's IP address) must be known.
However, the following IPsec IKEs allow tunnels to be set up automatically and dynamically with unknown security
routers (if the packet's security policy allows this). With these types of IPsec IKE, you are not required to configure a
private key on the tunnel endpoints because it is automatically obtained through the processes described below.
The two-tunnel endpoints are authenticated by means of a digital signature and the Diffie-Hellman key exchange
scheme.
There are two types of exchange: main mode and aggressive mode:
The RSA public key cryptosystem is used for authentication when the other router's public key is known. Certificates
may be used to obtain the public keys of the other tunnel endpoint.
There are two types of exchange: main mode and aggressive mode. If the public key is frequently updated, the
former of these two modes is just as secure and faster than the latter.
Furthermore, Public Key Encryption Authentication provides more security vis-à-vis Digital Signatures and Pre-
shared Key Authentication by combining the RSA public key and Diffie-Hellman key exchange systems. On the
downside, processing time is much longer.
RSA is used for authentication when the other router's public key is known. Certificates may be used to obtain the
public keys of the other end of the tunnel.
Although public key operations are reduced (with a negligible loss of security), authentication services are improved.
Two types of exchange exist: main mode and aggressive mode. If the public key is frequently updated, the former of
these two modes is just as secure and faster than the latter.
6 IPsec
Teldat SA 1 Introduction
1.2.3.4 IKEv2
Although IKEv2 fulfills the same purpose as IKEv1 (as described above), it simplifies the SA negotiation process by
only using two pairs of IKE messages, a request and a response (called an exchange), whereas IKEv1 uses at least
6.
The first pair, IKE SA INIT, negotiate cryptographic algorithms, exchange nonces, and execute a Diffie-Hellman ex-
change.
The second pair of messages, IKE AUTH, authenticate the previous messages, exchange identities and certificates,
and establish the first Child SA.
Every IKE message contains a Message ID as part of its fixed header. Said Message ID is used to match up re-
quests and responses, and to identify message retransmissions.
IPsec 7
1 Introduction Teldat SA
The keys used to encrypt or authenticate a connection are obtained from keying material. If this material has not and
will not be used to generate any additional keys to encrypt or authenticate other connections, then we can say that
perfect forward secrecy (PFS) has been achieved.
Our routers allow PFS when they are configured to run in high security mode, but this comes at the cost of a higher
computational cost in setting up the IPsec tunnels.
High security mode also generates more secure keying material using Oakley Groups more resilient to cryptanalysis.
1.2.3.6 Certificates
Certificates allow routers to learn the public keys of other security routers with which to open an IPsec tunnel. These
public keys will be used in the two IKE public key authentication modes.
The TED protocol is an IPsec enhancement that allows a security router to dynamically determine the end router that
should be used to set up an IPsec tunnel in order to guarantee a secure communication between the hosts protected
by the two routers.
To configure a large, fully-meshed network, you need to define static security parameters for all possible pairs in the
network. By using TED and a single set of dynamic security parameters, you can find the pair you are looking for
without it being predefined. New links can also be added to the network without having to modify the configuration of
every router residing in the network.
8 IPsec
Teldat SA 1 Introduction
When the TED protocol is used, the hosts protected by the routers must have routable IP addresses. In addition,
these addresses will be sent without encryption; therefore, the protocol should not be used in scenarios where this
information is considered confidential. You must also ensure that the corresponding access list contains only IP-
related entries (and therefore cannot be used with UDP, TCP or any other protocol).
Note
The reverse route injection (RRI) algorithm allows an IPsec tunnel endpoint router to insert static routes to networks
protected by this tunnel in its corresponding routing tables. These routes are inserted when the IPsec tunnel is
opened, and indicate how to reach the network (with mask) protected by the access list associated with the tunnel,
with a next hop router defined by configuration (this next hop can be the local or remote tunnel endpoint, or a user-
defined IP address).
The ultimate aim of this functionality is to propagate these routes backwards by means of a routing algorithm (for ex-
ample, RIP or OSPF), thus allowing the devices behind the router to learn the path needed to send the encrypted
traffic to the network(s) protected by the tunnel.
Definition:
Group Domain Of Interpretation (GDOI) is defined as the Internet Security Association Key Management Protocol
(ISAKMP) Domain of Interpretation (DOI) for group key management. The GDOI protocol operates between a client
or group member (GM) and a central server or key server (GCKS). The central server establishes security associ-
ations (SAs) between authorized group members. The ISAKMP protocol described in RFC 2048 defines two negoti-
ation phases; the GDOI protocol is protected by ISAKMP phase I, while phase II is completely different and is
defined in RFC 3547.
The diagram below shows the two different types of traffic involved: GDOI traffic between clients and server, and
IPSEC traffic between clients using the policies downloaded through the GDOI protocol.
Operative:
A client registers with the server to get the Security Associations (SA) needed to communicate with other clients in
the group. During the negotiation, the client sends a group ID to the server and the server sends back the policies
and keys for that particular group. Before the current keys expire, they are periodically refreshed through rekey mes-
sages to ensure that traffic is not lost. The server is responsible for maintaining and updating the keys and IPsec
policies.
The server can send two different encryption keys: the key encryption key (KEK) and the traffic encryption key (TEK).
TEK keys are used to encrypt IPsec packets exchanged between clients, while KEK keys are used to encrypt rekey
messages exchanged between server and client.
IPsec 9
1 Introduction Teldat SA
The server sends rekey messages when the TEK or KEK keys need updating and when the server configuration is
changed. The server can be configured to retransmit the rekey messages a set number of times to avoid losing the
rekey packets. Rekey messages can be sent through unicast IP packets addressed to each client registered with the
server, or through a packet addressed to a configurable multicast IP.
When the server sends rekey messages through unicast IP packets addressed to each client registered with the
server, such clients may send a rekey acknowledgement to the server (rekey-ack message).
Note
RFC 8263 "GDOI GROUPKEY-PUSH ACK Message" is supported on GDOI Client as of version
11.01.06.
IPsec encapsulation:
Packets encapsulated by GDOI clients are encapsulated in transport or tunnel mode, depending on what the server
says. If nothing is heard from the server, GDOI clients encapsulate packets in the configured mode.
The GDOI client receives the access list from the server telling it what traffic will be sent encrypted and what traffic
will be sent in clear. The entries on this list must match at least one of the entries on the access list configured in the
GDOI client. Each entry on the received access list is installed in front of its matching entry (the permit/deny field is
not visible).
access-list x
entry 1 default
entry 1 permit
exit
In this case,
• Before connecting to the server:
access-list x
entry 1 default
entry 1 deny
exit
In this case,
• Before connecting to the server:
In addition, exceptions to the ones indicated by the server can be added by adding entries to the access list associ-
ated with the GDOI template.
For example, if you associate the following list with a GDOI template in a client, the traffic between hosts 172.24.1.1
and 172.24.1.2 will be sent in clear (unless the server has explicitly specified that the traffic must be sent encrypted):
access-list x
entry 1 default
entry 1 deny
10 IPsec
Teldat SA 1 Introduction
If the list in the following example is associated with a GDOI template in a client, then the traffic between hosts
172.24.1.1 and 172.24.1.2 will be sent encrypted (unless the server has explicitly specified that the traffic must be
sent in clear):
access-list x
entry 1 default
entry 1 permit
entry 1 source address 172.24.1.1 255.255.255.255
entry 1 destination address 172.24.1.2 255.255.255.255
;
entry 2 default
entry 2 deny
;
exit
Anti-replay is an important IPsec feature that prevents third parties from eavesdropping packets from an IPsec con-
versation and playing them back later as if they had been generated at that time. Time stamp-based anti-replay en-
sures that illegally reproduced packets are detected and discarded. Our implementation of GDOI uses a synchron-
ous anti-replay (SAR) mechanism that is independent of the date and time of the devices. Clients synchronize with a
global timestamp sent by the server (GCKS), and update it as the seconds elapse. When a client sends a packet, a
proprietary format timestamp is added to the IP packet. This is compared with the current timestamp in the client re-
ceiving the packet. If the received timestamp and the current one differ by more than a given configurable value, the
packet is dropped.
Fault-tolerant IPsec recovery is a feature that allows our devices to continue managing IPsec packets even when
one of our tunnel endpoint devices has stopped working.
Fault tolerant IPsec recovery is based on the dynamic distribution of IPsec sessions between a pair of routers, i.e.,
sessions can be moved from one device to another depending on the current condition and configuration of the
devices. In this way, if one of the devices stops working, its IPsec sessions can be automatically and transparently
established in the device that is still active.
• Virtual Router Redundancy Protocol (VRRP) is defined in RFC 3768 and is responsible for dynamically assigning
the virtual router function to one of the VRRP routers. This protocol decides which device should route the packets
addressed to the IP address shared by VRRP and, therefore, serves as a basis when deciding what IPsec ses-
sions should be established on which router at any point.
• IP Security Fault Tolerant (IPsecFT) is the protocol responsible for exchanging information between the two
devices acting as tunnel endpoints. Through IPsecFT, the two devices maintain an updated database containing
sufficient information to enable either of them to inherit, at any point, the IPsec sessions established by their part-
ner.
IPsec 11
1 Introduction Teldat SA
Both protocols run alongside each other to ensure the sessions corresponding to IPsec are established at all times.
1.2.3.10.2 Operation
Let's take a closer look at how the subsystem works. The two routers are given the same virtual IP addresses to
make them look like one device to the outside. This way, when external devices start IPsec sessions, they do so with
these shared addresses, regardless of which device is in control at the time.
VRRP ensures that one of the devices is always associated with the virtual IP address. For further information on
this, please see Teldat manual Dm759-I VRRP Protocol.
Furthermore, an IPsec session requires keys to be established and exchanged in order for the device to understand
and accept the packets sent. In other words, it isn't enough just to solve the problem of managing the IP addresses
used to connect the IPsec sessions, we also need to ensure the continuity of those IPsec sessions. The IPsecFT
protocol is used for this. As mentioned earlier, this protocol keeps a database with information about the sessions es-
tablished on the analogue device, that is, it could establish them if necessary.
In a stable situation, sessions are established with the device managing the IP address of said sessions. This way,
IPSec encrypted data is received and decrypted without difficulty.
12 IPsec
Teldat SA 1 Introduction
Imagine the case that the device with the established sessions fails for some reason and is unable to continue man-
aging said IPsec sessions – for example, it shuts down. The shared IP address will then be managed by the router
that is still up. This router would therefore start receiving IPsec packets that it doesn't understand (the IPsec session
was not established with it).
However, the device that is still active doesn't wait for IPsec packets that it can't understand. As soon as it sees that
it is managing the shared virtual IP address, it searches the IPsecFT session database and establishes any sessions
that it doesn't have established if it sees that it will be receiving traffic from those sessions.
IPsec 13
1 Introduction Teldat SA
Thus, one device can assume responsibility for the IPsec sessions established in another device should it fail, and
the changeover is automatic and transparent.
There are certain parameters in setting fault-tolerant IPsec recovery that deserve special mention. As already stated,
this function is reliant upon the IPsec, IPsecFT and VRRP protocols.
IPsec
The IPsec configuration controls the procedure for setting up the IPsec sessions. In other words, it configures the
keys, encryption type, and any other parameters typical of conventional IPsec configuration. Given that the two
devices will be establishing the same sessions, it follows that they will need to have the same IPsec configuration.
IPsecFT
IPsecFT establishes and maintains two TCP sessions for exchanging information relating to the IPsec sessions es-
tablished in each router. It uses a TCP session in each direction: from Router1 to Router2 and from Router2 to
Router1. However, for the sake of end-user convenience, one router is designated master and the other slave. Only
the master knows which slave to connect to: the slave device that receives the connection automatically establishes
the second session in the opposite direction.
Note
For the protocol to work correctly, it doesn't matter which device is configured as master and which is
configured as slave, and this in no way interferes with anything related to master and slave in VRRP.
TCP sessions progress within a set time frame once established. That is to say, IPsecFT completes all outstanding
tasks within a preset time period. The two most important tasks are:
• Sending keep alive packets to monitor the IPsecFT session. If no keep alive packet is received within a preset
time, then the session is invalidated and a minute later released.
• Polling the shared virtual IP address. If the address belongs to us, IPsec sessions are established.
VRRP
VRRP uses the multicast advertisements, sent by the controlling device at regular intervals, to decide which device
controls the shared virtual IP address. The listening device takes control of the virtual IP address when it doesn't re-
14 IPsec
Teldat SA 1 Introduction
ceive advertisement packets for a certain period of time. Once it takes control of the shared address, it starts estab-
lishing the IPsec sessions necessary to continue data transmission. The less time the device waits before taking con-
trol of the shared IP address, the less time the system will take to recover when the controlling device fails; too little
time, however, can make it look as though an active device is down because it can't serve the advertisement packets
quickly enough.
General considerations
When the IPsec sessions are sent from one device to another, the receiving device is subject to a high workload.
Special care must be taken to select an appropriate number of input buffers on the interface where the sessions are
established, otherwise the receiving device will not be able to process all of the incoming packets from the remote
devices.
Likewise, you should also increase the IPsec encryption queue size to (at least) the number of simultaneous ses-
sions to be established, or up to the number of input buffers on the interface that establishes the sessions, whichever
is greater.
IPsec tunnel protection provides a routable interface for terminating IPsec tunnels and simplifies the configuration
process to protect the remote links.
This makes it possible to provide protection in an IP tunnel after configuring the interface. For further information,
please see Teldat manual Dm719-IP Tunnel .
Since there is a routable interface at the tunnel endpoint, many common interface capabilities can be applied to the
IPsec tunnel; it allows flexibility for sending and receiving both unicast and multicast IP encrypted traffic (as it sup-
ports dynamic routing protocols such as RIP).
Traffic is encrypted or decrypted when forwarded from or to TNIP and is managed by the IP routing table. Using IP
routing to forward traffic to TNIP (encrypted) simplifies the IPsec configuration because access lists are not required.
The IPsec source and destination are the same as for the IP tunnel interface (TNIP).
IPsec 15
2 Configuration Teldat SA
Chapter 2 Configuration
2.1 Introduction
As we saw in section IPsec architecture on page 3, IPsec processes an IP packet by applying the security policy
configured for that packet. This information is stored in the security policy database (SPD) where the associated se-
lectors and security policies are found. Therefore, configuring IPsec in a router basically comes down to defining the
SPD elements.
There are three steps to configuring an SPD element in our router. First, you define an access control list entry
(ACE), that is to say, certain control selectors. You do this by assigning a preconfigured generic access list to IPsec.
Each entry in the list is configured with an action. This action can be either to apply (permit) the processing corres-
ponding to the protocol assigned to the list, which in this case is IPsec, or not to apply (deny) the corresponding pro-
cessing. If none of the entries in the list are applicable, the packet will not be processed by IPsec. Then you create
the templates or IPsec security policies; this is where the IPsec tunnel security parameters are defined. And finally,
an access control list assigned to IPsec is associated or mapped to a specific template.
16 IPsec
Teldat SA 2 Configuration
IPsec 17
2 Configuration Teldat SA
18 IPsec
Teldat SA 2 Configuration
Make sure that the device is set up with the correct date and time to prevent validation problems when using certific-
ates.
DISABLE/ENABLE commands
IPsec can be disabled using the DISABLE command from the IPsec configuration menu.
Config>protocol ip
-- Internet protocol user configuration --
IP config>ipsec
-- IPSec user configuration --
IPSec config>disable
IPSec config>
To ensure that the configuration is correct, we recommend you follow the steps below:
(1) Configure the IPsec access control list.
(2) Configure the templates (security parameters).
(3) Create the SPD.
2.3.2 Configuration
This section describes the steps required to configure IPsec on the router. Enter the following commands to access
the IPsec configuration protocol environment:
Config>protocol ip
-- Internet protocol user configuration --
IP config>ipsec
-- IPSec user configuration --
IPSec config>
The following commands are available within the IPsec configuration environment (indicated by the IPsec config>
prompt).
Command Operation
? (HELP) Lists the available commands or options.
ENABLE Allows you to enable IPsec and filter the events to be viewed.
DISABLE Disables IPsec.
DESCRIPTION Adds a description to IPsec.
NO Deletes elements from the templates and access control lists, undoes mappings
or deletes the entire configuration.
ASSIGN-ACCESS-LIST Assigns an access control list to the IPsec protocol.
TEMPLATE Configures security policy parameters for IPsec tunnels.
MAP-TEMPLATE Associates (maps) an access control list element with a template.
ASSOCIATE-KEY Associates a key with an access control list.
ASSOCIATE-DEST-MASK Associates a destination mask with an access control list.
IPsec 19
2 Configuration Teldat SA
KEY This is used and described in the section on dynamic templates (IPsec IKE).
EVENT Allows you to configure a filter that either limits the events shown or displays all of
them.
QOS-PRE-CLASSIFY Enables packet pre-filtering (for BRS).
ADVANCED Allows you to configure advanced parameters.
LDAP Allows you to specify operational parameters to perform LDAP queries.
LIST Lists the IPsec configuration.
CERT Accesses the digital certificates submenu.
REPORT Report statistics.
XAUTH-HOSTNAME Configuration of xauth user associated with hostname.
XAUTH-IP Configuration of xauth user associated with IP.
XAUTH-USER Configuration of xauth user properties.
EXIT Exits the IPsec configuration prompt.
The device will request any required command line parameters that are missing, unless there is an option to write
subcommands. In either case, you can get help by entering the name of the command or subcommand followed by a
question mark (‘?’).
IPSec config>?
enable Enables IPSec
disable Disables IPSec
description Add a description to IPSec
no Negate a command or set its defaults
assign-access-list Assigns access lists to IPSec (used as SPD selectors)
template Configures security policies params for IPSec tunnels
map-template Associates an element in the LCA with a template
associate-key Associates a key with an access list
associate-dest-mask Associates a destination mask with an access list
key Adds preshared or RSA keys
event Adds a filter for IPSec events or enables all of them
qos-pre-classify Enables QOS Preclassify
advanced Configuration of advanced IPSec parameters
ldap Configures parameters to perform LDAP operations
list Lists the IPSec configuration
cert Enters the Digital certificates submenu
report Report statistics
xauth-hostname Configures xauth user associate to hostname
xauth-ip Configures xauth user associate to ip
xauth-user Configures xauth user properties
gdoi Configures Group Encrypted Transport
fault-tolerant Configures IPSec fault tolerant
exit Exits IPSec configuration menu
IPSec config>
As explained earlier, there is an access control list. Each entry in this list consists of a block of selectors and an ac-
tion, and is identified by a unique number (the entry identifier or ID field). The block of selectors is composed of a
source IP address (or range of addresses), a destination IP address (or range of destination IP addresses), a pro-
tocol (or range of protocols), source and destination ports (or range of ports), and the connection identifier between
the interfaces through which the packet travels. You don't have to specify all of them, just the ones you wish. The ac-
tion represents the processing assigned to the packets ( permit or deny) matching the associated block of selectors.
20 IPsec
Teldat SA 2 Configuration
As already mentioned when analyzing the SPD, ACL entries or elements are always established for packets going
out of the routers. Say we want to set up a secure IPsec tunnel for packets being routed between host A and host B
as shown in the above figure. To do this, the ACL control entry must contain, at least, the following selectors:
Any packet traveling from A to B would thus be encapsulated by IPsec. Implicit in defining this entry is that any pack-
et arriving from host B with address A would have to have the same encapsulation. Thus the secure tunnel is com-
pletely defined between both ends.
Note
The order of the entries in the access control list is important when the information referenced by the
selectors matches multiple ACL elements.
Note
However, the order is not determined by each entry's identifier but by the order in which the entries are
listed (which can be modified). Hence, if the list is searched, starting with the first element or entry on
the list, and a match is found, the action specified in the ACL entry is applied and no more entries are
checked.
IPsec makes use of the generic and extended access control lists defined in the root menu of the device configura-
tion. For further information, see Teldat Dm752-I Access Control .
The lists created in this menu must be assigned to the IPsec protocol through the IPsec config> ASSIGN-AC-
CESS-LIST command. The order in which these lists are assigned determines the query order applied to the pro-
cessed packets.
A generic and extended access control list is made up of a series of entries which define the properties a packet
must have to be considered as belonging to a particular entry, and consequently to that list. The generic access con-
trol list is then assigned to a protocol.
Once you have configured the access control list and assigned it to IPsec, you can run the LIST ACCESS-
LISTS-ALL-ENTRIES command to view all the entries on the access list. Alternatively, you can run the LIST AC-
CESS-LISTS ADDRESS-FILTER-ENTRIES command from the IPsec config> menu to filter the entries that you view
by source or destination address.
Templates are IPsec security policies that can be associated with one or more elements from the access control list
(ACL). Only generic lists that have been previously assigned to IPsec may be associated with a template.
Each template is defined with the two tunnel endpoint addresses (corresponding to the security routers at each end
of the tunnel), the authentication/encryption algorithms, IPsec key management manual (manual IPsec) or dynamic
mode (IKE IPsec), and a template identifier (ID).
Each mode has a series of associated commands, some of which are common to both modes. When you list the
commands in the template, you will be shown the meanings of the configured mode, which is why we need to define
the template mode before doing anything else:
IPSec config>template 1 ?
manual Manual template
IPsec 21
2 Configuration Teldat SA
We will now describe manual IPsec before going on to look at IPsec IKE (IKEv1 and IKEv2).
In a manual IPsec configuration (manual-keying), the user is responsible for entering the keys used to encrypt data
and/or authenticate a Security Association (SA). The user must ensure that the same security parameters (keys, au-
thentication and encryption algorithms) are configured at both ends of the tunnel in order for the secure communica-
tion to take place.
Manual templates are configured using the following subcommands within the TEMPLATE command:
Command Operation
DEFAULT Restores a template to its default settings.
MANUAL Creates a static template with a security service (ESP or AH).
SOURCE-ADDRESS Adds the tunnel's source address to the template.
DESTINATION-ADDRESS Adds the tunnel's destination address to the template.
SPI Adds the security configuration (SA) ID number defined by the template.
KEY Adds a DES key to the template.
TKEY Adds a Triple DES key to the template.
MD5KEY Adds an MD5 key to the template.
SHA1KEY Adds a SHA1 key to the template.
ANTIREPLAY Activates anti-replay in the template.
DF-BIT Specifies how to process the DF bit in IPsec packets.
MTU-THRESHOLD Specifies the minimum MTU threshold to use in PMTU processing.
MTU-DEFAULT Specifies the initial MTU value given through the IPsec tunnel.
NO Negates a command or restores the default value.
The first thing that needs to be defined when configuring a template (manual or dynamic) is the security service to
use: Encapsulating Security Payload (ESP) or Authentication Header (AH). ESP provides data confidentiality ser-
vices by encrypting the data and also has an option to perform authentication. AH only allows authentication:
Example:
Command history:
Release Modification
11.00.05 The TEMPLATE DEFAULT command is obsolete as of version 11.00.05.
11.01.00 The TEMPLATE DEFAULT command is obsolete as of version 11.01.00.
The two encryption algorithms that can be selected in a manual template are: Data Encryption Standard (DES) and
Triple Data Encryption (TDES). Advanced Encryption Standard (AES) cannot be selected in a manual template.
The following authentication algorithms may be chosen: MD5, SHA1, SHA256, SHA384, SHA512 or NONE.
Example:
22 IPsec
Teldat SA 2 Configuration
The following authentication algorithms may be chosen: MD5, SHA1, SHA256, SHA384, or SHA512.
Example:
Having defined the security service, the tunnel endpoint IP addresses, the SA identifier created from the template
(SPI), and the keys that will be used with the chosen encryption and authentication algorithms must be entered.
Adds the tunnel's local IP address to the template identified by [ID]. You can specify the interface that the IP address
is taken from.
Example:
Includes the IP address/domain name of the remote end of the tunnel in the template identified by [ID].
Example:
Example:
In this case, the domain name “atlas.teldat.es” is used as the destination. Keep in mind that you will need to config-
ure a DNS server to resolve the domain name.
Allows you to include the Security Parameter Index (SPI) value for the template identified by [ID]. The SPI is an in-
teger, [INTEGER], greater than 256. The SPI must be the same at both ends and distinguishes one template from
another when both have the same tunnel destination address and security service (ESP or AH).
Example:
To delete the configured SPI value, use the no form of this command.
You cannot define two policies with identical values for the three parameters mentioned: Tunnel destination address,
security service and SPI.
This is used to add a key when DES encryption is chosen. The template's DES encryption key is represented by an
8-byte key (specify this number either in hexadecimal format, prefixed with 0x, or ASCII).
Example:
Please note, if you enter a hexadecimal key, you must enter double the number of characters (between 0-9 and A-F),
since two hexadecimal characters define one byte.
This is used when Triple DES is chosen as the encryption algorithm. The Triple DES key length is 24 bytes (specify
this number either in hexadecimal format, prefixed with 0x, or ASCII).
Example:
IPsec 23
2 Configuration Teldat SA
When MD5 is used for authentication, you must enter a 16-bit key (specify this number either in hexadecimal format,
prefixed with 0x, or ASCII).
Example:
When SHA1 is used for authentication, you need to enter a 20-byte key (specify this number either in hexadecimal
format, prefixed with 0x, or ASCII).
Example:
This command enables anti-replay protection, which protects against replay attacks (retransmission of captured com-
munications). The command is enabled by default but we recommend disabling it on manual templates. Use the no
form of this command to do this.
Example:
When encapsulating a packet in IPsec, it is the router's job to ensure the Path Maximum Transmission Unit Discov-
ery (PMTUD) algorithm continues to function in hosts protected by the tunnel. The PMTUD algorithm uses the don't
fragment (DF) bit in the IP header and ICMP packets. This option lets you specify the way in which the router pro-
cesses the DF bit in IPsec packets: always mark (all IPsec traffic leaves with the DF bit set to TRUE), always remove
(the bit is set to FALSE, ICMP/PMTUD packets are not processed so the router acts as a black hole for this al-
gorithm), or copy the packet being protected (normal ICMP/PMTUD processing and router default option). For further
information, please see Section 6 of RFC 1191.
Example:
Use the no form of this command to restore the COPY default value.
Specifies the lowest Maximum Transfer Unit (MTU) that must be reported to hosts protected by the router following
ICMP/PMTU message processing. Default is 576 bytes. In most applications, this value is a compromise between
the behavior of the network performing the fragmentation and a very small MTU. It also depends on the type of traffic
the network is carrying. For further information, please see Section 6 of RFC 1191.
Example:
Use the no form of this command to restore the 576-bit default value.
Specifies the initial IPsec tunnel MTU that must be reported to the hosts protected by the router. This value is dis-
abled by default and should only be assigned a value when the path MTU is known beforehand. For further informa-
tion, please see Section 6 of RFC 1191.
Example:
24 IPsec
Teldat SA 2 Configuration
Once all the corresponding parameters and keys have been defined, they would need be entered on the other end-
point router with which we are going to establish the tunnel. And the last step would be to associate (map) the ACL
entries to the templates, or in other words, create the SPD entries. We will come to this once we have explained how
to configure the dynamic templates.
You can use the LIST and NO commands to view or delete configured templates:
Command Operation
LIST TEMPLATE Displays a list of all the elements on the template.
NO TEMPLATE Deletes elements from the template.
Example:
Displays a list of all the elements on the template whose source/destination IP address fall within the range defined
by the [IP ADD] and [MASK] fields.
Example:
Example:
IPsec IKE (dynamic IPsec) requires two types of templates: dynamic templates, which are the same as the templates
configured in manual mode, and, depending on the choice of negotiation protocol, either ISAKMP or IKEv2 tem-
plates. Now the tunnel endpoints need to negotiate the algorithms and keys that will be used to establish an IPsec
Security Association. This is accomplished in two phases:
• In the first phase, the two tunnel endpoints authenticate one another and agree upon certain security parameters
required to protect the negotiation. These parameters are defined in the ISAKMP templates or IKEv2 templates.
• Phase two is the negotiation of the security association for the tunnel, and is based on the dynamic templates.
In the following section, we describe the configuration commands available on ISAKMP templates, IKEv2 templates
and then dynamic templates:
We will begin by describing the ISAKMP parameters since they are the first step in the negotiations.
ISAKMP templates are configured using the following subcommands within the TEMPLATE command:
Command Operation
ISAKMP Creates an ISAKMP template with certain security parameters.
DESTINATION-ADDRESS Includes the tunnel destination endpoint address in the template.
DISCOVER Indicates that TED should be used to discover the tunnel endpoint address.
BACKUP-DESTINATION Adds a backup destination address.
IPsec 25
2 Configuration Teldat SA
DISABLE- Disables checking if Main is available and fast return to Main from Backup.
FAST-RE-
TURN-FROM-BACKUP
UDP-ENCAPSULATION Encapsulates IPsec packets in UDP packets.
UDP-IKE Encapsulates IPsec IKE packets in UDP packets.
LIFE Adds the SAs lifetime created from the template.
IKE Configures parameters relating to IPsec IKE mode.
KEEPALIVE Enables/disables the available keepalive services.
CONFIG Allows you to define whether the device will initiate the configuration method, wait
for a proposal, or behave in accordance with the IKE method used. This command
is described in ISAKMP configuration mode on page 63.
AGGRESSIVE Configures aggressive mode as the encryption mode (encrypted/clear) for the
third IKE message.
SEND-ORIGINAL-PKT Once the tunnel is fully established, sends the original packet that led to the tunnel
being created.
SET-LABEL Packets processed by IPsec are tagged with this label.
FRONT-DOOR-VRF Sets the VRF used to reach the tunnel destination.
NO Negates a command or restores its default value.
The first thing to do is to configure the ISAKMP template security parameters that will be used to negotiate the SA
connection. For its part, the ISAKMP template also gives rise to a SA negotiation, or ISAKMP SA:
Creates an ISAKMP template based on encryption and authentication algorithms. The encryption options supported
are DES, Triple DES (TDES), AES128, AES192, and AES256. The authentication options are MD5, SHA, SHA256,
SHA384, and SHA512. The three AES encryption types use different key lengths (128, 192 and 256 bits, respect-
ively). Despite being similar to ESP, this is not ESP and an authentication algorithm must be selected.
Example:
Now we need to specify the tunnel endpoint address. ISAKMP templates do not require a source address.
Example:
Example:
In this case, the domain name atlas.teldat.es is used as the destination. Keep in mind that you will need to configure
a DNS server to resolve the domain name.
We also have the option of specifying any address (0.0.0.0.) for the remote address and using the TED protocol to
dynamically discover the remote tunnel endpoint address or waiting for the remote end to open the tunnel.
With this option enabled on the template and choosing 0.0.0.0 as the destination address, we would use a TED ne-
gotiation to establish the remote end of the tunnel. Before we configure the router to discover remote addresses, we
should consider some of the limitations of the TED protocol (see chapter 1). This is disabled by default.
Example:
Use the no form of this command to restore the default behavior and disable TED. This is useful when we are going
to specify the remote tunnel endpoint address or wait for the remote tunnel endpoint to open the tunnel, or when we
are using the PKT-DEST-ISAKMP-DEST advanced option (see below).
26 IPsec
Teldat SA 2 Configuration
ISAKMP templates admit up to three backup addresses so that the router can establish a tunnel with one of the
backup addresses if it can't to do so with the main address.
While connected to the backup address, the router continually polls the main address to see if it can establish a tun-
nel with it. If it can, it does so and also closes the session established with the backup address.
Main Address Polling Period: ADVANCED DPD IDLE-PERIOD + ADVANCED DPD PACKETS * ADVANCED DPD
INTERVAL (seconds).
Example:
Use the no form of this command to delete the backup destination IP address.
Configuring this option changes the default behavior of the router when it is connected to a backup address. The
router no longer polls the main address to see if it can establish a tunnel with it, so the session with the backup ad-
dress remains open.
Example:
Use the no form of this command to restore the default behavior (the router continually polls the main address to see
if it can establish a tunnel with it).
Command history:
Release Modification
11.01.08 The DISABLE-FAST-RETURN-FROM-BACKUP option was introduced in isakmp tem-
plates as of version 11.01.08.
And finally, there are a number of optional parameters whose default values can be modified if necessary:
Specifies that IPsec packets are to be encapsulated in UDP. This is often used to cross firewalls or devices running
NAPT without changing the configuration. By default, this option is not enabled.
Example:
Use the no form of this command to restore the default behavior (IPsec packets are not encapsulated in UDP pack-
ets).
Specifies that IPsec packets (IKE) are to be encapsulated in UDP. This is often used to cross firewalls or devices
running NAPT without changing the configuration. By default, this option is not enabled.
Example:
Use the no form of this command to restore the default behavior (IPsec packets are not encapsulated in UDP pack-
ets even though data packets are).
Allows you to introduce the negotiation SA lifetime. This is 3,600 seconds (1 hour) by default.
Example:
IPsec 27
2 Configuration Teldat SA
Various parameters relating to IPsec IKE mode can be configured on ISAKMP templates:
Example:
Phase I ISAKMP/IKE exchanges can be done in two modes: main mode or aggressive mode. Aggressive mode is
faster than main mode, but fewer parameters can be negotiated. Main mode is enabled by default.
Example:
Establishes the authentication method used by the device. The following authentication methods can be configured:
pre-shared key, RSA, XAUTH init pre-shared key and XAUTH init RSA key. The default is pre-shared key authentic-
ation.
Example:
XAUTH-init-preshared and XAUTH-init-RSA authentication methods are explained in detail in ISAKMP configura-
tion mode on page 63.
The CA and CRL IKE options are only available when RSA or XAUTH-INIT-RSA are selected. These authentication
methods are explained in detail in Obtaining certificates through CSR on page 132 and in
Certificate revocation list
(CRL) on page 147, respectively.
You can select different types of identifiers for phase I of the ISAKMP /IKE exchange:
IP: indicates that the device's own IP address will be used as the device identifier.
Fully Qualified Domain Name (FQDN): uses a string equivalent to a network interface TCP/IP address for identifica-
tion. For example, if you set the host name to atlas1 and the domain name to teldat.es, the device's FQDN used for
28 IPsec
Teldat SA 2 Configuration
identification purposes in IPsec will be atlas1.teldat.es. You can only use this option in AGGRESSIVE mode.
Note
If you fail to configure the domain name correctly, the device will use only the host name followed by a
period (.), which stands for the root domain. This must be taken into account at the remote end.
User Fully Qualified Domain Name (UFQDN): includes a specific user within the device in the form of an SMTP mail
address ([email protected]). In this case, since there aren't any users in the device, the router sends the same
string that was sent in the previous case. You can only use this option in AGGRESSIVE mode.
KEYID: Identification is verified by means of a binary string used to send specific information about the router's man-
ufacturer. We use the host name configured in the device for this The domain names and subdomain names are not
considered. You can only use this method in AGGRESSIVE mode.
ASN-DN: specifies the main certificate's (of those certificates being exchanged in order to establish the SA) distin-
guished name (DN) in binary DER-encoded format, as defined in the ASN.1 X.500 standard.
The remote device will use the received identifier (ID) and search for it in its table of pre-shared keys associated with
devices (IP addresses or host names), created with the KEY IP/HOSTNAME command (which we will come to later).
Example:
If the IKE IDTYPE IP parameter is configured in the template, it specifies an IP address. If not, it is a character string.
If you don't set this parameter, the identifier used in IKE phase I is the one specified above in the IKE IDTYPE com-
mand description.
Example:
Example:
Example:
Example:
Specifies the Oakley group type. The higher the group level, the longer the negotiation. This is because higher-level
groups require more processing. Group 1 is the default value.
Example:
IPsec 29
2 Configuration Teldat SA
Disables/forces fragmentation of IKE packets before they are sent. The behavior is as follows:
The device fragments IKE packets 5 and 6 of the IKE negotiation with RSA and XAUTH-INIT-RSA provided that:
• The remote end sends the corresponding payload vendor to show that it supports the feature and you have not set
the DISABLE option for this command.
• You have set the FORCE option for this command.
Example:
The device fragments IKE negotiation packets 5 and 6 with RSA and XAUTH-INIT-RSA provided that the remote end
sends the corresponding payload vendor to show that it supports the feature.
Example:
Allows the router to send a lifetime proposal in the negotiation, i.e., the device proposes a lifetime that is negotiated.
This option is enabled by default.
If IKE NO LIFETIME-NEGOTIATION is configured, the device will not send a lifetime proposal. This is useful when:
• The router encounters a device that refuses to negotiate if there is a lifetime proposal.
• You want the remote end to set the lifetime.
Warning
Some devices will refuse to negotiate if the lifetime proposal parameter is disabled.
Example:
If there has been no reply, IKE negotiation is retried when a quarter of the PURGE-TIMEOUT interval has elapsed.
Configure this interval using the ADVANCED PURGE-TIMEOUT command.
This option is useful in WWAN environments where the first packets sent are often lost and where highly disperse
traffic means packets never progress.
Example:
If there has been no reply, IKE negotiation is retried when 2^(number of retries) seconds and the PURGE-TIMEOUT
interval have elapsed. This option is enabled by default, but has no affect if "early-retry" is configured.
The interval between retries will keep increasing until it reaches the maximum configured with theDELAYED-
RETRY-MAX command.
Example:
Command history:
Release Modification
11.00.10 The DELAYED-RETRY option was introduced on ike templates as of version 11.01.10.
30 IPsec
Teldat SA 2 Configuration
This is the maximum number of seconds between retries when there is no reply to the IKE negotiation. The default is
600 seconds (5 minutes).
This option is useful in WWAN environments where the first packets sent are often lost and where highly disperse
traffic means packets never progress.
Example:
Command history:
Release Modification
11.01.10 The DELAYED-RETRY-MAX option was introduced on ike templates as of version
11.01.10.
Lets the remote end of the NAT-Traversal (NATT) type know that the router wants to negotiate. When the remote
end initiates negotiation, the router will adapt to whatever proposal the remote end makes as long as it supports the
version that the remote end proposes. The supported versions are:
Example:
Command history:
Release Modification
11.00.05 As of version 11.00.05, the default value for NATT is RFC.
11.01.00 As of version 11.01.00, the default value for NATT is RFC.
Example:
Command history:
Release Modification
11.00.05 As of version 11.00.05, keepalive DPD is enabled by default.
11.01.00 As of version 11.01.00, keepalive DPD is enabled by default.
Specifies whether or not to encrypt the third message of an IKE aggressive mode negotiation. The default value is
clear.
Example:
An IPsec tunnel is created when a packet requiring encryption arrives or is generated and the corresponding tunnel
doesn't exist yet. Said packet, the original packet, doesn't usually get sent through the tunnel once it is established. If
IPsec 31
2 Configuration Teldat SA
you configure this command, the original packet is saved and sent through the tunnel once the tunnel is set up. This
command is not configured by default.
The packets received straight after the original packet (up to a maximum of eight) are also stored for later delivery.
Example:
This command is disabled by default and the original packet is not sent through the tunnel once it is established.
When the SEND-ORIGINAL-PKT command is not configured, the original packet is only sent through the tunnel if
that is normal procedure.
IPsec encoded packets are marked with a corresponding label configured with this option.
Only outbound IKE packets are labeled: inbound IKE packets are not labeled.
If the SET-LABEL ENCODED option is not configured in the ISAKMP template but is in the matching DYNAMIC tem-
plate, outbound IKE packets are marked with the label configured in the DYNAMIC template.
Example:
Allows you to configure the tunnel destination's VRF domain. IKE negotiation packets and encrypted packets will
then be routed using this VRF. The use of this command means that the VRF domains for traffic before and after
IPsec encryption may be different.
Example:
Use the no form of this command to delete the front door VRF associated with this dynamic template.
Command history:
Release Modification
11.01.05 This command is available in ISAKMP and IKEv2 templates as of version 11.01.05.
All parameters related to ISAKMP are configured through this. When the router wants to set up a secure tunnel, the
first thing it must do is send the appropriate ISAKMP template proposals to the other end (according to the destina-
tion IP address) so that both devices can agree on which template to use.
Once the SA negotiation process is complete, the dynamic template must be taken into account in the agreement in
order to create the SA connection.
IKEv2 templates are configured using the following subcommands within the TEMPLATE command:
Command Operation
IKEV2 Creates an Ike version 2 template.
DESTINATION-ADDRESS Inserts the remote tunnel endpoint address in the template.
DISCOVER Uses TED to discover the remote end of the tunnel.
BACKUP-DESTINATION Inserts the backup destination IP address in the template.
DISABLE- Disables checking if Main is available and fast return to Main from Backup.
FAST-RE-
TURN-FROM-BACKUP
UDP-ENCAPSULATION Enables UDP encapsulation.
UDP-IKE Enables IKE UDP encapsulation.
LIFE Inserts the SA lifetime created from the template.
IKE Configures parameters relating to IPsec IKE mode.
32 IPsec
Teldat SA 2 Configuration
In this section, we will describe the commands that mark the difference between ISAKMP and IKEv2 templates.
The first thing to do when configuring an IKEv2 template is to set the security parameters that will be used to negoti-
ate the IPsec connection.
Specifies which type of encryption algorithm(s) the IKEv2 template should use. The options are: DES, Triple DES
(TDES), AES128, AES192, AES256, AES128GCM128 and AES256GCM128. You can specify multiple options. En-
cryption algorithms that include authentication (e.g., any GCM variant) can not be configured in the same template
with encryption-only algorithms.
Example:
Specifies which type of authentication algorithm(s) the IKEv2 template should use. The options are: MD5, SHA,
SHA256, SHA384 and SHA512. You can specify multiple options. Templates with encryption algorithms that include
authentication (e.g., any GCM variant) do not require the configuration of this command.
Example:
Specifies which type of pseudo-random function (PRF) algorithm the IKEv2 template should use. The options are
MD5, SHA, SHA256, SHA384 and SHA512. You can specify multiple options.
If you fail to configure this, the values configured with the AUTHENTICATION command are used.
Specifies the Diffie-Hellman group algorithm. You can specify more than one between groups one, two, five and fif-
teen.
IKEv2 also allows the default mode, which doesn't configure encryption or authentication.
Example:
The LIST IKEV2 DEFAULT-PROPOSAL command displays the default values of the IKEv2 proposal:
Example:
IPSec config>
Example:
IPsec 33
2 Configuration Teldat SA
device
id Identifier used during phase 1 of the ISAKMP/IKE
exchange
idtype Types of identifiers used during phase 1 of the
ISAKMP/IKE exchange
crl CRL
fragmentation IKE Fragmentation
lifetime-negotiation Enables lifetime negotiation
early-retry Retry IKE negotiation in 1/4 of purgetime
natt-version Send natt vendor id specific version
window-size Window size announced for overlapping requests
no Negates a command or sets its default
IPSec config>
The following parameters differ from the ISAKMP parameters described above:
Specifies a local or remote authentication method for the device. The options are: pre-shared key and RSA. The de-
fault is pre-shared key authentication.
Example:
The CA and CRL IKE options are only available when rsa is selected on the local or remote end.
Informs the remote end of the NAT-Traversal (NATT) type that the router wants to negotiate. When the remote end
initiates the negotiation, the router will adapt to whatever proposal the remote end makes as long as it supports the
version that the remote end proposes. The supported versions are:
Allows overlapping IKEv2 request-response messages, permitting the recipient to send multiple requests before get-
ting a response to the first one that was sent.
Configured IKEv2 templates may be viewed or deleted using the LIST and NO commands:
Command Operation
LIST TEMPLATE Displays a list of templates and their elements.
NO TEMPLATE Removes elements from the list of templates.
Example:
34 IPsec
Teldat SA 2 Configuration
addr4 ID TYPE
OAKLEY GROUP 1
DPD enabl
Command history:
Release Modification
11.00.07 The IKEv2 template, with its IKE options, was introduced as of version 11.00.07.
11.01.02 The IKEv2 template, with its IKE options, was introduced as of version 11.01.02.
11.01.08 Configuration of encryption algorithms AES256GCM128 and AES128GCM128 was in-
cluded for the IKEv2 templates.
Dynamic templates are configured using the following subcommands in the TEMPLATE command:
Command Operation
DYNAMIC Creates a dynamic template with a security service (ESP or AH).
NEGOTIATION-PROTOCOL Configures the phase I negotiation protocol (IKEv1/IKEv2) to be used.
SOURCE-ADDRESS Inserts the tunnel endpoint source address in the template.
DESTINATION-ADDRESS Inserts the tunnel endpoint destination address in the template.
ANTIREPLAY Enables anti-replay in the template.
PADDING-CHECK Checks whether the padding field in the IPsec header takes the value specified in
the RFC.
LIFE Inserts the SA lifetime created from the template.
IKE Configures parameters relating to IPsec IKE.
KEEPALIVE Enables/disables the available keepalive services.
ENCAP Configures either tunnel or transport operation mode.
NAPT-ID-SKIPPED IPsec must not mark packets for napt.
FAST-FORWARDER Forces fast-forwarding of IPsec packets.
INVALID-SPI-RECOVERY Enables invalid SPI reception notification regardless of whether there is an ISAK-
MP SA with the remote end.
DF-BIT Specifies DF bit processing in IPsec packets.
MTU-THRESHOLD Specifies the minimum MTU threshold for PMTU processing.
MTU-DEFAULT Specifies the initial MTU value that is sent through the IPsec tunnel.
TCP-MSS-ADJUST Adjusts the MSS field value of TCP packets in transit.
RRI-ENABLED Enables Reverse Route Injection (RRI).
RRI-NEXTHOP Configures the next hop that RRI must use.
RRI-METRIC Metric used to install route by RRI.
MAPPED-TO-IFC Maps a template to an interface.
FRONT-DOOR-VRF Sets the VRF used to reach the tunnel destination.
DIRECT-DECODED-FWD Sends decoded packets directly to a next hop or an interface (when forwarding).
DIRECT-ENCODED-FWD Sends encoded packets directly to a next hop or an interface (when forwarding).
ASSIGNED-AD- The address received during the ISAKMP configuration is established on this in-
DRESS-GOES-TO-IFC terface.
UNIQUE Only one similar tunnel per entry on the access list.
PKT-SRC-CLIENT-SRC Uses the original packet’s original IP address as original client.
REPLACE-DESTINATION Replaces the destination of encapsulated packets with the tunnel destination.
PREFRAGMENTATION Enables data pre-fragmentation.
GDOI GROUP Configures the dynamic template as a client in a GDOI group.
SET-LABEL This label is inserted in packets processed by IPsec.
SET-SESSION-MARK Set an AFS session-mark value to IKE and IPsec packets.
VRF Assigns the template to a VRF.
FAULT-TOLERANT Tunnels opened with this template participate in fault tolerant IPsec recovery.
REPORT Reports IPsec statistics to a generic-input NSLA filter.
TUNNEL-PROTECTION TNIP interfaces protected by IPsec template.
IPsec 35
2 Configuration Teldat SA
Specifies which type of ESP the dynamic template should use. The options are DES, TDES, AES128, AES192,
AES256, AES256GCM128 and AES128GCM128 for encryption and SHA1, SHA256, SHA384, SHA512 and NONE
for authentication. The difference between the three AES encryption types is their key length (128, 192 and 256 bits,
respectively). Encryption algorithms that include authentication (e.g., any GCM variant) do not require configuration
of the authentication algorithm.
Example:
Specifies which type of AH the dynamic template should use. The options are MD5, SHA1, SHA256, SHA384 and
SHA512.
Example:
Specifies that a dynamic template will be used by a GDOI client (group member) with the policy sent by the key serv-
er. This option should only be used when the dynamic template is configured as a GDOI client using the TEMPLATE
[ID] GROUP command (explained later in the manual). This is why the GDOI GROUP 1 option is automatically con-
figured when you configure this option.
Example:
Command history:
Release Modification
11.00.05 The GDOI-KS-POLICY option was introduced in dynamic templates as of version
11.00.05.
11.01.00 The GDOI-KS-POLICY option was introduced in dynamic templates as of version
11.01.00.
11.01.08 Configuration of encryption algorithms AES256GCM128 and AES128GCM128 was in-
cluded for the dynamic templates.
Example:
Command history:
Release Modification
11.00.07 The NEGOTIATION-PROTOCOL option was introduced as of version 11.00.07.
11.01.02 The NEGOTIATION-PROTOCOL option was introduced as of version 11.01.02.
Adds the tunnel's local IP address. You can also specify an interface from where the IP address is taken. You only
need to define this for dynamic templates.
36 IPsec
Teldat SA 2 Configuration
The address you add can be an unnumbered address. That is, you can add the address of an interface that is un-
known at the time the device is configured and which will, for example, be assigned by another mechanism such as
PPP.
If this is set to 0.0.0.0 (i.e., not configured), the source address used is the address of the outgoing interface.
Example:
Example:
Example:
In this case, the atlas.teldat.es domain name is used as the destination. Keep in mind that you will need to configure
a DNS server to resolve the domain name.
If the remote tunnel endpoint address is set to 0.0.0.0., it is considered an unknown address and is not taken into ac-
count when selecting the dynamic template during negotiation. Since the destination address is unknown, only the
remote end can begin IKE negotiation.
The following subcommands refer to established default values, but you might need to change them depending on
the situation.
Enables anti-replay. This is a security method to protect against replay attacks. The command is enabled by default
but can be disabled using the no form of this command.
Example:
Although the old IPsec RFC allowed the padding field of the IPsec header to be filled with a random value, the cur-
rent one specifies a particular value for said field. In order for the router to be able to work with devices still comply-
ing with the old RFC, you can configure a parameter that tells the router to check whether the padding field should
take the value defined in the RFC or whether to ignore those data.
Example:
Use the no form of this command to restore the default value (the IPsec header padding field will not be checked).
Allows you to enter the security association (SA) lifetime type based on the dynamic template. The lifetime in dynam-
ic templates can be expressed as a time limit (SECONDS), as was the case for the ISAKMP templates, or as a limit
on the number of bytes (KBYTES) transmitted through the SA generated with this template.
The third option (BOTH) lets you establish both limits at the same time. In this case, the SA is deleted when one of
the limits expires. The default value is seconds.
Example:
The chosen lifetime is given in the VALUE field. If you choose BOTH in the previous subcommand, you have to type
the subcommand twice to give both types of values (seconds and kilobytes).
Example:
IPsec 37
2 Configuration Teldat SA
Example:
Enables Perfect Forward Secrecy (PFS). This service both improves the security of the SAs and provides improved
key management.
Example:
Specifies the Oakley group type. The higher the group level, the longer the negotiation. This is because higher-level
groups require more processing. Group 1 is the default value.
Example:
Allows the router to send a lifetime proposal in the negotiation (i.e., the router proposes a lifetime that is negotiated).
This option is enabled by default.
The router does not send a lifetime proposal when IKE NO LIFETIME-NEGOTIATION is configured. This is useful
when:
• The router encounters a device that won't negotiate if there is a lifetime proposal.
• You want the remote end to set the lifetime.
Warning
Some devices won't negotiate when the lifetime proposal parameter is disabled.
Example:
The packet destination specifies the tunnel remote IP address. This way, there is no need for you to configure a tem-
plate destination address.
Example:
38 IPsec
Teldat SA 2 Configuration
Example:
Specifies whether encapsulation will be done in tunnel or transport mode. Default is tunnel mode.
Example:
Use the no form of this command to restore the default encapsulation mode.
Applies packet marking to IPsec traffic for NAPT. Marking is enabled by default.
Example:
Use the no form of this command to restore the default behavior and apply packet marking.
Routes packets via a fast path to speed up routing. You shouldn't use this option with dynamic templates if you are
going to apply additional processing (such as NAT) to IPsec traffic either before or after encapsulation.
Please note that you can't use this command when the DIRECT-DECODED-FWD and DIRECT-ENCODED-FWD
commands are configured.
Example:
Use the no form of this command to restore the default behavior and disable fast-forwarding of IPsec packets.
Sends an invalid SPI packet notification, regardless of whether there is an ISAKMP SA with the remote end. If an in-
valid SPI is received when there is no ISAKMP SA with the remote end, a new ISAKMP SA is created alerting the re-
mote end of the invalid SPI and allowing it to delete the SA with that SPI.
Regardless of the configuration of this parameter, if there is an ISAKMP SA with the remote end when the invalid SPI
is received, the receiver sends a report.
This function is enabled by default. Use the no form of this command to disable it.
Example:
When encapsulating a packet in IPsec, it is the router's job to ensure that the Path Maximum Transmission Unit Dis-
covery (PMTUD) algorithm continues to function in hosts protected by the tunnel. The PMTUD algorithm uses the
don't fragment (DF) bit in the IP header and ICMP packets. This option lets you specify the way in which the router
processes the DF bit in IPsec packets: always mark (all IPsec traffic will leave with the DF bit set to TRUE), always
remove (the bit is set to FALSE, ICMP/PMTUD packets are not processed and therefore the router acts as a black
hole for this algorithm), or copy the packet being protected (normal ICMP/PMTUD processing and the router's default
option). For further information, please see section 6 of RFC 1191.
Example:
Use the no form of this command to restore the default value COPY.
IPsec 39
2 Configuration Teldat SA
Specifies the lowest maximum transfer unit (MTU) that the router must report to the hosts it protects as a result of
ICMP/PMTU message processing. The default value is 576 bytes, since in most applications this is a compromise
value between the behavior of the network performing fragmentation and a very small MTU. In any case, it depends
on the type of traffic the network is carrying. For further information, please see section 6 of RFC 1191.
Example:
Use the no form of this command to restore the default value of 576 bytes.
Specifies the initial IPsec tunnel MTU that the router must report to the hosts it protects. This setting is disabled by
default and should only be assigned a value when the MTU path is known beforehand. For further information,
please see section 6 of RFC 1191.
Example:
Specifies the maximum TCP packet segment size (MSS) for a security association (SA) generated with this template.
The MSS value is based on the SA MTU size. Use the CLAMPING option to specify a value to subtract from the SA
MTU. The SA MTU value is the lowest of the following values:
Example:
When an integer is specified, it indicates the value the TCP SYN packet's MSS option will change to, provided it is
lower than the value already in the packet.
Example 1:
This option allows you to limit the TCP MSS value in SAs generated with this template to 1100 bytes.
Example 2:
Limits the TCP MSS value in SAs generated with this template to the MTU size minus 40 bytes (default value).
Example 3:
Limits the TCP MSS value in SAs generated with this template to the MTU size minus 60 bytes.
Use the no form of this command to restore the default behavior and disable the TCP MSS option for TCP packets
transiting an SA generated with this template.
Enables Reverse Route Injection (RRI) in the dynamic template. This creates a static route in the routing table when
40 IPsec
Teldat SA 2 Configuration
this template is used to open a tunnel. The destination of the static route is the network (or subnet, or host) specified
by the negotiated remote clients and the next hop value depends on the option selected via the RRI-NEXTHOP com-
mand (see below). This route lasts while the tunnel is open and can be broadcast normally using traditional dynamic
routing algorithms (RIP, OSPF, etc.).
Example:
Use the no form of this command to disable RRI in the dynamic template.
Configures the next hop destination on RRI static routes. There are three possibilities:
SOURCE (default value) - the local tunnel endpoint address is used as the next hop for the static route. This is used
specifically when the tunnel source interface is point-to-point or when all the traffic using the route is going to be en-
crypted and the remote end is different from the negotiated client.
DESTINATION - the remote endpoint address is used. This is used specifically when the tunnel endpoints are dir-
ectly connected or when recursive routing is used to resolve an address rather than the default route.
USER-DEFINED [IP ADD] - the user specifies the IP address of the next hop. This is used in specific cases that do
not fit into either of the above scenarios.
Example:
Configures the cost for the static route installed by Reverse Route Injection (RRI). Default cost for routes installed by
RRI is 10.
Example:
Command history:
Release Modification
11.00.05 This command was introduced as of version 11.00.05.
11.01.00 This command was introduced as of version 11.01.00.
Associates the dynamic template with an interface. This way, the router understands that it must only apply the tem-
plate if traffic is sent through said interface.
Example:
Using this command has many implications, so we recommend that you gain a thorough understanding of how it
works before you configure it. To provide some clarification of the various concepts at issue here, we will now give a
few examples and explain how they work.
Example 1:
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
IPsec 41
2 Configuration Teldat SA
In Example 1, all traffic with 10.127.0.28 as source and 10.127.1.29 as destination is protected by IPsec (irrespective
of the interface through which it is sent). That is to say:
• Packets exiting the device with 10.127.0.28 as source and 10.127.1.29 as destination are encapsulated in an
IPsec tunnel.
• Packets entering the device with 10.127.1.29 as source and 10.127.0.28 as destination must be encapsulated in
an IPsec tunnel or the packet will be dropped.
Example 2:
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 10.127.0.28 255.255.255.255
entry 1 destination address 10.127.1.29 255.255.255.255
;
exit
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp tdes md5
template 1 destination-address 192.168.169.29
template 1 ike natt-version rfc
template 1 keepalive dpd
;
42 IPsec
Teldat SA 2 Configuration
In Example 2, only the traffic sent through the serial0/0 interface with 10.127.0.28 as source and 10.127.1.29 as
destination is protected by IPsec. That is to say:
• Packets exiting the device through the serial 0/0 interface with 10.127.0.28 as source and 10.127.1.29 as destina-
tion are encapsulated in an IPsec tunnel.
• Packets exiting the device through an interface other than the serial 0/0 interface with 10.127.0.28 as source and
10.127.1.29 as destination do so in clear.
• Packets entering the device through the serial0/0 interface with 10.127.1.29 as source and 10.127.0.28 as destina-
tion must be encapsulated in an IPsec tunnel or the packet will be dropped.
• Packets entering the device through an interface other than the serial0/0 interface with 10.127.1.29 as source and
10.127.0.28 as destination are sent in the usual way, even if they haven't been encapsulated in IPsec.
If we now add a template that is not mapped to any interface, we get Example 3.
Example 3:
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 10.127.0.28 255.255.255.255
entry 1 destination address 10.127.1.29 255.255.255.255
;
exit
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp tdes md5
template 1 destination-address 192.168.169.29
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 2 dynamic esp tdes md5
template 2 source-address serial0/0
template 2 destination-address 192.168.169.29
template 2 mapped-to-ifc serial0/0
;
template 3 dynamic esp tdes md5
template 3 source-address serial0/0
template 3 destination-address 192.168.169.29
;
map-template 100 2
map-template 100 3
advanced dpd no always-send
exit
;
exit
IPsec 43
2 Configuration Teldat SA
In Example 3, traffic sent through the serial0/0 interface with 10.127.0.28 as source and 10.127.1.29 as destination is
protected with IPsec in tdes and md5 mode, as is the other traffic. That is to say:
• Packets exiting the device through the serial0/0 interface with 10.127.0.28 as source and 10.127.1.29 as destina-
tion are encapsulated in an IPsec tunnel.
• Packets exiting the device through an interface other than the serial 0/0 interface with 10.127.0.28 as source and
10.127.1.29 as destination are encapsulated in an IPsec tunnel.
• Packets entering the device through the serial0/0 interface with 10.127.1.29 as source and 10.127.0.28 as destin-
ation must be encapsulated in an IPsec tunnel or the packet will be dropped.
• Packets entering the device through an interface other than the serial0/0 interface with 10.127.1.29 as source and
10.127.0.28 as destination must be encapsulated in an IPsec tunnel or the packet will be dropped.
Finally, Example 4 is a sample configuration that allows the same traffic to be sent through two different tunnels. The
router decides which tunnel to use based on the IP routing information. You generally use this configuration when
you have a device with two interfaces, where one backs up the other, and the other interfaces (such as LAN or the
like) are already protected against insecure access.
Example 4:
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 10.127.0.28 255.255.255.255
entry 1 destination address 10.127.1.29 255.255.255.255
;
exit
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp tdes md5
template 1 destination-address 192.168.169.29
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 2 dynamic esp tdes md5
template 2 source-address serial0/0
template 2 destination-address 192.168.169.29
template 2 mapped-to-ifc serial0/0
;
template 3 isakmp tdes md5
template 3 destination-address 1.1.1.2
template 3 ike natt-version rfc
template 3 keepalive dpd
;
template 4 dynamic esp tdes sha1
template 4 source-address ppp1
template 4 destination-address 1.1.1.2
template 4 mapped-to-ifc ppp1
map-template 100 2
map-template 100 4
advanced dpd no always-send
exit
;
exit
;
44 IPsec
Teldat SA 2 Configuration
In Example 4, if the IP routes indicate that traffic to 10.127.1.29 should go through the serial0/0 interface, all traffic
with 10.127.0.28 as source and 10.127.1.29 as destination is protected with IPsec in tdes and md5 mode through a
tunnel with the serial interface IP address as source and 192.168.169.29 as destination. If the IP routes change state
and indicate that traffic to 10.127.1.29 should go through the ppp1 interface, this traffic is protected with IPsec in tdes
and sha1 mode through a tunnel with the ppp1 interface IP address as source and 1.1.1.2 as destination.
Clearly, both tunnels can remain up at the same time and traffic can be sent through one and return through the oth-
er if the IP routes indicate this.
Important
If the template is mapped to an interface and also has fast-forwarding enabled, the packet is sent dir-
ectly to the interface when it is encapsulated by IPsec. That is, it doesn't go back in the fast forwarder
queue for routing as it usually would. Therefore, it doesn't follow the same scheme as described in the
section on Packet Processing with IPsec .
Not only does this configuration allow packets to move faster (since they are sent over a faster path), it also allows
you to give them special treatment once they have been encapsulated by IPsec. For example, you can get the pack-
ets to exit without performing NAT, or you can give them the outbound route before encapsulation, etc.
Use the no form of this command to remove the dynamic template association with the interface.
Allows you to configure the tunnel destination's VRF domain. IKE negotiation packets and encrypted packets will
then be routed using this VRF. The use of this command means that the VRF domains for traffic before and after
IPsec encryption may be different.
Example:
If no value is configured, the VRF set by the TEMPLATE <id> VRF <vrf name> command is used as the front door
VRF.
Use the no form of this command to remove the front door VRF associated with this dynamic template.
Command history:
Release Modification
11.01.03 This command was introduced.
Forwards the decoded packets directly to the configured next hop or interface. This command is not compatible with
the FAST-FORWARDER command and only one of them can be configured.
Example:
Note
If you configure the router to forward the decoded packets to an interface rather than an IP address,
make sure it is a point-to-point interface. If the outgoing interface is not point-to-point, please configure
the next hop IP address.
IPsec 45
2 Configuration Teldat SA
Important
If you configure this command, the packet is sent directly to the interface when it is decapsulated by
IPsec. That is, it does not go back in the forwarder queue for routing as it usually would. Therefore, it
doesn't follow the same scheme as described in the section on Packet Processing with IPsec .
Command history:
Release Modification
11.00.05 This command was introduced as of version 11.00.05.
11.01.00 This command was introduced as of version 11.01.00.
Forwards the encoded packets directly to the next hop or interface configured. This command is not compatible with
the FAST-FORWARDER command and only one of them can be configured.
Example:
Note
If you configure the router to forward the encoded packets to an interface rather than an IP address,
make sure it is a point-to-point interface. If the outgoing interface isn't point-to-point, please configure
the next-hop IP address.
Important
If you configure this command, the packet is sent directly to the interface when it is encapsulated by
IPsec. That is, it doesn't go back in the forwarder queue for routing as it usually would. Therefore, it
doesn't follow the same scheme as described in the section on Packet Processing with IPsec .
Command history:
Release Modification
11.00.05 This command was introduced as of version 11.00.05.
11.01.00 This command was introduced as of version 11.01.00.
Establishes the address received during the ISAKMP configuration as the main address in the interface configured in
this option.
The behavior is similar to the one described under ASSIGNED IP ADDRESS DESTINATION , when explaining the
ADVANCED ADDRESS-ASSIGNED-TO-IFC command. However, in this case, it only takes effect if this template was
selected during negotiation.
That is, unlike the ADVANCED ADDRESS-ASSIGNED-TO-IFC command, with this option you can select which inter-
face the address will be established in when you have more than one alternative.
Example:
Prevents two or more similar tunnels from being associated with the same access control list (ACL) entry. This option
is disabled by default.
46 IPsec
Teldat SA 2 Configuration
Example:
Since you can map an ACL to various templates, you must configure the same value for all templates using the
same ACL.
During the IPsec tunnel creation process, a new dynamic DX entry (relating to one of the static E entries on the list)
is installed in the access control list. The IPsec tunnel associates itself exclusively with the dynamic DX entry. If the
unique option is set, the router starts searching among the other dynamic entries relating to that E entry once the
tunnel is fully established. If it finds a previous dynamic DY entry similar to the DX entry, it removes the tunnel asso-
ciated with the DY entry. The DY entry ends up being deleted afterwards. The router considers the following charac-
teristics to determine whether the DX and DY entries are similar: same source and destination, protocol, ports, VRF
and action.
Example 1:
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 10.122.1.0 255.255.255.0
entry 1 destination address 10.121.1.0 255.255.255.0
;
exit
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp tdes md5
template 1 destination-address 192.168.121.8
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 2 dynamic esp tdes md5
template 2 destination-address 192.168.121.8
template 2 unique
;
template 3 isakmp tdes md5
template 3 destination-address 192.168.121.5
template 3 ike natt-version rfc
template 3 keepalive dpd
;
template 4 dynamic esp tdes md5
template 4 destination-address 192.168.121.5
template 4 unique
;
map-template 100 2
map-template 100 4
advanced dpd no always-send
exit
;
exit
;
According to the configuration in Example 1, the router could set up a tunnel to encapsulate traffic between networks
10.121.1.0/24 and 10.122.1.0/24 where the outgoing interface is either ethernet0/0.10 or ethernet0/0.20. You can't
have both tunnels up at the same time. If a tunnel is created with one of these interfaces as its local interface, the
tunnel using the other Ethernet interface as its local interface (if there is one) is eliminated. The newly created tunnel
connection always prevails over the older one.
IPsec 47
2 Configuration Teldat SA
Use the no form of this command to remove the restriction that prevents similar tunnels from being associated with
the same ACL entry.
When a locally sourced tunnel is being set up, the router checks to see whether this command has been configured.
If it has, the router uses the packet's source IP address that led to the creation of the tunnel as the local client for the
new tunnel. This way, individual tunnels can be set up for multiple clients and included in larger ACLs (rather than
having to specify an ACL for each one). Moreover, individual tunnels can be managed separately despite sharing an
ACL. This command is disabled by default.
Example:
Configures the dynamic template to replace the destination of IPsec encrypted packets with the IPsec tunnel destina-
tion. You should only use this when the tunnel is configured in transport mode (i.e., when the IP header of the IPsec
packet is not encapsulated).
Example:
Use the no form of this command to restore the default behavior and stop the template replacing the destination of
encapsulated packets.
Enables packet fragmentation prior to SA encapsulation. The lowest of the following values is used for the SA MTU
value:
Example:
When this option is selected, any packets larger than the SA MTU size that have the don’t fragment bit in the IP
header turned on are dropped. A PMTUD packet is sent to the source regardless of the value configured using the
TEMPLATE [ID] DF-BIT command.
Packet fragmentation is not compatible with encapsulation in TEMPLATE [ID] ENCAP TRANSPORT transport mode.
Use the no form of this command to restore the default behavior and stop packets from being fragmented prior to SA
encapsulation.
Configures the dynamic template as a client in a GDOI group. The value configured is the GDOI group ID. The GDOI
server address is the destination configured in the template.
Example:
Use the no form of this command to disable GDOI in the dynamic template.
IKE packets are only marked at egress with the label configured using the SET-LABEL ENCODED option in the
ISAKMP template. Received IKE packets are not marked.
If the SET-LABEL ENCODED option is not configured in the ISAKMP template but is in the matching DYNAMIC tem-
plate, the IKE packets are marked at egress with the label configured in the DYNAMIC template.
Example:
48 IPsec
Teldat SA 2 Configuration
Configures the label used in AFS sessions for IPsec decoded packets.
Example:
Command history:
Release Modification
11.00.05 This command was introduced as of version 11.00.05.
11.01.00 This command was introduced as of version 11.01.00.
Example:
Using the SHARED keyword allows you to protect several tnip configured to run in gre mode (ip or multipoint) with
the same source and destination.
If TUNNEL-PROTECTION is configured on the template, then the template takes the source address, internal vrf
(VRF) and external VRF (front-door-vrf) from the tnip interface.
Note
Command history:
Release Modification
11.01.04 This command was introduced as of version 11.01.04.
11.01.05 As of version 11.01.05, IPsec templates with tunnel protection take VRFs from the tnip in-
terface (meaning they cannot be configured).
Assigns the dynamic template to a VRF. This means that the router only applies the template to traffic sent through
the VRF.
Example:
If this command is configured and the template is associated with an interface (through the TEMPLATE [ID]
MAPPED-TO-IFC command), said interface must also be associated with the VRF that you want to assign the tem-
plate to. Otherwise, you'll get an error message. So, for example, if the ethernet0/0 interface is associated with
VRF1, and the dynamic template is associated with the ethernet0/0 interface, an error appears if you try to assign the
template to a VRF other than VRF1.
Example:
Below we'll use some examples to help clarify these concepts and explain how the commands work:
IPsec 49
2 Configuration Teldat SA
The router in these examples has been configured with two VRFs, named VRF1 and VRF2. Two Ethernet subinter-
faces have been created on the router, each associated with one of the VRFs, and both with the same IP address.
network ethernet0/0.10
; -- Ethernet Subinterface Configuration --
ip vrf forwarding VRFE1
;
ip address 192.168.212.201 255.255.254.0
;
;
;
encapsulation dot1q 10
;
;
exit
;
network ethernet0/0.20
; -- Ethernet Subinterface Configuration --
ip vrf forwarding VRFE2
;
ip address 192.168.212.201 255.255.254.0
;
;
;
encapsulation dot1q 20
;
;
exit
;
Example 1:
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 192.168.212.201 255.255.255.255
;
exit
;
exit
;
protocol ip
; -- Internet protocol user configuration --
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp des md5
template 1 life duration seconds 1d
template 1 keepalive dpd
;
template 2 dynamic esp tdes sha1
template 2 source-address 192.168.212.201
template 2 encap transport
;
map-template 100 2
In Example 1, all traffic from source 192.168.212.201 is protected by IPsec (regardless of the VRF it belongs to).
That is:
• Packets that exit the router with source 192.168.212.201 are encapsulated in an IPsec tunnel, irrespective of
whether they are sent through the ethernet0/0.10 or the ethernet0/0.20 subinterface.
• Packets that enter the router with destination 192.168.212.201 must be encapsulated in an IPsec tunnel or they
will be dropped.
50 IPsec
Teldat SA 2 Configuration
Example 2:
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 192.168.212.201 255.255.255.255
;
exit
;
exit
;
protocol ip
; -- Internet protocol user configuration --
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp des md5
template 1 life duration seconds 1d
template 1 keepalive dpd
;
template 2 dynamic esp tdes sha1
template 2 source-address 192.168.212.201
template 2 encap transport
template 2 vrf VRF1
;
map-template 100 2
In Example 2, only traffic with source 192.168.212.201 transmitted through VRF1 (i.e., through an interface asso-
ciated with VRF1), is protected by IPsec. That is:
• Packets with source 192.168.212.201 that exit the router through VRF1 (i.e., through the ethernet0/0 interface) are
encapsulated in an IPsec tunnel.
• Packets with source 192.168.212.201 that exit the router via a VRF other than VRF1 (i.e., those that exit through
the ethernet0/0.20 interface) do so in plain.
• Packets with destination 192.168.212.201 that enter the router through VRF1 (i.e., through the ethernet0/0.10 in-
terface) must be encapsulated in an IPsec tunnel or they will be dropped.
• Packets with destination 192.168.212.201 that enter the router via a VRF other than VRF1 (i.e., those entering
through the ethernet0/0.20 interface) are sent normally, even if they haven't been encapsulated in IPsec.
Example 3 is what we would get if we were to add another dynamic template assigned to another VRF:
Example 3:
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 192.168.212.201 255.255.255.255
;
exit
;
exit
;
protocol ip
; -- Internet protocol user configuration --
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp des md5
template 1 life duration seconds 1d
template 1 keepalive dpd
IPsec 51
2 Configuration Teldat SA
;
template 2 dynamic esp tdes sha1
template 2 source-address 192.168.212.201
template 2 encap transport
template 2 vrf VRF1
;
template 3 dynamic esp des md5
template 3 source-address 192.168.212.201
template 3 encap transport
template 3 vrf VRF2
;
map-template 100 2
map-template 100 3
In Example 3, traffic with source address 192.168.212.201 sent through VRF1 is protected with IPsec in tdes and
sha1 modes, while traffic with the same source address sent through VRF2 is protected with IPsec in des and md5
modes. That is:
• Packets with source address 192.168.212.201 that exit the router through VRF1 (i.e., those exiting through the eth-
ernet0/0.10 interface) are encapsulated in an IPsec tunnel in tdes and sha1 modes.
• Packets with source address 192.168.212.201 that exit the router through VRF2 (i.e., those exiting through the eth-
ernet0/0.20 interface) are encapsulated in an IPsec tunnel in des and md5 modes.
• Packets with destination address 192.168.212.201 that enter the router through VRF1 (i.e., those entering through
the ethernet0/0.10 interface) must be encapsulated in an IPsec tunnel in tdes and sha1 modes, or they will be
dropped.
• Packets with destination address 192.168.212.201 that enter the router through VRF2 (i.e., those entering through
the ethernet0/0.20 interface) must be encapsulated in an IPsec tunnel in des and md5 modes, or they will be
dropped.
Enables fault tolerant IPsec recovery on the template. Any IPsec sessions set up using this template are automatic-
ally passed on to the fault-tolerant pair (making up the fault tolerant IPsec recovery system) when the router fails.
Example:
Use the no form of this command to stop the dynamic template participating in fault tolerant IPsec recovery.
Reports the configured IPsec statistics to the selected generic-input NSLA filter after a specified time period. For fur-
ther information about NSLA filters, see the Teldat Dm754-I NSLA manual.
Example:
Reports the packet loss percentage to the NSLA filter [FILTER-ID] every [MSEC] milliseconds.
Example:
52 IPsec
Teldat SA 2 Configuration
Reports the template input rate (the sum of all the SAs INTO the template), in Kbps, to NSLA filter [FILTER-ID] every
[SEC] seconds.
Example:
Reports the template output rate (the sum of all the SAs OUT of the template), in Kbps, to NSLA filter [FILTER-ID]
every [SEC] seconds.
Example:
Command history:
Release Modification
11.00.05 Template report {RX-LOSSES/RX-RATE-KBPS/TX-RATE-KBPS} commands were intro-
duced as of version 11.00.05.
11.01.00 Template report {RX-LOSSES/RX-RATE-KBPS/TX-RATE-KBPS} commands were intro-
duced as of version 11.01.00.
The IPsec configuration main menu includes a command that allows you to configure a number of advanced charac-
teristics in relation to the connection SAs created from dynamic templates. This command is called the ADVANCED
command and provides access to several subcommands:
Command Operation
DPD Service for maintaining a SA connection.
KEEP-ALIVE Service for maintaining a SA connection.
PURGE-TIMEOUT Configuration for a SA timeout.
RENEGOTIATION-TIME Service for performing SA re-negotiation.
EXPONENTIATION-DEVICE Service for maintaining a SA connection.
LQUEUE Cipher queue length.
NAT-T-PORT UDP encapsulation port (NAT-T translation).
NAT-LOCAL-ADDRESS Local addresses for rules that will be changed.
IPsec 53
2 Configuration Teldat SA
ADDRESS-ASSIGNED-TO-IFC Interfaces that the IP addresses obtained during IKE negotiation take as destina-
tion.
PKT-DEST-ISAKMP-DEST Packet destination indicates the remote tunnel address.
RRI-FLASH Forces RRI-injected routes to be broadcast as quickly as possible through the dy-
namic routing algorithms.
CONNEVENT-PERIOD Sets the periodic notification interval for open connections.
NUMBER- Sets the maximum number of IPsec headers per packet.
OF-IPSEC-HEADERS
NO Sets the advanced IPsec configuration parameters to their default values.
“ADVANCED DPD”
Dead peer detection (DPD) is a service that allows the router to detect when the connection between the router and
the device at the other end of the tunnel has been lost. To use the service, the router sends a DPD vendor ID during
phase I of a negotiation. The router performs DPD verification by sending phase II notifications (R-U-THERE mes-
sages) to the device at the other end of the tunnel and waiting for DPD acknowledgements (R-U-THERE-ACK mes-
sages) to come back. The router will only send an R-U-THERE message if it doesn't receive traffic from the other
end of the tunnel within a configurable period of time (idle period).
If you enable the service on an ISAKMP template, the router sends phase II DPD messages through the tunnels gen-
erated from that template, and also responds to notifications. If you don't enable the service, the router responds to
any DPD notifications it receives but doesn't send any.
Command Operation
ANTI-REPLAY Enables the DPD packet anti-replay feature.
ALWAYS-SEND Always sends keep-alive messages after the idle time has expired.
IDLE-PERIOD Idle period before sending DPD packets.
INTERVAL Interval between DPD keep-alive messages.
PACKETS Maximum number of DPD packets without confirmation.
NO Disables an option or resets a parameter's default values.
Enables the DPD packet anti-replay feature. This is disabled by default. Use the no form of this command to restore
the default behavior.
Asks the router to perform DPD verification once the idle period has expired. When this is set to ADVANCED DPD
NO ALWAYS SEND , the router must wait for data once the idle period has expired before performing DPD verifica-
tion.
Command history:
Release Modification
11.00.05 As of version 11.00.05, default is ADVANCED DPD ALWAYS-SEND.
11.01.00 As of version 11.01.00, default is ADVANCED DPD ALWAYS-SEND.
Idle period (i.e., the time without receiving any data through the tunnel) before DPD verification is performed. The de-
fault value is 60 seconds. Use the no form of this command to restore the default value.
Interval (in seconds) between sending DPD messages when there is no response. The default value is 5 seconds.
Use the no form of this command to restore the default value.
Maximum number of DPD messages without a response. Use the no form of this command to restore the 3-packet
default value.
Example:
54 IPsec
Teldat SA 2 Configuration
If you want the DPD service, you need to enable it individually on each ISAKMP template with the TEMPLATE [ID]
KEEPALIVE DPD command.
“ADVANCED KEEP-ALIVE”
Keep alive is a service that tries to ensure the remote peer will maintain its SA open by monitoring the time during
which the router shows no signs of life. When you enter this command, you will be asked to define two parameters:
Command Operation
PACKETS Maximum number of packets without a response.
TIMEOUT Wait time, in seconds, since the last packet was received.
NO Resets the above parameters to their default values.
Example:
If you want the keep-alive service, enable it individually on each dynamic template using the TEMPLATE ID
KEEPALIVE KEEPALIVE command.
Allows you to configure the SA timeout value. This is, for example, the time a SA negotiation will take to timeout
when trying to negotiate a tunnel with a destination that isn't responding. Use the ADVANCED NO PURGE-TIMEOUT
command to restore the 15-second default value for this parameter.
Example:
“ADVANCED RENEGOTIATION-TIME”
The renegotiation time is a cap established in relation to the end of a SA connection lifetime that determines when a
SA renegotiation should take place. If there is traffic between the renegotiation time limit and the end of the SA, the
router will automatically renegotiate a new SA before the current SA lifetime expires. This stops traffic from getting
lost when a SA expires.
This value is interpreted as a percentage. It is applied to each SA lifetime (in seconds) and never drops below one
minute.
Use the ADVANCED NO RENEGOTIATION-TIME command to restore the 10% default value.
Example:
The last line is used for confirmation purposes and describes the following behavior: when a SA has a twenty percent
lifetime left, the router checks whether there are any packets up to the point of expiry. If there are, it initiates a new
SA negotiation one minute before expiry.
“ADVANCED EXPONENTIATION-DEVICE”
Gives you access to two additional commands: HARDWARE and SOFTWARE. These allow you to configure the
way ciphering operations will be carried out when processing encrypted packets. If you pick the HARDWARE option,
packets will be encrypted using HARDWARE-level encryption (cipher card). With the SOFTWARE option, software
code will be used to perform ciphering operations. Default is software.
Example:
“ADVANCED LQUEUE”
IPsec 55
2 Configuration Teldat SA
The use of fault tolerant IPsec recovery can lead to a large number of requests in the encryption queue. When using
this subsystem, you must increase the value of this parameter to, at least, the number of IPsec sessions that will be
established simultaneously, or the number of input buffers on the interface where the sessions are established,
whichever is larger. Use the no form of this command to restore the default value (50).
Example:
“ADVANCED NAT-T-PORT”
The default value is 4500. Use the no form of this command to restore the default value.
Example:
“ADVANCED NAT-LOCAL-ADDRESS”
Sets the local address of rules exchanged through ISAKMP (please see the section on Configuring ISAKMP).
Example:
“ADVANCED ADDRESS-ASSIGNED-TO-IFC”
Configures the interfaces with the IP addresses obtained through ISAKMP (please see the section on Configuring
ISAKMP).
Example:
“ADVANCED PKT-DEST-ISAKMP-DEST”
Specifies that the IPsec remote tunnel endpoint address is the packet destination, thus inducing the tunnel to open.
Example:
Use the no form of this command to disable this function and restore the default value.
“ADVANCED RRI-FLASH”
When this command is enabled, RRI-injected routes are immediately broadcast through the dynamic routing al-
gorithms (where possible) when they enter the device's routing table.
Example:
Use the no form of this command to stop the RRI-injected routes from being broadcast immediately. The dynamic
routing algorithm in use will decide when to send them (default behavior).
“ADVANCED CONNEVENT-PERIOD”
You must enter a temporary value so that a CONNEVENT event (which will use the value as a time interval) can take
place at regular intervals. This type of event is generated for each connection established, with between 40 and 50
events generated per second. The router will seek to concentrate the events at the beginning of each interval, but the
56 IPsec
Teldat SA 2 Configuration
process will take longer if many tunnels are open. The interval that you enter must be long enough to allow all of the
open connections to be notified. If it isn't, you can use the list statistics command from the monitoring console to
view the number of connections that couldn't be notified.
Example:
Use the no form of this command to disable periodic notifications (which uses the CONNEVENT event) and restore
the period value to its 0 second default.
“ADVANCED NUMBER-OF-IPSEC-HEADERS”
Establishes the maximum number of IPsec headers a packet can have. That is, the number of successive IPsec en-
capsulations that can be done. The default value is 1.
Example:
This concludes the configuration of the ISAKMP/IKEv2 and dynamic templates required to perform IPsec IKE. Of
course, we need to enter one more parameter to make them work. That parameter is the pre-shared key that both
security routers must possess in order to authenticate one another. The key is entered from the main IPsec menu:
Pre-shared key authentication works differently for IKEv1 and IKEv2 negotiations:
You can enter the pre-shared key associated with the remote device name or IP address, according to how the
tunnel was envisaged when the TEMPLATE IKE IDTYPE command was used for the ISAKMP templates.
• In the case of IKEv2:
When acting as the IKEv2 initiator, you can enter the pre-shared key associated with the responder's hostname or
IP address. The pre-shared key lookup is performed using the peer's hostname or address, in that order.
When acting as the IKEv2 responder, you can enter the pre-shared key associated with the Initiator ID (name or
IP), according to how the tunnel was envisaged when the TEMPLATE IKE IDTYPE command was used for the
IKEv2 templates on the initiator.
Please note, however, that this command doesn't need an identifier [ID] like other commands because it is associ-
ated with a remote IP address/host rather than with a template.
You can enter the pre-shared key in plain text (using the PLAIN subcommand), or in ciphered text (using the
CIPHERED subcommand). The key is usually entered in plain when entered manually from the console. When using
a configuration saved in text mode (from a SHOW CONFIG command), the key will be ciphered. Plain text keys can
be between 1 and 32 bytes long and can be entered in hexadecimal format (starting with 0x), or in ASCII. Don't for-
get to double the number of characters (between 0-9 and A-F) when you enter a hexadecimal value. Ciphered keys
are always shown in hexadecimal format.
Example 1:
The pre-shared key admits networks with 0, 8, 16 and 24-bit masks in IP addresses.
Example 2:
The pre-shared key admits the wildcard character (*) at the end of the host name.
IPsec 57
2 Configuration Teldat SA
Example 3:
Example 4:
Use the LIST KEY PRESHARED command to view the configured pre-shared keys. The keys as such are not printed
in the console but you can see which IP addresses or host names are associated with a pre-shared key:
You can use the NO KEY PRESHARED {IP/HOSTNAME} [ADDRESS/NAME] command to remove a key associated
with an IP address or host name.
Finally, having defined the access control list (ACL) and templates, all we need to do now is to create a security
policy database (SPD). Each entry in the SPD consists of an ACL element and an associated template. Mapping is
the term given to associating the ACL element with the template. See below to learn about the map command and
how to use it:
Command Operation
ASSIGN-ACCESS-LIST Assigns an ACL to the IPsec protocol.
ASSOCIATE-KEY Associates a key with an ACL.
ASSOCIATE-DEST-MASK Associates a destination mask with an ACL.
MAP-TEMPLATE Associates ACL elements with templates.
“ASSIGN-ACCESS-LIST [ACCESS_LIST]”
Example:
IPSec config>assign-access-list ?
<100..1999> Enter extended access list id
IPSec config>assign-access-list 100
One of the parameters negotiated when opening an IPsec tunnel is the access control, i.e., the tunnel clients. In prin-
ciple, knowing the pre-shared key allows the remote device to open a tunnel to the local device, independently of the
clients. However, sometimes this is not convenient, as you may want to allow the devices that know one key to have
different controls to the devices that know another key.
Only devices that know the key associated with the teldat_router hostname can open a tunnel to access the
192.60.64.0/24 network.
58 IPsec
Teldat SA 2 Configuration
Devices that only know the key associated with the router hostname cannot open a tunnel to access the entire
192.60.64.0/24 network.
Since there is no key associated with ACL 101, devices that know the keys associated with the router and teld-
at_router hostnames can open a tunnel to access host 192.60.64.1
Example 1:
• The devices that know the key associated with an IP address starting with 10 are the only ones allowed to open a
tunnel for production. In this case, a production tunnel can only be opened for devices that know the key for IP ad-
dress 10.127.0.28. The ASSOCIATE-KEY IP 100 10.0.0.0 command controls this behavior.
• All devices that know the key associated with an IP address starting with 10, or the generic key (entered with KEY
PRESHARED IP 0.0.0.0), can open a management tunnel with the 10.127.1.57 management device.
Example 2:
feature access-lists
; -- Access Lists user configuration --
access-list 100
description "Control de Acceso para Produccion"
entry 1 default
entry 1 permit
entry 1 source address 10.127.1.0 255.255.255.0
entry 1 destination address 10.127.0.0 255.255.0.0
;
exit
;
access-list 101
description "Control de Acceso para Gestion"
;
entry 1 default
entry 1 permit
entry 1 source address 10.127.1.57 255.255.255.255
entry 1 destination address 10.127.0.0 255.255.0.0
;
exit
;
exit
p ip
; (...)
ipsec
; -- IPSec user configuration --
enable
assign-access-list 101
assign-access-list 100
;
; (...)
associate-key ip 100 10.0.0.0
key preshared ip 0.0.0.0 ciphered 0x37349246263B0066
key preshared ip 10.127.0.28 ciphered 0x7CC9756395EFB97F
exit
Use the no form of this command to remove an association between a key and an ACL.
IPsec 59
2 Configuration Teldat SA
One of the parameters negotiated when opening an IPsec tunnel is the access control, i.e., the tunnel clients. In a
star configuration, for example, tunnel clients are usually allocated different subnets of a given network. Consider, for
instance, a network where the remote ends are assigned class C IP addresses from network 192.168.0.0/16. Then,
the remote end A would have the 192.168.1.0/24 address range, the remote endpoint B would have the
192.168.2.0/24 address range, and so on.
In this case, you would only need to configure one ACL with 192.168.0.0/16 as destination in the central remote. The
problem with this configuration is that it would not prevent the remote ends from opening a tunnel to a wider range of
addresses than desired (i.e., 255 addresses). By setting the associate-dest-mask parameter to 255.255.255.0, you
can set any limit you want. As such, this parameter gives you a very simple configuration on the central side, protec-
ted from negotiations attempting to propose a wider address range than permitted, without having to configure a dif-
ferent access list for each one.
We can make the following statements with regard to the example below:
• Remote devices are only allowed to open a tunnel with a subset of the 192.168.0.0/16 network and this subset has
a mask with more bits set to 1 than 255.255.255.0, which is what is configured in the associate-dest-mask para-
meter.
• Any remote device attempting to open a tunnel with a mask with fewer bits set to 1 than configured in the asso-
ciate-dest-mask parameter will have its proposal rejected and will receive an invalid-id message.
Example:
Use the no form of this command to remove an association between a destination mask and an ACL.
Example:
When performing mapping, the ACL entry list from the IPsec monitoring menu will sometimes show some automatic-
ally generated entries distinguished by the words DYNAMIC ENTRY that weren't entered by the user. They are im-
portant in that they allow the two tunnel ends to communicate control packets.
Use the no form of this command to remove an association (or mapping) between an ACL element and a template.
The automatically generated entry remains even if you disable mapping (i.e., you should delete it if it is no longer re-
60 IPsec
Teldat SA 2 Configuration
quired).
However, there is an additional command related to the bandwidth reservation feature (BRS):
“QOS-PRE-CLASSIFY”
Allows you to classify packets based on their respective BRS classes prior to encryption.
When this mode is enabled, packets are classified prior to encryption, which means that different traffic classes can
be prioritized within the same IPsec tunnel. Classification will not work on access controls that aren't associated with
an IP rule. This is because there is no way of knowing which outbound interface the packets will use before being en-
crypted and, therefore, no way of applying the BRS associated with that interface. When this mode is disabled, the
analyzed header becomes the IPsec tunnel header and all traffic coming from the IPsec tunnel is then classified in
the same BRS class.
Example:
IPSec config>qos-pre-classify
IPSec config>
Run the NO QOS-PRE-CLASSIFY command to disable this option and set the default behavior.
Before considering the configuration complete, you can use trace monitoring to check what you've done, modify er-
rors and even determine which events to view:
Command Operation
LIST ALL Displays the entire configuration.
SHOW CONFIG Displays the configuration commands.
EVENT Enables certain events.
LIST ENABLED-EVENTS Displays the filter configured for events monitoring (if any).
“LIST ALL”
Shows all the configuration policies held in the SPD (i.e., the ACL elements and the template list).
Example:
TEMPLATES
1 dynamic ESP-3DES ESP-MD5 SRC=0.0.0.6 DES=192.60.64.1
LifeTime:0h3m0s 100000 kbytes
PFS disabled
IPsec 61
2 Configuration Teldat SA
IKE AGGRESSIVE
PRESHARED
fqdn ID TYPE
OAKLEY GROUP 1
4 key entries
172.24.51.57 ************
192.24.51.74 ************
192.24.78.75 ************
192.60.64.1 ************
0 rsakey entries
Id. Date. Len CA. Cert sn.
KeepAlive Configuration:
Maximum number of encoded packets without receiving an answer: 0.
Timeout after last packet encoded: 0 seconds.
DPD Configuration:
Idle period(secs) before sending DPD keepalives: 60
Maximum number of DPD keepalives not acknowledged: 3
Period of time(secs) between DPD keepalives: 5
Always send keepalive after idle period expiration : ENABLED
Anti-replay : DISABLED
“SHOW CONFIG”
Displays the configuration commands. Please note that any field values matching default values will not be shown.
The following example displays the SHOW CONFIG command output with the same configuration as the LIST ALL
command example.
Example:
enable
assign-access-list 101
;
template 1 dynamic esp tdes md5
template 1 source-address 0.0.0.6
template 1 destination-address 192.60.64.1
template 1 life type both
template 1 life duration seconds 180
template 1 life duration kbytes 100000
;
template 2 dynamic esp des sha1
template 2 source-address 192.24.51.75
template 2 destination-address 192.24.51.74
template 2 life type both
template 2 life duration seconds 3000
template 2 life duration kbytes 100000
;
template 3 dynamic ah md5
template 3 source-address 192.24.51.75
template 3 destination-address 192.24.51.74
template 3 life type both
template 3 life duration seconds 3000
template 3 life duration kbytes 100000
;
template 4 dynamic ah sha1
template 4 source-address 192.24.51.75
62 IPsec
Teldat SA 2 Configuration
“EVENT ALL”
Lets you view all events. Events must be enabled through the events monitoring process (P 3) and can be viewed in
P 2.
Example:
You can use this command to view only those events with a source or destination address within the range defined
by [IP ADD][MASK], once enabled. Please see the LIST NEGOTIATION FILTER monitoring command.
Example:
“LIST ENABLED-EVENTS”
Example:
This method is usually used in star networks. In such networks, the devices that want to connect to the VPN are al-
located an address for the session by a central node. This node is also responsible for determining which devices will
be name servers and whether PFS or the port will be used for NAT traversal (NAT-T).
Use the following parameters from the TEMPLATE menu to configure this method:
Command Operation
IKE METHOD Adds XAUTH-INIT-PRESHARED and XAUTH-INIT-RSA options.
CONFIG Allows you to specify whether the device will initiate the configuration method, wait
for a proposal, or behave in accordance with the IKE method used.
Lets you add the new Extended Pre-shared Key Authentication functionality to the above-mentioned IKE METHOD
command. At the time of writing this document, this functionality is described in the Extended Authentication within
ISAKMP/Oakley draft. If you enable this parameter, it means that you want to perform pre-shared authentication with
an ISAKMP configuration process, whereby the initiator must authenticate with a remote server that can allocate the
initiator with the internal VPN IP address, among other things.
IPsec 63
2 Configuration Teldat SA
Example:
Lets you add the new Extended RSA Authentication functionality to the IKE METHOD command. At the time of writ-
ing this document, this functionality is described in the Extended Authentication within ISAKMP/Oakley draft. If you
enable this parameter, it means that you want to perform RSA authentication with an ISAKMP configuration process,
whereby the initiator must authenticate with a remote server that can allocate the initiator with the internal VPN IP ad-
dress, among other things.
Example:
“CONFIG INITIATOR”
Specifies that the router will initiate configuration, making the initial proposals and requesting the necessary paramet-
ers.
Example:
“CONFIG RESPONDER”
Specifies that the router will wait for the remote device to initiate configuration.
Example:
“CONFIG NONE”
Specifies that the IKE method used will determine whether the router acts as initiator or responder. This is the default
behavior.
Example:
With Extended Authentication (XAUTH), the router authenticates itself with a server and is subsequently assigned
the parameters required to establish a connection. This authentication is usually done by means of a user name and
password.
The following commands allow you to associate a user with a password, IP address or name.
Command Operation
XAUTH-IP Associates a user with an IP address.
XAUTH-HOSTNAME Associates a user with a name.
XAUTH-USER Specifies a user’s properties.
Using these commands you can define the username and password that will be associated with the IP address para-
meter you enter.
In the case of the XAUTH responder (i.e., when the CONFIG RESPONDER command is configured), the IP address
will be the address that was used to identify the remote endpoint. Under normal procedure, the XAUTH responder re-
quests an IP address upon completion of the phase phase I negotiations and authentication. However, if the NO RE-
64 IPsec
Teldat SA 2 Configuration
QUEST IP-ADDRESS option is configured, the XAUTH responder proceeds directly to phase II negotiations after ob-
taining authentication, using the clients configured in the associated ACL.
In the case of the XAUTH initiator (i.e., when theCONFIG INITIATOR command is configured), this IP address will be
the address assigned to the remote endpoint (i.e., to the XAUTH responder) during negotiation of the ISAKMP con-
figuration method (if you want to get the address from a pool, you should use the XAUTH-USER command rather
than this command). The MASK command allows you to change the 32-bit network mask default that the XAUTH ini-
tiator sends to the XAUTH responder. If a MASK is already configured in the responder, it overwrites the value re-
ceived from the initiator. If you want the DNS servers and the default domain name that the XAUTH initiator sends to
the XAUTH responder to be different from the ones that the XAUTH initiator uses, you can use the DNS-SERVER
and DEFAULT-DOMAIN-NAME options to change them. You can also use the LOCAL-LAN-ACCESS command to
specify that the XAUTH responder's local network remain outside the IPsec tunnel. That is, the network won't be pro-
tected by IPsec on the XAUTH responder side. This command is often used to allow the XAUTH responder to ac-
cess its local network (usually a restricted access LAN) while bypassing IPsec policies.
Example:
These two commands let you define the user and password that will be associated with the name entered as a para-
meter.
This name indicates the host name used to identify the remote endpoint.
Example:
These commands allow you to associate a user with a pool, password, local network outside the tunnel and network
mask.
In the case of the XAUTH initiator, when the user (XAUTH responder) is identified with their user name, user, and
then requests an IP address, the address will come from the pool configured as pool name (this pool will have been
previously defined in the IP configuration). Note, if you want the IP address to remain the same at all times, then you
should use the XAUTH-IP command rather than this command. The MASK command, like the XAUTH-IP command,
allows you to change the 32-bit network mask default that the XAUTH initiator sends to the XAUTH responder. If a
MASK is already configured in the responder, it overwrites the value received from the initiator. The DNS-SERVER
and DEFAULT-DOMAIN-NAME options allow you to change the DNS servers and default domain name that the
XAUTH initiator sends to the XAUTH responder so that they aren't the same as the ones used by the XAUTH initiat-
or. In addition, the LOCAL-LAN-ACCESS like the XAUTH-IP command, specifies the XAUTH responder’s local net-
work which is outside the IPsec tunnel.
Example:
IPsec 65
2 Configuration Teldat SA
(3) The XAUTH initiator checks they are correct and returns a positive response.
(4) The XAUTH responder then requests an IP address, mask, DNS server, default domain name, local access net-
work, NAT port, and other parameters.
(5) The XAUTH initiator gets an IP address from the remote VPN pool and sends it to the XAUTH responder along
with the mask, local access network, DNS server, default domain name, NAT port and any other requested
parameters.
(6) The XAUTH responder begins phase II negotiations using the assigned IP/mask.
Please note that steps 4 and 5 don't appear when the NO REQUEST IP-ADDRESS command is configured in the
XAUTH responder. In this case, the XAUTH responder goes straight to the phase II negotiations after obtaining au-
thentication, using the clients configured in the associated access list.
Command history:
Release Modification
10.09.26 The MASK, DNS-SERVER and DEFAULT-DOMAIN-NAME options were introduced as of
version 10.09.26.
11.00.05 The XAUTH-IP, XAUTH-HOSTNAME and XAUTH-USER default commands are obsolete
as of version 11.00.05. The MASK, DNS-SERVER and DEFAULT-DOMAIN-NAME op-
tions were introduced as of version 11.05.00.
11.01.00 The XAUTH-IP, XAUTH-HOSTNAME and XAUTH-USER default commands are obsolete
as of version 11.01.00. The MASK option was introduced as of version 11.01.00.
11.01.01 The DNS-SERVER and DEFAULT-DOMAIN-NAME options were introduced as of version
11.01.01.
10.09.27 The MASK value configured on the responder overwrites the value received from the initi-
ator as of version 10.09.27.
11.00.06 The MASK value configured on the responder overwrites the value received from the initi-
ator as of version 11.00.06.
11.01.02 The MASK value configured on the responder overwrites the value received from the initi-
ator as of version 11.01.02.
Imagine we have a router that closes VPN client tunnel connections. The router has an Ethernet interface and an
ADSL interface.
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 172.24.78.130 255.255.0.0
ip proxy-arp enable
exit
;
network atm0/0.1
; -- ATM interface configuration --
ip address 80.1.1.123 255.255.255.255
exit
The device has subnet 172.24.6.80 255.255.255.240 available for users connecting remotely. This subnet is con-
figured in the remotevpn pool.
feature access-lists
; -- Access Lists user configuration --
access-list 101
;
entry 1 default
entry 1 permit
entry 1 destination address 172.24.6.80 255.255.255.240
;
exit
exit
;
protocol ip
; -- Internet protocol user configuration --
66 IPsec
Teldat SA 2 Configuration
protocol ip
ipsec
xauth-user daisy pool remotevpn
xauth-user daisy password plain goodbye
protocol ip
ipsec
key preshared hostname mygroup plain hello
Complete configuration
log-command-errors
no configuration
add device atm-subinterface atm0/0 1
feature access-lists
; -- Access Lists user configuration --
access-list 101
entry 1 default
entry 1 permit
entry 1 destination address 172.24.6.80 255.255.255.240
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 172.24.78.130 255.255.0.0
ip proxy-arp enable
exit
;
network atm0/0.1
; -- ATM interface configuration --
ip address 80.1.1.123 255.255.255.255
exit
;
;
protocol ip
; -- Internet protocol user configuration --
route 0.0.0.0 0.0.0.0 80.1.1.123 1
route 172.24.6.80 255.255.255.240 80.1.1.123
;
pool remotevpn 172.24.6.80 172.24.6.95
;
rule 1 local-ip 80.1.1.123 remote-ip any
rule 1 napt translation
rule 1 napt firewall
rule 1 napt timeout 30
;
classless
;
;
ipsec
; -- IPSec user configuration --
enable
assign-access-list 101
;
template 1 isakmp tdes md5
template 1 life duration seconds 86400
IPsec 67
2 Configuration Teldat SA
2.3.3.3 VPN client configuration when the client is a router and doesn't require an IP address
In this example, the router is configured as a client of the server from the above example and doesn't request an IP
address.
log-command-errors
no configuration
set hostname mygroup
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 172.24.6.84 255.255.255.252
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 192.168.248.28 255.255.255.0
ip address 172.24.6.85 255.255.255.252 secondary
;
exit
;
;
event
; -- ELS Config --
enable trace subsystem IKE ALL
exit
;
;
protocol ip
; -- Internet protocol user configuration --
route 0.0.0.0 0.0.0.0 192.168.248.98
;
;
68 IPsec
Teldat SA 2 Configuration
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp tdes md5
template 1 destination-address 80.1.1.123
template 1 ike mode aggressive
template 1 ike natt-version draft-v2-n
template 1 config responder
template 1 ike method xauth-init-preshared
template 1 ike idtype keyid
template 1 ike group two
;
template 2 dynamic esp tdes md5
template 2 source-address 192.168.248.28
template 2 destination-address 80.1.1.123
;
map-template 100 2
key preshared ip 80.1.1.123 plain hello
;
;
xauth-ip 80.1.1.123 user daisy
xauth-ip 80.1.1.123 password plain goodbye
xauth-ip 80.1.1.123 no request ip-address
;
exit
;
exit
;
dump-command-errors
end
The device behaving as a client can receive an IP address during the ISAKMP configuration protocol. This IP ad-
dress can be used in two different ways:
The assigned IP address becomes the NAT address used in the NAPT rules whose local address or interface
matches the address configured with the ADVANCED NAT-LOCAL-ADDRESS command.
In this operating mode, you need to know the network the server-assigned IP address belongs to. You'll also need to
use a fictitious address from that network in the NAPT rule in order to trigger the ISAKMP negotiation when there is
traffic.
In the sample configuration below, the server assigns an IP address from network 172.24.0.0/16 and uses one of the
network's addresses (172.24.78.1) as the IP address in the NAPT rule. It doesn't matter which network IP address is
used in the rule because it is changed during the ISAKMP exchange and is never used.
log-command-errors
no configuration
set hostname teldat
add device ppp 1
set data-link at cellular0/0
set data-link at cellular0/1
set data-link at cellular1/0
set data-link at cellular1/1
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 172.24.0.0 255.255.0.0
exit
IPsec 69
2 Configuration Teldat SA
exit
;
global-profiles dial
; -- Dial Profiles Configuration --
profile HSPA default
profile HSPA inout
profile HSPA 3gpp-apn movistar.es
;
profile MOVISTAR default
profile MOVISTAR dialout
profile MOVISTAR idle-time 300
exit
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 192.6.3.186 255.255.255.0
;
exit
;
network cellular1/0
; -- Interface AT. Configuration --
pin plain 1111
sim-select internal-socket-2
;
network mode automatic
network domain cs+ps
exit
;
network cellular1/1
; -- Interface AT. Configuration --
lcp-options acfc
lcp-options pfc
lcp-options accm 0
exit
;
network ppp1
; -- Generic PPP User Configuration --
ip address unnumbered
;
ppp
; -- PPP Configuration --
authentication sent-user MOVISTAR password keykey
ipcp local address assigned
no ipcp peer-route
lcp echo-req off
exit
;
base-interface
; -- Base Interface Configuration --
base-interface cellular1/1 link
base-interface cellular1/1 profile HSPA
;
exit
;
exit
;
network loopback1
; -- Loopback interface configuration --
ip address unnumbered
exit
;
event
; -- ELS Config --
enable trace subsystem IKE ALL
exit
;
;
70 IPsec
Teldat SA 2 Configuration
protocol ip
; -- Internet protocol user configuration --
route 0.0.0.0 0.0.0.0 ppp1
;
rule 1 local-ip ppp1 remote-ip any
rule 1 napt translation
rule 1 napt ip 172.24.78.1
;
classless
;
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp tdes md5
template 1 destination-address 80.36.189.231
template 1 ike mode aggressive
template 1 ike natt-version draft-v3
template 1 config responder
template 1 ike method xauth-init-preshared
template 1 ike idtype keyid
template 1 ike group two
;
template 2 dynamic esp tdes md5
template 2 source-address ppp1
template 2 destination-address 80.36.189.231
;
map-template 100 2
key preshared ip 80.36.189.231 plain key1
advanced nat-local-address ppp1
;
xauth-ip 80.36.189.231 user anonymous
xauth-ip 80.36.189.231 password plain pppp
;
exit
;
exit
dump-command-errors
end
Notes:
• All traffic is protected by IPsec, and has the source address assigned by the server.
• You can't use the NAPT rule firewall command in this configuration.
• The device does not reply to the assigned IP address. That is, it cannot be managed (telnet, ftp, snmp, etc.) from
the server network.
• The network to which the server-assigned IP address belongs must be known in advance.
If any of these conditions are not met, the mode of assigning IP addresses to interfaces will have to be configured
(this will be explained below).
As an interface address
The IP address assigned becomes the interface address configured using the ADVANCED ADDRESS-AS-
SIGNED-TO-IFC command. This interface is normally a loopback interface.
log-command-errors
no configuration
set hostname teldat
add device ppp 1
add device loopback 1
set data-link at cellular0/0
set data-link at cellular0/1
set data-link at cellular1/0
IPsec 71
2 Configuration Teldat SA
72 IPsec
Teldat SA 2 Configuration
exit
;
protocol ip
; -- Internet protocol user configuration --
route 80.36.189.231 255.255.255.255 ppp1
route 0.0.0.0 0.0.0.0 loopback1
;
rule 2 local-ip loopback1 remote-ip any
rule 2 napt translation
rule 2 napt firewall
;
rule 1 local-ip ppp1 remote-ip any
rule 1 napt translation
rule 1 napt firewall
;
classless
;
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp tdes md5
template 1 destination-address 80.36.189.231
template 1 ike mode aggressive
template 1 ike natt-version draft-v3
template 1 config responder
template 1 ike method xauth-init-preshared
template 1 ike idtype keyed
template 1 ike group two
;
template 2 dynamic esp tdes md5
template 2 source-address ppp1
template 2 destination-address 80.36.189.231
;
map-template 100 2
key preshared ip 80.36.189.231 plain key1
advanced address-assigned-to-ifc loopback1
;
xauth-ip 80.36.189.231 user anonymous
xauth-ip 80.36.189.231 password plain pppp
;
exit
;
exit
dump-command-errors
end
Notes:
IPsec 73
2 Configuration Teldat SA
If you only want traffic with destination 172.24.0.0/16 to be protected by IPsec and everything else to go through
ppp1, you should change the routes as follows:
That is, the traffic you want to protect must be specified in the routes. All traffic with a route pointing to loopback1 is
protected by IPsec.
Use the following parameters from the template menu to configure this method:
Command Operation
CONFIG Specifies whether the device initiates the configuration method.
Enables the configuration mode. For the moment, IPv4 and IPv6 routes can be sent via the IKEv2 CFG payload.
Configuring the TEMPLATE <ID> CONFIG command without any options enables the device to accept routes.
Example:
Command history:
Release Modification
11.01.04 This command, with no options, was introduced as of version 11.01.04.
Specifies whether the device accepts and installs the routes that it receives via the configuration mode. You can set
the metric used for installing received routes.
Example:
By default, the router accepts the routes that it receives. Use the no form of this command to stop the router from ac-
cepting and installing routes.
Example:
Command history:
Release Modification
11.01.04 This command was introduced as of version 11.01.04.
74 IPsec
Teldat SA 2 Configuration
Specifies the route-set parameters sent to the peer via the configuration mode. This command offers the following
options:
Example:
Specifies the route-set parameters sent to the peer via the configuration mode. An internal_IP4_subnet and/or in-
ternal_IP6_subnet attribute, containing the main IPv4 and/or IPv6 addresses of the interface protected by this tem-
plate (assigned with the TUNNEL-PROTECTION command), are sent in the configuration payload.
Example:
Command history:
Release Modification
11.01.04 This command was introduced as of version 11.01.04.
Specifies the route-set parameters sent to the peer via the configuration mode. An internal_IP4_subnet attribute
containing the routes configured in the standard access-list is sent in the configuration payload.
Example:
Command history:
Release Modification
11.00.07 This command was introduced as of version 11.00.07.
11.01.02 This command was introduced as of version 11.01.02.
Specifies the route-set parameters sent to the peer via the configuration mode. An internal_IP6_subnet attribute,
containing the routes configured in the IPv6 access-list, is sent in the configuration payload.
Example:
Command history:
Release Modification
11.01.03 This command was introduced as of version 11.01.03.
IPsec 75
2 Configuration Teldat SA
REKEY AUTHENTICATION Sets the RSA key to use for authentication in rekey messages.
RSA
REKEY LIFETIME SECONDS Sets the rekey SA lifetime.
<sec>
REKEY RETRANSMIT <s> <n> Sets the rekey message retransmission interval and the number of retransmis-
sions.
REKEY TRANSPORT UNICAST Rekey messages are sent to the client IP.
REKEY TRANSPORT MULTIC- Rekey messages are sent to a multicast IP.
AST
SA IPSEC <id> Allows you to enter a SA configuration menu.
You can use the SA IPSEC <sa-id> command to access the configuration submenu of a specific SA.
Example:
Example:
The rekey is configured in multicast mode using address 239.0.0.2, while 256-bit AES is used as the encryption al-
gorithm for the rekey packets. RSA MYKEY (which you must generate beforehand using the KEY RSA GENERATE
command) is used to authenticate the rekey messages. The AES keys used for the rekey are renewed every ten
minutes, with three retransmissions sent every 10 seconds.
As for the SAs, a SA has been configured and associated with a preconfigured access list (100) (please see manual
Teldat Dm752-I Access Control ). The traffic belonging to this SA is encrypted an TripleDES and authenticated using
SHA. The keys are valid for 5 minutes, after which the server sends a rekey message to renew them. The IPsec tun-
nel mode is used for encapsulation.
gdoi group 2
; -- GDOI user configuration --
identity number 2
rekey address ipv4 239.0.0.2
rekey algorithm aes-256
rekey authentication rsa MYKEY
rekey lifetime seconds 10m
rekey retransmit 10s number 3
sa ipsec 1
lifetime 5m
match address ipv4 100
transform-set tdes sha1
exit
;
exit
2.3.6 Fault-tolerant
The FAULT-TOLERANT command provides access to the IPsecFT protocol configuration submenu.
76 IPsec
Teldat SA 2 Configuration
Depending on the operating mode of the router, the commands in this submenu will vary. That is, the commands
available to you when the router is acting as master will be different to the ones you can use when the router is act-
ing as slave. The commands for both modes of operation are shown below:
“ENABLE”
Enables IPsecFT.
The SOURCE-ADDRESS and SLAVE-ADDRESS commands must be configured before IPsecFT is enabled or you
will receive an error message.
IPsecFT is disabled whenever you use the MODE command to change the operating mode.
Example:
IPSecFT config>enable
CLI Error: Source address is not configured. Unable to enable
CLI Error: Command error
The example attempts to enable IPsecFT without configuring the IPsecFT packet source.
Example:
IPSecFT config>enable
CLI Error: Slave address is not configured. Unable to enable
CLI Error: Command error
The example attempts to enable IPsecFT without configuring the slave IP address.
Example:
IPSecFT config>enable
“INHERIT-CONDITION VRRP”
Specifies the condition that is used to tell IPsec to set up the sessions contained in the IPsecFT database. Please re-
member that these sessions are the result of master and slave exchanging data packets in IPsecFT.
Example:
IPsec 77
2 Configuration Teldat SA
This example selects the VRRP that decides when to tell IPsec to set up IPsecFT database sessions.
“LIST”
Lists the protocol configuration. The amount of information shown will vary depending on the operating mode.
Example:
IPSecFT config>list
Fault tolerant configuration:
Enable: TRUE
Mode: Master
Slave server address: 1.1.1.1
Slave server port: 52912
Source address: ethernet0/1
Listen port: 52912
Inactivity timeout: 500 milliseconds
Keepalive period: 100 milliseconds
Inherit condition: VRRP
Example:
IPSecFT config>list
Fault tolerant configuration:
Enable: FALSE
Mode: Slave
Listen port: 52912
“LISTEN-PORT [PORT]”
Listening port for incoming IPsecFT connections. When operating in master mode, the value of this command is sent
to the slave device so that it initiates the connection with the port.
Example:
“MODE {MASTER/SLAVE}”
Selects the IPsecFT protocol operating mode, which can be either master or slave.
All the IPsecFT parameters are configured in the master device. These are sent to the slave device when it connects
to the master.
The slave device is only configured with the port that listens for the IPsecFT connections. When the first connection
is accepted, the slave device receives the parameters to initiate a new IPsecFT connection in the opposite direction.
The slave uses the parameters it received in the last connection when attempting to establish IPsecFT sessions.
Example:
“SLAVE-ADDRESS [IP-ADDRESS]”
Example:
“SLAVE-PORT [PORT]”
78 IPsec
Teldat SA 2 Configuration
Example:
“SOURCE-ADDRESS [IP-ADDRESS/INTERFACE]”
Configures the master with either the source address to use in IPsecFT packets or the interface through which
IPsecFT packets are to be sent. The source address used in the slave will always be the destination address of the
first packet in the IPsecFT session establishment.
The two devices that make up the fault tolerant IPsec recovery system use the IPsecFT session to exchange data.
This IPsecFT session must be established in a controlled manner, along a path that the user deems appropriate. You
can use the SOURCE-ADDRESS command to ensure the session is established using the selected source.
Example:
This example configures the IPsecFT packets to be sent through the ethernet0/0 interface.
Configures the amount of time the IPsecFT protocol waits before taking decisions.
The keepalive value refers to the amount of time the protocol waits before it's next action, that is, how long it waits
before sending monitoring packets, polling the VRRP, or changing states.
The inactivity value configures the maximum time to wait for a packet from the other end before considering the
IPsecFT session down.
The Keepalive default is 100 milliseconds and the inactivity default is 500 milliseconds.
Example:
This example configures a keepalive value of 200 milliseconds and an inactivity value of 1 second.
The REPORT command is provided for this purpose. The following options can be used:
IPSec config>report ?
rx-rate-kbps Report the input rate (Kbps)
tx-rate-kbps Report the output rate (Kbps)
Periodically sends a report on the received rate in kilobits per second to an NSLA filter.
Example:
Command history:
Release Modification
11.00.05 This command was introduced as of version 11.00.05.
11.01.01 This command was introduced as of version 11.01.01.
IPsec 79
2 Configuration Teldat SA
Periodically sends a report on the transmitted rate in kilobits per second to an NSLA filter.
Example:
Command history:
Release Modification
11.00.05 This command was introduced as of version 11.00.05.
11.01.01 This command was introduced as of version 11.01.01.
2.4 Examples
The idea is to create a new virtual private network (VPN) between host A and host B. All other private network traffic
passes normally. The traffic from A to B will be encrypted through an IPsec tunnel using the triple DES encryption al-
gorithm and SHA1 authentication.
Router 1:
Config>feature access-lists
You can use the SHOW CONFIG command to display the configuration and use it later. All you have to do is enter
the command in the console as shown below:
access-list 101
entry 1 default
entry 1 permit
entry 1 source address 172.24.51.57 255.255.255.255
80 IPsec
Teldat SA 2 Configuration
Please note that the source and destination addresses used for the Router 1 example are the other way round in the
Router 2 example.
Router 2:
access-list 101
entry 1 default
entry 1 permit
entry 1 source address 172.60.1.163 255.255.255.255
entry 1 destination address 172.24.51.57 255.255.255.255
;
exit
;
Access Lists config>
Router 1:
Config>protocol ip
-- Internet protocol user configuration --
IP config>ipsec
IPSec config>template 2 ?
manual Manual template
isakmp Isakmp template
dynamic Dynamic template
IPSec config
IPSec config>template 2 manual ?
esp ESP security service (Encapsulating Security Payload)
ah AH security service (Authentication Header)
IPSec config>template 2 manual esp ?
des encryption algorithm DES (Data Encryption Standard)
tdes encryption algorithm TDES (Triple Data Encryption Standard)
IPSec config>template 2 manual esp tdes ?
md5 authentication algorithm MD5
sha1 authentication algorithm SHA1
sha256 authentication algorithm SHA256
sha384 authentication algorithm SHA384
sha512 authentication algorithm SHA512
none no authentication algorithm
IPSec config>template 2 ?
manual Manual template
source-address Tunnel's local IP address
destination-address Address of the other remote end of the tunnel
spi Security Parameter Index
key Template encryption DES key
tkey Triple DES key
md5key MD5 key
sha1key SHA1 key
antireplay Activates the Anti-Replay service
IPsec 81
2 Configuration Teldat SA
IPSec config>
enable
;
template 2 manual esp tdes sha1
template 2 source-address 200.200.200.1
template 2 destination-address 200.200.200.2
template 2 spi 280
template 2 tkey 0x68353373343565663436616776343634366E326A3871706F
template 2 sha1key 0x623734686437343867687A6D36376B366D366431
;
IPSec config>
Router 2:
enable
;
template 2 manual esp tdes sha1
template 2 source-address 200.200.200.2
template 2 destination-address 200.200.200.1
template 2 spi 280
template 2 tkey 0x68353373343565663436616776343634366E326A3871706F
template 2 sha1key 0x623734686437343867687A6D36376B366D366431
;
IPSec config>
Please note that the source and destination addresses used for the Router 1 example are the other way round in the
Router 2 example.
Note
82 IPsec
Teldat SA 2 Configuration
To complete the security policy databases (SPD), we now need to map the access control list (ACL) elements to the
chosen templates.
Router 1:
IPSec config>assign-access-list ?
<100..1999> Enter extended access list id
IPSec config>assign-access-list 101
IPSec config>map-template ?
<100..1999> Enter extended access list id
IPSec config>map-template 101 ?
<1..65535> Enter template id(1-65534)
IPSec config>map-template 101 2
IPSec config>
TEMPLATES
2 manual ESP-3DES ESP-SHA1 SRC=200.200.200.1 DES=200.200.200.2 SPI=280
0 key entries
0 rsakey entries
Id. Date. Len Certificate Authority (CA) Cert sn.
Period to check LDAP servers not configured. Using default value: 24h0m0s
KeepAlive Configuration:
Maximum number of encoded packets without receiving an answer: 0.
Timeout after last packet encoded: 0 seconds.
DPD Configuration:
Idle period(secs) before sending DPD keepalives: 60
Maximum number of DPD keepalives not acknowledged: 3
Period of time(secs) between DPD keepalives: 5
Always send keepalive after idle period expiration : DISABLED
Anti-replay : DISABLED
Hash Configuration:
Maximum number of entries in hash table: 50000
Shift constant for exponential moving average calculation: 8
IPsec 83
2 Configuration Teldat SA
IPSec config>
enable
assign-access-list 101
;
template 2 manual esp tdes sha1
template 2 source-address 200.200.200.1
template 2 destination-address 200.200.200.2
template 2 spi 280
template 2 tkey 0x68353373343565663436616776343634366E326A3871706F
template 2 sha1key 0x623734686437343867687A6D36376B366D366431
;
map-template 101 2
IPSec config>
Router 2:
enable
assign-access-list 101
;
template 2 manual esp tdes sha1
template 2 source-address 200.200.200.2
template 2 destination-address 200.200.200.1
template 2 spi 280
template 2 tkey 0x68353373343565663436616776343634366E326A3871706F
template 2 sha1key 0x623734686437343867687A6D36376B366D366431
;
map-template 101 2
IPSec config>
Now hosts A and B can communicate securely as far as the communication is concerned. However, it is up to the
user to ensure the complete security of the communications system, which is also based on the devices, keys, modi-
fication permissions, etc.
The scenario here is the same as the previous one, except that the tunnel will be based on dynamic templates. Con-
sequently, any communications, keys, etc., will be automatically negotiated in main mode.
84 IPsec
Teldat SA 2 Configuration
Now we need to create the ISAKMP and dynamic templates. Please note that the pre-shared key in the final com-
mand must be the same in both devices. Main mode, which masks the identities of the tunnel end routers, is used as
the default negotiation mode. While the same lifetimes have been entered in both devices, they can be changed and
negotiated.
Router 1:
IPSec config>enable
IPSec config>template 1 ?
manual Manual template
isakmp Isakmp template
dynamic Dynamic template
IPSec config>template 1 isakmp ?
des Encryption algorithm DES (Data Encryption Standard)
tdes Encryption algorithm TDES (Triple Data Encryption Standard)
aes128 Encryption algorithm AES using 128-bit key (Advanced Encryption
Standard)
aes192 Encryption algorithm AES using 192-bit key (Advanced Encryption
Standard)
aes256 Encryption algorithm AES using 256-bit key (Advanced Encryption
Standard)
IPSec config>template 1 isakmp tdes ?
md5 Authentication algorithm MD5
sha1 Authentication algorithm SHA1
sha256 Authentication algorithm SHA256
sha384 Authentication algorithm SHA384
sha512 Authentication algorithm SHA512
IPSec config>template 1 isakmp tdes sha1
IPSec config>template 1 ?
isakmp Isakmp template
destination-address Address of the other remote end of the tunnel
discover Use TED to discover the remote end of the tunnel
backup-destination Backup destination IP address
disable-fast-return-from-backup Disable checking of Main availability and
fast return to Main from Backup
udp-encapsulation Enables UDP encapsulation
udp-ike Enables IKE UDP encapsulation
life Introduces the SAs life span created from the
template
ike Configures parameters relative to the IPSec IKE mode
keepalive Enables the available keepalive services
config Isakmp configuration
aggressive Aggressive configuration mode ciphered/clear
send-original-pkt Send original packet after tunnel establishment
set-label Set Label Value of IKE and IPSEC packets
no Negates a command or sets its default
IPSec config>template 1 destination-address ?
<a.b.c.d> Ipv4 format
<word> Text
IPSec config>template 1 destination-address 200.200.200.2
IPSec config>template 1 life ?
type Type of life duration for the SA
duration Life duration
IPSec config>template 1 life duration ?
seconds Lifetime in seconds
kbytes Lifetime in kbytes
IPSec config>template 1 life duration seconds ?
<2m..3550w> Time value
IPSec config>template 1 life duration seconds 12h
IPSec config>template 3 ?
IPSec config>template 3 dynamic ?
esp ESP security service (Encapsulating Security Payload)
ah AH security service (Authentication Header)
gdoi-ks-policy Encryption and authentication algorithms received from
GDOI Key Server
IPsec 85
2 Configuration Teldat SA
86 IPsec
Teldat SA 2 Configuration
We could also have made use of the text-mode configuration (starting with a SHOW CONFIG output).
enable
;
template 1 isakmp tdes sha1
template 1 destination-address 200.200.200.2
template 1 life duration seconds 12h
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 3 dynamic esp tdes md5
template 3 source-address 200.200.200.1
template 3 destination-address 200.200.200.2
template 3 life type both
template 3 life duration seconds 4h
template 3 life duration kbytes 0
;
key preshared ip 200.200.200.2 ciphered 0xE21C47018BC8B868FB72F48DC4363FC0
CFABF60C9FFE0286
advanced dpd no always-send
IPSec config>
Router 2:
enable
;
template 1 isakmp tdes sha1
template 1 destination-address 200.200.200.1
template 1 life duration seconds 12h
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 3 dynamic esp tdes md5
template 3 source-address 200.200.200.2
template 3 destination-address 200.200.200.1
template 3 life type both
template 3 life duration seconds 4h
template 3 life duration kbytes 0
;
key preshared ip 200.200.200.1 ciphered 0xE21C47018BC8B868FB72F48DC4363FC0
CFABF60C9FFE0286
advanced dpd no always-send
IPsec 87
2 Configuration Teldat SA
IPSec config>
Router 1:
IPSec config>assign-access-list ?
<100..1999> Enter extended access list id
IPSec config>assign-access-list 101
IPSec config>map-template ?
<100..1999> Enter extended access list id
IPSec config>map-template 101 ?
<1..65535> Enter template id(1-65534)
IPSec config>map-template 101 3
IPSec config>
TEMPLATES
1 isakmp 3DES SHA1 SRC=internal DES=200.200.200.2
LifeTime:12h0m0s
IKE MAIN
PRESHARED
addr4 ID TYPE
OAKLEY GROUP 1
DPD enabled
1 key entries
200.200.200.2 ************
0 rsakey entries
Id. Date. Len Certificate Authority (CA) Cert sn.
Period to check LDAP servers not configured. Using default value: 24h0m0s
KeepAlive Configuration:
Maximum number of encoded packets without receiving an answer: 0.
Timeout after last packet encoded: 0 seconds.
DPD Configuration:
Idle period(secs) before sending DPD keepalives: 60
Maximum number of DPD keepalives not acknowledged: 3
Period of time(secs) between DPD keepalives: 5
Always send keepalive after idle period expiration : DISABLED
Anti-replay : DISABLED
Hash Configuration:
88 IPsec
Teldat SA 2 Configuration
IPSec config>
enable
assign-access-list 101
;
template 1 isakmp tdes sha1
template 1 destination-address 200.200.200.2
template 1 life duration seconds 12h
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 3 dynamic esp tdes md5
template 3 source-address 200.200.200.1
template 3 destination-address 200.200.200.2
template 3 life type both
template 3 life duration seconds 4h
template 3 life duration kbytes 0
;
key preshared ip 200.200.200.2 ciphered 0xE21C47018BC8B868FB72F48DC4363FC0
CFABF60C9FFE0286
advanced dpd no always-send
IPSec config>
Router 2:
enable
assign-access-list 101
;
template 1 isakmp tdes sha1
template 1 destination-address 200.200.200.1
template 1 life duration seconds 12h
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 3 dynamic esp tdes md5
template 3 source-address 200.200.200.2
template 3 destination-address 200.200.200.1
template 3 life type both
template 3 life duration seconds 4h
template 3 life duration kbytes 0
;
key preshared ip 200.200.200.1 ciphered 0xE21C47018BC8B868FB72F48DC4363FC0
CFABF60C9FFE0286
IPsec 89
2 Configuration Teldat SA
Hosts A and B can now communicate securely. The pre-shared key is the only key to protect in this case.
2.4.3 Example 3: Dynamic mode (IPSEC IKE aggressive mode) where the ad-
dress of one of the tunnel endpoints is unknown
This scenario shows how to connect two routers via a virtual private network (VPN) using an ADSL line as the means
of connection. Traffic will be encrypted through an IPsec tunnel based on dynamic templates with DES encryption
and MD5 authentication used in the ISAKMP negotiation, and ESP with DES encryption and SHA1 authentication in
the SA negotiation. By basing the tunnel on dynamic templates, any communications, keys, etc., will be automatically
negotiated using aggressive mode.
The advantage of aggressive mode is that Router 2 doesn't need to know the IP address of the other end of the tun-
nel: This means that this is a suitable configuration for multiple devices to connect to one router (Router 2) simply
knowing the hostname and the shared key. Router 1, on the other hand, does need to know the address of the router
with which it is going to set up a tunnel. This is because it is the one that initiates the negotiation and therefore has to
know which IP address to connect to.
In the following sections, we will first describe how to configure Router 1 before going on to configure Router 2 and
explain any parameters that differ from the Router 1 configuration.
As noted above, the router uses the hostname (rather than the IP address) to authenticate. Therefore, the first thing
we have to configure is the device name.
Teldat (c)1996-2002
*PROCESS 4
Config>set hostname GAS1
Next, we need to assign the IP address to the ADSL interface. We should also add a static route, specifying that all
traffic to the private network is to be sent using the other end of the IPsec tunnel as the gateway.
We also have the option to specify a connection identifier for traffic between routers, though this is only necessary
when you want packets in different connections to be treated differently.
Having configured all the IP parameters, we can now turn to the IPsec configuration itself.
First of all, we have to configure the access control lists (ACL). We do this by accessing the generic lists setup menu,
picking a number from the list that corresponds to an extended list (between 100 and 199), indicating an entry ID
from the list (in this case 1), and entering the desired values for the following parameters:
• The source IP address, i.e., the one already configured on the ADSL interface.
90 IPsec
Teldat SA 2 Configuration
• The destination IP, i.e., the device with which we are going to set up an IPsec tunnel, which in our case is Router
2.
• The connection: we must indicate the connection ID assigned to tunnel traffic. You can display this ID using the
LIST RULE command. In this particular example, however, we don't need to assign the connection ID because the
routers don't apply treatment to packets based on the connection.
• The action to be taken on the packets, in our case, IPsec processing ( PERMIT).
access-list 102
entry 1 default
entry 1 permit
entry 1 source address 192.60.1.24 255.255.255.255
entry 1 destination address 172.24.0.0 255.255.0.0
;
exit
;
GAS1 Access Lists config>
IPsec 91
2 Configuration Teldat SA
Now we need to create the ISAKMP and dynamic templates. Please note that the pre-shared key in the final com-
mand must be the same in both devices. Also note that this example differs from the previous one in that negotiation
is carried out in aggressive mode. This means the identities of the tunnel endpoint routers are not masked and the IP
address of the other end of the tunnel is unknown.
Although we have also entered the same lifetimes in both tunnel endpoints, these parameters can be negotiated so
that the the lowest value configured is used.
When creating the ISAKMP template, we have to specify the encryption (DES) and authentication (MD5) type to use
(as indicated in the initial security specifications).
When creating the template, we must specify an ID number. The template ID number will be used throughout the
template configuration. We also have to indicate the tunnel destination IP to which we are connecting and the mode
that will be used. In this case the mode is aggressive mode, since the host name, rather than the IP address, will be
used for authentication. This is very useful when we do not know the IP address of the other end of the tunnel be-
forehand. In the example, Router 2 only needs to know the host name to create the IPsec tunnel, it doesn't need to
know the IP addresses of the routers that are going to connect.
Using the TEMPLATE 1 IKE IDTYPE FQDN command, we can tell the router to authenticate using the host name
rather than the IP address (which is the default option).
GAS1 Config>protocol ip
-- Internet protocol user configuration --
GAS1 IP config>ipsec
-- IPSec user configuration --
GAS1 IPSec config>enable
GAS1 IPSec config>template 1 ?
manual Manual template
isakmp Isakmp template
dynamic Dynamic template
GAS1 IPSec config>template 1 isakmp ?
des Encryption algorithm DES (Data Encryption Standard)
tdes Encryption algorithm TDES (Triple Data Encryption Standard)
aes128 Encryption algorithm AES using 128-bit key (Advanced Encryption
Standard)
aes192 Encryption algorithm AES using 192-bit key (Advanced Encryption
Standard)
aes256 Encryption algorithm AES using 256-bit key (Advanced Encryption
Standard)
GAS1 IPSec config>template 1 isakmp des ?
md5 Authentication algorithm MD5
sha1 Authentication algorithm SHA1
sha256 Authentication algorithm SHA256
sha384 Authentication algorithm SHA384
sha512 Authentication algorithm SHA512
GAS1 IPSec config>template 1 isakmp des md5
GAS1 IPSec config>template 1 ?
isakmp Isakmp template
destination-address Address of the other remote end of the tunnel
discover Use TED to discover the remote end of the tunnel
backup-destination Backup destination IP address
disable-fast-return-from-backup Disable checking of Main availability and
fast return to Main from Backup
udp-encapsulation Enables UDP encapsulation
udp-ike Enables IKE UDP encapsulation
life Introduces the SAs life span created from the
template
ike Configures parameters relative to the IPSec IKE mode
keepalive Enables the available keepalive services
config Isakmp configuration
aggressive Aggressive configuration mode ciphered/clear
send-original-pkt Send original packet after tunnel establishment
set-label Set Label Value of IKE and IPSEC packets
no Negates a command or sets its default
GAS1 IPSec config>template 1 destination-address ?
<a.b.c.d> Ipv4 format
<word> Text
92 IPsec
Teldat SA 2 Configuration
enable
;
template 1 isakmp des md5
template 1 destination-address 192.60.1.21
template 1 ike mode aggressive
template 1 ike natt-version rfc
template 1 ike idtype fqdn
template 1 keepalive dpd
;
advanced dpd no always-send
GAS1 IPSec config>
Having created the ISAKMP template, we can create the DYNAMIC template.
The first thing we need to do is define the type of service, ESP or AH. ESP provides authentication, data integrity,
source address authentication and anti-replay protection. AH doesn't provide confidentiality. Next, we need to define
a specific encryption (DES) and authentication (SHA1) type, as indicated in the initial security specifications.
The dynamic and ISAKMP templates should have a different template ID. In this particular example, the dynamic
template ID is 2.
As with the ISAKMP template, we again need to specify the destination address, but we also have to indicate the
source address, i.e., the address of our ADSL interface. We have also enabled the KEEPALIVE option on this tem-
plate to ensure that the device at the other end of the tunnel keeps its SA open.
IPsec 93
2 Configuration Teldat SA
enable
;
template 1 isakmp des md5
template 1 destination-address 192.60.1.21
template 1 ike mode aggressive
template 1 ike natt-version rfc
template 1 ike idtype fqdn
template 1 keepalive dpd
;
template 2 dynamic esp des sha1
template 2 source-address 192.60.1.24
template 2 destination-address 192.60.1.21
template 2 keepalive keepalive
;
advanced dpd no always-send
GAS1 IPSec config>
The last thing we need to do is to configure the pre-shared key. This key is the same at both ends of the tunnel.
When entering the key, we have to specify that it is a pre-shared key and that we will be entering a name rather than
an IP address (as explained above).
The name we enter is the domain name of the other end of the tunnel.
As well as configuring the device host name, we can also configure the device domain. This is done in the following
way:
GAS1 IP config>dns-domain-name ?
<word> Text
GAS1 IP config>dns-domain-name madrid.es
Domain name : madrid.es
Domain Name configured.
GAS1 IP config>
The domain name has not been used in this example. If we try to display the domain name, we will be told that it
hasn't been configured and that the name "GAS1. " will be used instead. We need to configure this name on the
device at the other end of the tunnel (i.e., on Router 2) when specifying the common pre-shared keys.
94 IPsec
Teldat SA 2 Configuration
Since the domain name has not been configured on Router 2, we need to enter " HOST." as the host name to use in
the key on Router 1. HOST is the only host name configured on the device.
Finally, we need to establish the SPDs. That is, we need to assign an ACL to one of the templates we've created. In
the following example, the generic list that we have configured and that will be associated with a template, is access
list 102. The template that will be associated with it is the dynamic template, i.e., ID 2.
TEMPLATES
1 isakmp DES MD5 SRC=internal DES=192.60.1.21
LifeTime:1h0m0s
IKE AGGRESSIVE
PRESHARED
fqdn ID TYPE
OAKLEY GROUP 1
DPD enabled
1 key entries
HOST. ************
0 rsakey entries
Id. Date. Len Certificate Authority (CA) Cert sn.
Period to check LDAP servers not configured. Using default value: 24h0m0s
KeepAlive Configuration:
Maximum number of encoded packets without receiving an answer: 0.
Timeout after last packet encoded: 0 seconds.
DPD Configuration:
Idle period(secs) before sending DPD keepalives: 60
IPsec 95
2 Configuration Teldat SA
Hash Configuration:
Maximum number of entries in hash table: 50000
Shift constant for exponential moving average calculation: 8
enable
assign-access-list 102
;
template 1 isakmp des md5
template 1 destination-address 192.60.1.21
template 1 ike mode aggressive
template 1 ike natt-version rfc
template 1 ike idtype fqdn
template 1 keepalive dpd
;
template 2 dynamic esp des sha1
template 2 source-address 192.60.1.24
template 2 destination-address 192.60.1.21
template 2 keepalive keepalive
;
map-template 102 2
key preshared hostname HOST. ciphered 0xE21C47018BC8B868FB72F48DC4363FC0CF
ABF60C9FFE0286
advanced dpd no always-send
GAS1 IPSec config>
The host name and IP protocol parameter settings are similar to those in Router 1.
Teldat (c)1996-2002
*PROCESS 4
User Configuration
Config>set hostname HOST
When configuring the IP protocol, we must make sure we configure the correct interface addresses, as the ether-
net0/0 interface connects the network card to LAN 172.24.0.0. We also need to assign the IP address to the ADSL
interface with which you are going to set up the tunnel.
96 IPsec
Teldat SA 2 Configuration
Having configured all the IP parameters, we can now turn to the IPsec configuration itself.
While the access control list (ACL) settings are similar to those on Router 1, we should take care when configuring
the source and destination IP addresses.
access-list 103
entry 1 default
entry 1 permit
entry 1 source address 172.24.0.0 255.255.0.0
entry 1 destination address 192.60.1.24 255.255.255.255
;
exit
;
HOST Access Lists config>
As with Router 1, the negotiation mode in the ISAKMP and dynamic templates is aggressive mode. We need to use
the same pre-shared key that was configured on Router 1, but this time we need to specify that the key corresponds
to the "GAS1" hostname.
When creating the ISAKMP template, we need to specify the type of encryption (DES) and authentication (MD5) to
use (as indicated in the initial security specifications). These should match the algorithms configured on Router 1.
When we create the template, we have to specify an ID number that will be used throughout the template configura-
tion. We also have to specify the tunnel destination IP to which we are connecting; since we don't know the IP ad-
dress of the device that is going to connect to Router 2 (we only know the host name), the destination IP address will
be 0.0.0.0. We must also specify the use of aggressive mode, and that the IDTYPE will be FQDN. This ensures that
the host name is used for authentication purposes rather than the IP address which is the default option.
enable
;
template 1 isakmp des md5
template 1 ike mode aggressive
template 1 ike natt-version rfc
template 1 ike idtype fqdn
template 1 keepalive dpd
;
advanced dpd no always-send
HOST IPSec config>
Having created the ISAKMP template, we can go about creating the DYNAMIC template with ESP, DES encryption
and SHA1 authentication (as we did for Router 1). To ensure that the DYNAMIC template configuration doesn't over-
write the ISAKMP template configuration, the DYNAMIC and ISAKMP templates should have a different template ID.
In the example, the template ID is 2.
As with the ISAKMP template, we again need to specify the destination address (0.0.0.0), but we also need to spe-
cify the source address, i.e., the address of our ADSL interface. The KEEPALIVE option is not enabled on this tem-
plate. This frees up processing time for Router 2 and ensures that the connecting routers are responsible for check-
ing the SA is open.
enable
;
template 1 isakmp des md5
IPsec 97
2 Configuration Teldat SA
Finally, we must configure the pre-shared key. This key is the same at both ends of the tunnel.
When entering the key, we must specify that it is a pre-shared key and that we will be entering a name rather than an
IP address (as explained above).
The name we enter is the remote tunnel endpoint's domain name (as explained in the case of Router 1).
In this particular example, we must use the name "GAS1. ", which is Router 1's domain name.
If additional routers (i.e., not just Router 1) are to be connected to this router, we must specify a host name and the
corresponding key for each of them.
Finally, we must establish the SPDs. That is, we need to assign an ACL to one of the templates we've created. In the
following example, the extended generic list that we have configured and that will be assigned to IPsec and associ-
ated with a template, is access-list 103. The template that will be associated is the dynamic template, ID 2.
Finally, we can free up more processing time for Router 2 in two ways: firstly, by specifying not to re-negotiate the SA
when the specified lifetime percentage has been reached, and secondly, by specifying that the other end of the tun-
nel (Router 1) will re-negotiate the SA.
TEMPLATES
1 isakmp DES MD5 SRC=internal DES=0.0.0.0
LifeTime:1h0m0s
IKE AGGRESSIVE
PRESHARED
fqdn ID TYPE
OAKLEY GROUP 1
DPD enabled
98 IPsec
Teldat SA 2 Configuration
1 key entries
GAS1. ************
0 rsakey entries
Id. Date. Len Certificate Authority (CA) Cert sn.
Period to check LDAP servers not configured. Using default value: 24h0m0s
KeepAlive Configuration:
Maximum number of encoded packets without receiving an answer: 0.
Timeout after last packet encoded: 0 seconds.
DPD Configuration:
Idle period(secs) before sending DPD keepalives: 60
Maximum number of DPD keepalives not acknowledged: 3
Period of time(secs) between DPD keepalives: 5
Always send keepalive after idle period expiration : DISABLED
Anti-replay : DISABLED
Hash Configuration:
Maximum number of entries in hash table: 50000
Shift constant for exponential moving average calculation: 8
enable
assign-access-list 103
;
template 1 isakmp des md5
template 1 ike mode aggressive
template 1 ike natt-version rfc
template 1 ike idtype fqdn
template 1 keepalive dpd
;
template 2 dynamic esp des sha1
template 2 source-address 192.60.1.21
template 2 life duration seconds 30m
;
map-template 103 2
key preshared hostname GAS1. ciphered 0xE21C47018BC8B868FB72F48DC4363FC0CF
ABF60C9FFE0286
advanced renegotiation-time 0
advanced dpd no always-send
HOST IPSec config>
The routers can communicate securely, and the pre-shared key is the only key to protect in this case.
IPsec 99
2 Configuration Teldat SA
This scenario shows how to use Tunnel End-point Discovery (TED) in dynamic IPsec (IPsec IKE). Two routers have
been configured to open an IPsec tunnel to one another in the same way as described in example 2. In this case,
however, neither of them have been given the remote peer's IP address needed to open the tunnel. When one of the
hosts protected by a router wishes to communicate with its remote endpoint (e.g., host A with host B), the router
uses TED to find its colleague and initiate ISAKMP negotiations.
The IP configuration for this example will be very basic and consists of the addresses of the two networks connected
by the router and a route to reach the network protected by the remote end:
*p 4
Config>network ethernet0/0
Having configured the IP parameters, we now need to configure the ACLs. This we do by accessing the generic lists
setup menu, picking a number from the list that corresponds to an extended list (between 100 and 199 - we have se-
lected 101 in our example), indicating an entry ID from the list (in this case 1), and entering the desired values for the
following parameters:
• The source address of the packets we want to collide with the access list; in this case the subnet with the clients
that we will protect.
• The destination address of the packets that are going to collide, in this case the subnet with the clients that the oth-
er router protects.
• The action to be taken on the packets, in this case IPsec processing ( PERMIT).
Config>feature access-lists
100 IPsec
Teldat SA 2 Configuration
Now, we need to create the ISAKMP and dynamic templates. When creating the ISAKMP template, we can use the
DISCOVER option to specify the use of TED for discovering the remote tunnel end. When creating the dynamic tem-
plate, we must be careful not to specify the remote address of the tunnel; this is because we don't know it yet and it
will be discovered during the TED process.
Config>protocol ip
-- Internet protocol user configuration --
IP config>ipsec
-- IPSec user configuration --
IPSec config>enable
IPSec config>template 1 isakmp tdes sha1
IPSec config>template 1 discover
IPSec config>template 1 life duration seconds 45m
IPSec config>template 3 dynamic esp tdes md5
IPSec config>template 3 source-address 172.24.78.141
IPSec config>template 3 life type both
IPSec config>template 3 life duration seconds 45m
IPSec config>key preshared ip 0.0.0.0 ciphered 0xD8599397F3F05E04A00A56234D376BCD
IPSec config>event address-filter 0.0.0.0 0.0.0.0
Finally, we need to establish the SPDs. That is, we need to assign an ACL to one of the templates we've created. In
the following example, the extended access list that we have configured and that must be assigned to IPsec and as-
sociated with a template, is access list 101. The template that must be associated is the dynamic template, ID 3.
TEMPLATES
1 isakmp 3DES SHA1 SRC=internal DES=0.0.0.0
LifeTime:0h45m0s
IKE MAIN
PRESHARED
addr4 ID TYPE
OAKLEY GROUP 1
DPD enabled
Tunnel End-point Discovery enabled
1 key entries
0.0.0.0 ************
0 rsakey entries
IPsec 101
2 Configuration Teldat SA
Period to check LDAP servers not configured. Using default value: 24h0m0s
KeepAlive Configuration:
Maximum number of encoded packets without receiving an answer: 0.
Timeout after last packet encoded: 0 seconds.
DPD Configuration:
Idle period(secs) before sending DPD keepalives: 60
Maximum number of DPD keepalives not acknowledged: 3
Period of time(secs) between DPD keepalives: 5
Always send keepalive after idle period expiration : DISABLED
Anti-replay : DISABLED
Hash Configuration:
Maximum number of entries in hash table: 50000
Shift constant for exponential moving average calculation: 8
IPSec config>
And when we issue the SHOW CONFIG command, the complete device configuration is:
Config>show config
; Showing Menu and Submenus Configuration for access-level 15 ...
log-command-errors
no configuration
set data-link sync serial0/0
set data-link sync serial0/1
feature access-lists
; -- Access Lists user configuration --
access-list 101
entry 1 default
entry 1 permit
entry 1 source address 1.1.1.0 255.255.255.0
entry 1 destination address 2.2.2.0 255.255.255.240
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 172.24.78.141 255.255.0.0
ip address 1.1.1.2 255.255.255.0 secondary
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
route 2.2.2.0 255.255.255.0 172.24.78.142
;
ipsec
102 IPsec
Teldat SA 2 Configuration
The configuration for Router 2 is similar to that of Router 1, with the only difference being that the source and destin-
ation addresses on the ACLs and templates are the other way round. Thus the configuration for Router 2 would look
like this:
Config>show config
; Showing Menu and Submenus Configuration for access-level 15 ...
log-command-errors
no configuration
set data-link sync serial0/0
set data-link sync serial0/1
feature access-lists
; -- Access Lists user configuration --
access-list 101
entry 1 default
entry 1 permit
entry 1 source address 2.2.2.0 255.255.255.240
entry 1 destination address 1.1.1.0 255.255.255.0
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 172.24.78.142 255.255.0.0
ip address 2.2.2.2 255.255.255.0 secondary
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
route 1.1.1.0 255.255.255.0 172.24.78.141
;
ipsec
; -- IPSec user configuration --
IPsec 103
2 Configuration Teldat SA
enable
assign-access-list 101
;
template 1 isakmp tdes sha1
template 1 discover
template 1 life duration seconds 4m
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 3 dynamic esp tdes md5
template 3 source-address 172.24.78.142
template 3 life type both
template 3 life duration seconds 6m
;
map-template 101 3
key preshared ip 0.0.0.0 ciphered 0xD8599397F3F05E04A00A56234D376BCD
advanced dpd no always-send
exit
;
exit
;
;
dump-command-errors
end
Config>
This scenario shows how to configure two devices to create a permanent tunnel to one another. The configuration
we use in this particular example will be very similar to the one we used in example 2 (dynamic IKE) but we will add
the necessary commands to ensure the tunnel is always open.
We start with a basic dynamic IPsec configuration with two routers protecting both subnets. The ADVANCED RENE-
GOTIATION-TIME 100 command is worth mentioning here because it allows the tunnel to renegotiate even when
there isn't any traffic.
Config>show config
; Showing Menu and Submenus Configuration for access-level 15 ...
log-command-errors
no configuration
set data-link sync serial0/0
set data-link sync serial0/1
feature access-lists
; -- Access Lists user configuration --
access-list 101
entry 1 default
entry 1 permit
entry 1 source address 172.24.0.0 255.255.0.0
104 IPsec
Teldat SA 2 Configuration
We will also be using the proprietary TIDP protocol to ensure the tunnel has traffic and can be opened if the device
reboots or if there isn't any communication between the tunnel ends when the renegotiation is taking place. We shall
configure the device to periodically send a discovery packet whose source and destination IPs collide with the ac-
cess list used in IPsec. The device in the example has been configured to send a packet every two minutes (this is
more than enough time to open the tunnel when the device reboots).
Config>feature ip-discovery
-- IP Discovery Protocol configuration --
TIDP config>discovery-station 1 ip 180.60.1.1
TIDP config>discovery-station 1 source ip 172.24.78.142
TIDP config>discovery-station 1 timer 2m
TIDP config>exit
Config>
The configuration for Router 2 is similar to the one for Router 1, with the only differences being that the source and
destination addresses on the access lists and templates are the other way round and we don't need to configure the
renegotiation time (the other end is going to open the tunnel) or the TIDP interval. The configuration for Router 2
would therefore look like this:
Config>show config
IPsec 105
2 Configuration Teldat SA
log-command-errors
no configuration
set data-link sync serial0/0
set data-link sync serial0/1
feature access-lists
; -- Access Lists user configuration --
access-list 101
entry 1 default
entry 1 permit
entry 1 source address 180.60.0.0 255.255.0.0
entry 1 destination address 172.24.0.0 255.255.0.0
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 180.60.1.1 255.255.0.0
ip address 90.90.90.2 255.255.255.0 secondary
;
exit
;
;
;
protocol ip
; -- Internet protocol user configuration --
route 0.0.0.0 0.0.0.0 90.90.90.1
;
ipsec
; -- IPSec user configuration --
enable
assign-access-list 101
;
template 1 isakmp tdes sha1
template 1 destination-address 90.90.90.1
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 3 dynamic esp tdes md5
template 3 source-address 90.90.90.2
template 3 destination-address 90.90.90.1
;
map-template 101 3
key preshared ip 90.90.90.1 ciphered 0xD8599397F3F05E04A00A56234D376BCD
advanced dpd no always-send
exit
;
exit
;
;
;
;
dump-command-errors
end
Config>
106 IPsec
Teldat SA 2 Configuration
The server configuration consists of an access list, number 100, that allows all traffic to network 172.26.0.0. This list
is assigned to IPsec and subsequently associated with the GDOI group security association in use (SA 1). SA 1 spe-
cifies triple DES encryption and SHA1 authentication with key renewal every 5 minutes.
The rekey method is AES 256 bit encryption in unicast mode with key renewal every 10 minutes. Rekey messages
are authenticated using a public key, called MYKEY, that we must generate beforehand:
We also need to configure an ISAKMP template for phase I negotiations with GDOI clients, and a pre-shared key to
allow the negotiation to take place.
Config>show config
; Showing Menu and Submenus Configuration for access-level 15 ...
log-command-errors
no configuration
add device x25 1
set data-link frame-relay serial0/0
set data-link sync serial0/1
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 172.26.0.0 255.255.0.0
entry 1 destination address 172.26.0.0 255.255.0.0
;
exit
;
exit
;
;
IPsec 107
2 Configuration Teldat SA
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 172.26.3.1 255.255.255.0
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
internal-ip-address 172.26.3.1
;
route 0.0.0.0 0.0.0.0 172.26.3.2
;
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp tdes md5
template 1 ike natt-version rfc
template 1 keepalive no dpd
;
key preshared ip 172.26.2.1 ciphered 0x0DD598B4F74E201E
key preshared ip 172.26.1.40 ciphered 0x0DD598B4F74E201E
advanced dpd no always-send
gdoi group 2
; -- GDOI user configuration --
identity number 2
rekey algorithm aes-256
rekey authentication rsa MYKEY
rekey lifetime seconds 10m
rekey retransmit 10s number 3
rekey transport unicast
sa ipsec 1
lifetime 5m
match address ipv4 100
transform-set tdes sha1
exit
;
exit
;
exit
;
exit
;
;
dump-command-errors
end
Config>
To provide IP connectivity, we configure the Ethernet and PPP interface addresses according to the diagram at the
beginning of this example. The PPP interface IP address is 1.1.1.2 and the Ethernet IP address is 172.26.2.1.
An access list needs to be configured to associate it with the dynamic template. The access list consists of one or
more "deny" entries for isolating specific traffic on which IPsec will not be applied (even though the downloaded serv-
er lists indicate that it should be applied), and a final "permit" entry. Given that in this particular example we want to
encapsulate all traffic between networks 172.26.1.0/24 and 172.26.2.0/24 without exception, the access list only con-
tains the "permit" entry.
An ISAKMP template and a pre-shared key for use in phase I negotiations with the server needs to be configured, as
does a dynamic template with the chosen GDOI group, in this case 2. The ISAKMP and dynamic templates must
have the GDOI server IP as the destination IP.
;Config>show config
; Showing Menu and Submenus Configuration for access-level 15 ...
108 IPsec
Teldat SA 2 Configuration
log-command-errors
no configuration
add device ppp 1
set data-link sync serial0/0
set data-link sync serial0/1
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 172.26.2.1 255.255.255.0
;
exit
;
network serial0/0
; -- Interface Synchronous Serial Line. Configuration --
speed 256000
exit
;
;
;
network ppp1
; -- Generic PPP User Configuration --
ip address 1.1.1.2 255.255.255.0
;
base-interface
; -- Base Interface Configuration --
base-interface serial0/0 link
;
exit
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
route 172.26.1.0 255.255.255.0 1.1.1.1
;
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 dynamic esp tdes sha1
template 1 source-address 172.26.2.1
template 1 destination-address 172.26.3.1
template 1 mapped-to-ifc ppp1
template 1 gdoi group 2
;
template 2 isakmp tdes md5
template 2 destination-address 172.26.3.1
template 2 ike natt-version rfc
template 2 keepalive no dpd
;
map-template 100 1
key preshared ip 172.26.3.1 ciphered 0x0DD598B4F74E201E
advanced dpd no always-send
exit
IPsec 109
2 Configuration Teldat SA
;
exit
;
;
dump-command-errors
end
Config>
The configuration for client 2 is similar to the configuration for client 1; all we need to do is to change the IP ad-
dresses of the PPP and Ethernet7 interfaces to give us the following:
Config>show config
; Showing Menu and Submenus Configuration for access-level 15 ...
log-command-errors
no configuration
add device ppp 1
set data-link sync serial0/0
set data-link sync serial0/1
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 172.26.1.40 255.255.255.0
;
exit
;
network serial0/0
; -- Interface Synchronous Serial Line. Configuration --
speed 512000
exit
;
;
;
network ppp1
; -- Generic PPP User Configuration --
ip address 1.1.1.1 255.255.255.0
;
base-interface
; -- Base Interface Configuration --
base-interface serial0/0 link
;
exit
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
internal-ip-address 172.26.1.40
;
route 172.26.2.0 255.255.255.0 1.1.1.2
;
ipsec
; -- IPSec user configuration --
enable
110 IPsec
Teldat SA 2 Configuration
assign-access-list 100
;
template 1 dynamic esp tdes sha1
template 1 source-address 172.26.1.40
template 1 destination-address 172.26.3.1
template 1 mapped-to-ifc ppp1
template 1 gdoi group 2
;
template 2 isakmp tdes md5
template 2 destination-address 172.26.3.1
template 2 ike natt-version rfc
template 2 keepalive no dpd
;
template 3 isakmp tdes md5
template 3 ike natt-version rfc
template 3 keepalive no dpd
;
map-template 100 1
key preshared ip 172.26.3.1 ciphered 0x0DD598B4F74E201E
advanced dpd no always-send
exit
;
exit
;
;
;
;
dump-command-errors
end
Config>
We have a PC in a workstation (PC1) that needs to connect to a central server (Server1). We use a router (Router 3)
to establish an IPsec session between the workstation and the central server access router. To make the connection
more robust, we have set up fault tolerant IPsec recovery in the central server access router and, in doing so, have
converted this router into two routers, Router1 and Router2.
The configuration in Router3 is conceptually similar to the one in example 2, where the tunnel endpoint address is
the IP address that the central server access router offers to the outside (i.e., 192.168.3.225). Without further ado,
here is the final result:
Config>show config
; Showing Menu and Submenus Configuration for access-level 15 ...
log-command-errors
no configuration
set data-link sync serial0/0
set data-link sync serial0/1
set hostname Router3
IPsec 111
2 Configuration Teldat SA
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 2 default
entry 2 permit
entry 2 source address 10.10.2.0 255.255.255.0
entry 2 destination address 192.168.212.0 255.255.254.0
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 192.168.3.100 255.255.255.0
;
exit
;
;
network ethernet0/1
; -- Ethernet Interface User Configuration --
ip address 10.10.2.100 255.255.255.0
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
route 0.0.0.0 0.0.0.0 192.168.3.225
;
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp tdes sha1
template 1 destination-address 192.168.3.225
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 2 dynamic esp tdes md5
template 2 destination-address 192.168.3.225
;
map-template 100 2
key preshared ip 0.0.0.0 ciphered 0x12D942B46B48645B
advanced dpd no always-send
exit
;
exit
;
;
dump-command-errors
end
Config>
2.4.7.2 Configuring the central server access router, Router1 and Router2
The central server access router consists of two routers, Router1 and Router2, which have the fault tolerant IPsec re-
covery system set up between them. For this system, we are required to configure multiple protocols - IPsec,
IPsecFT and VRRP - and we will expand on these below.
The IPsec configuration must be the same on both routers and should not be more complex than the one shown in
example 2. We start, therefore, with a similar configuration in IPsec:
112 IPsec
Teldat SA 2 Configuration
At this point we should focus on one of the configuration parameters in the dynamic templates. This parameter indic-
ates which templates form part of the fault tolerant IPsec recovery system. That is, which of the IPsec sessions re-
main open should the device that set them up fail. In this particular case, we want to apply fault tolerance to a single
dynamic template, template 2.
IPsec 113
2 Configuration Teldat SA
The IPsecFT protocol is responsible for maintaining a database of all IPsec sessions in order to allow a peer to take
control of those sessions should one of the routers fail.
To configure IPsecFT, we must first decide which of the devices is going to be the master and which the slave. Our
decision will not affect the way the system operates. In our example, Router1 will be the master.
IPsecFT in Router1
Starting with Router1, the first thing we need to do is to access the IPsecFT submenu.
Router1 Config>protocol ip
-- Internet protocol user configuration --
Router1 IP config>ipsec
-- IPSec user configuration --
Router1 IPSec config>fault-tolerant
-- Fault tolerant IPSec recovery user configuration --
Router1 IPSecFT config>
This subsystem is in slave mode and disabled by default. We need to change the mode so that the router can act as
master. Before we enable the mode, there are a couple of required parameters that must be configured if we want it
to work properly. These parameters are the IP address of the slave device and the packet source. In this particular
case, the slave address is 192.168.212.218 and the source is IP 192.168.212.219.
At this point, we should stress that the source and destination address in IPsecFT must not match the virtual IP ad-
dress managed in VRRP.
Other parameters, such as the port, are optional. In this particular example, these parameters will be set to their de-
fault values.
114 IPsec
Teldat SA 2 Configuration
IPsecFT in Router2
Router2 Config>protocol ip
-- Internet protocol user configuration --
Router2 IP config>ipsec
-- IPSec user configuration --
Router2 IPSec config>fault-tolerant
-- Fault tolerant IPSec recovery user configuration --
Router2 IPSecFT config>
This device will be in slave mode so there is no need to configure anything. The only parameter that can be con-
figured is the listening port, but we will leave this parameter set to its default value (as we did in the master device).
All we need to do at this point is to enable the protocol.
Now the protocol can establish the relevant sessions between Router1 and Router2 and maintain a database of the
sessions that IPsec has set up in each device.
You need to configure VRRP between the devices that make up the access router to the main server in such a way
that they appear to be one router to the outside.
The task of the VRRP protocol is twofold: on the one hand, it decides which device, at any given moment, will have
the IP address used to set up the IPsec sessions (VRRP with VRID 79); on the other, it decides which device will
communicate with the central server (VRRP with VRID 78). So, for this example, we need to configure two VRRPs
on each device, one for each interface.
More information on configuring VRRP can be found in Teldat manual Dm759-I VRRP Protocol. Below, we explain
certain specific requirements for its use with fault tolerant IPsec recovery:
standby-delay
The standby-delay parameter relates to the time it takes a device to assume control of a virtual IP address when it is
ready to do so. This parameter is important because a device cannot assume control of a virtual IP address until
after the IPsecFT session is established. The reason for this is that VRRP tells IPsecFT when to assume control of
the IPsec session, and IPsecFT will not be ready to do so until the session is established.
For the purposes of this example, the standby-delay parameter is set to its default value of 10 seconds.
reload-delay
The reload-delay parameter governs how long the protocol will wait to initiate once the device has booted up. While
the value of this parameter must be different on each of the two routers, it needs to be the same on the interfaces of
a single router. This is because we don't want the kind of situation whereby a device cannot simultaneously assume
control of both virtual IP addresses when it boots because another device is already doing the same thing.
IPsec 115
2 Configuration Teldat SA
For this example, the value of the reload-delay parameter is 40 seconds for the two interfaces in Router2, and 30
seconds (default value) for the two interfaces in Router1.
Preemption Mode
We recommend disabling the preempt option to minimize changes of ownership of the virtual IP address and thus re-
duce the number of times the IPsec session changes from one device to another.
ip vrrp XX no-preempt
VRRP priorities
The option of setting the VRRP priority level to a higher level is another thing to consider here. The reason for this is
that VRRP reaction time (which can reach one second) depends on the priority level selected (the higher the priority,
the shorter the response time). We recommend using values above 250.
Finally, we need to remember that both virtual IP addresses must move from one device to another simultaneously.
This is achieved by tracking the interfaces on one device to find out when one of them stops working and, if so, reject
any virtual IP addresses controlled by the failed interface. This is accomplished by applying the tracking with a prior-
ity cost equal to the VRRP priority, i.e., the priority minus the priority cost is 0.
Taking these considerations into account, we can now configure two VRRPs on each device.
In line with the above diagram, we are going to configure each device with a VRID 78 VRRP and a VRID 79 VRRP.
VRID 78 will be configured on the ethernet0/0 interfaces on the devices and will control IP address 192.168.212.225,
while VRID 79 will be configured on the ehternet0/1 interfaces and will control IP address 192.168.3.225.
The priority level selected for Router1 is 254, and for Router2 is 253.
Both device interfaces are configured to track other interfaces within the same device. When one of the tracked inter-
faces fails, the tracking interface subtracts an amount from its priority level that is equal to its priority, i.e., it becomes
0.
network ethernet0/0
[…]
ip vrrp VRID1 priority PRIO
The interval between VRRP advertisements for both devices is 100 milliseconds.
VRRP in Router1
116 IPsec
Teldat SA 2 Configuration
network ethernet0/1
; -- Ethernet Interface User Configuration --
ip address 192.168.3.219 255.255.255.0
;
ip vrrp 79 ip 192.168.3.225
ip vrrp 79 advertise-interval 100 msec
ip vrrp 79 no-preempt
ip vrrp 79 accept-vip-packets
ip vrrp 79 priority 254
ip vrrp 79 track interface ethernet0/0 prio-cost 254
;
exit
[…]
Router1 Config>
VRRP in Router2
Now that we have expanded on each section of the configuration, we are able to present the entire configuration for
Router1 and Router 2:
Router1 configuration
log-command-errors
no configuration
set data-link sync serial0/0
set data-link sync serial0/1
set hostname Router1
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
IPsec 117
2 Configuration Teldat SA
entry 1 permit
entry 1 source address 192.168.212.0 255.255.254.0
entry 1 destination address 10.10.2.0 255.255.255.0
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 192.168.212.219 255.255.254.0
;
ip vrrp 78 ip 192.168.212.225
ip vrrp 78 advertise-interval 100 msec
ip vrrp 78 no-preempt
ip vrrp 78 accept-vip-packets
ip vrrp 78 priority 254
ip vrrp 78 track interface ethernet0/1 prio-cost 254
;
exit
;
;
network ethernet0/1
; -- Ethernet Interface User Configuration --
ip address 192.168.3.219 255.255.255.0
;
ip vrrp 79 ip 192.168.3.225
ip vrrp 79 advertise-interval 100 msec
ip vrrp 79 no-preempt
ip vrrp 79 accept-vip-packets
ip vrrp 79 priority 254
ip vrrp 79 track interface ethernet0/0 prio-cost 254
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
route 10.10.2.0 255.255.255.0 192.168.3.100
;
ipsec
; -- IPSec user configuration --
enable
assign-access-list 100
;
template 1 isakmp tdes sha1
template 1 ike natt-version rfc
template 1 keepalive dpd
template 1 send-original-pkt
;
template 2 dynamic esp tdes md5
template 2 source-address 192.168.3.225
template 2 fault-tolerant
;
map-template 100 2
key preshared ip 0.0.0.0 ciphered 0x12D942B46B48645B
advanced dpd always-send
fault-tolerant
; -- Fault tolerant IPSec recovery user configuration --
mode master
slave-address 192.168.212.218
source-address 192.168.212.219
enable
exit
;
exit
118 IPsec
Teldat SA 2 Configuration
;
exit
;
;
dump-command-errors
end
Router1 Config>
Router2 configuration
log-command-errors
no configuration
set data-link sync serial0/0
set data-link sync serial0/1
set hostname Router2
feature access-lists
; -- Access Lists user configuration --
access-list 100
entry 1 default
entry 1 permit
entry 1 source address 192.168.212.0 255.255.254.0
entry 1 destination address 10.10.2.0 255.255.255.0
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 192.168.212.218 255.255.254.0
;
ip vrrp 78 ip 192.168.212.225
ip vrrp 78 advertise-interval 100 msec
ip vrrp 78 no-preempt
ip vrrp 78 accept-vip-packets
ip vrrp 78 priority 253
ip vrrp 78 reload-delay 40s
ip vrrp 78 track interface ethernet0/1 prio-cost 253
;
exit
;
;
network ethernet0/1
; -- Ethernet Interface User Configuration --
ip address 192.168.3.218 255.255.255.0
;
ip vrrp 79 ip 192.168.3.225
ip vrrp 79 advertise-interval 100 msec
ip vrrp 79 no-preempt
ip vrrp 79 accept-vip-packets
ip vrrp 79 priority 253
ip vrrp 79 reload-delay 40s
ip vrrp 79 track interface ethernet0/0 prio-cost 253
;
exit
;
;
protocol ip
; -- Internet protocol user configuration --
route 10.10.2.0 255.255.255.0 192.168.3.100
;
ipsec
; -- IPSec user configuration --
enable
IPsec 119
2 Configuration Teldat SA
assign-access-list 100
;
template 1 isakmp tdes sha1
template 1 ike natt-version rfc
template 1 keepalive dpd
template 1 send-original-pkt
;
template 2 dynamic esp tdes md5
template 2 source-address 192.168.3.225
template 2 fault-tolerant
;
map-template 100 2
key preshared ip 0.0.0.0 ciphered 0x12D942B46B48645B
advanced dpd always-send
fault-tolerant
; -- Fault tolerant IPSec recovery user configuration --
enable
exit
;
exit
;
exit
;
;
dump-command-errors
end
Router2 Config>
We have two routers and two IPsec tunnels set up between them. The first uses IKEv1 as the negotiation protocol,
and the second uses IKEv2.
The first IPsec tunnel protects all traffic sent and received via the tnip1 IP tunnel interface, while the second tunnel
protects traffic in the tnip2 IP tunnel.
120 IPsec
Teldat SA 2 Configuration
log-command-errors
no configuration
add device tnip 1
add device tnip 2
add device loopback 1
set data-link sync serial0/0
set data-link sync serial0/1
set hostname Router1
set inactivity-timer disabled
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 192.168.0.1 255.255.255.0
ip address 10.10.10.203 255.255.255.0 secondary
;
exit
;
;
;
network tnip1
; -- IP Tunnel Net Configuration --
ip address 1.1.1.203 255.255.255.0
;
mode ipsec ip
source 192.168.0.1
destination 192.168.0.2
protection-ipsec
exit
;
;
network tnip2
; -- IP Tunnel Net Configuration --
ip address 2.2.2.203 255.255.255.0
;
mode ipsec ip
source 10.10.10.203
destination 10.10.10.205
protection-ipsec
exit
;
;
network loopback1
; -- Loopback interface configuration --
ip address 2.3.4.5 255.255.255.0
;
exit
;
protocol ip
; -- Internet protocol user configuration --
ipsec
; -- IPSec user configuration --
enable
;
template 1 isakmp des md5
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 2 dynamic esp des md5
template 2 tunnel-protection tnip2
;
template 3 ikev2 encryption tdes
IPsec 121
2 Configuration Teldat SA
122 IPsec
Teldat SA 2 Configuration
log-command-errors
no configuration
add device tnip 1
add device tnip 2
add device loopback 1
set data-link sync serial0/0
set data-link sync serial0/1
set hostname Router1
set inactivity-timer disabled
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 192.168.0.2 255.255.255.0
ip address 10.10.10.205 255.255.255.0 secondary
;
exit
;
;
;
network tnip1
; -- IP Tunnel Net Configuration --
ip address 1.1.1.205 255.255.255.0
;
mode ipsec ip
source 192.168.0.2
destination 192.168.0.1
protection-ipsec
exit
;
;
network tnip2
; -- IP Tunnel Net Configuration --
ip address 2.2.2.205 255.255.255.0
;
mode ipsec ip
source 10.10.10.205
destination 10.10.10.203
protection-ipsec
exit
;
;
network loopback1
; -- Loopback interface configuration --
ip address 6.7.8.9 255.255.255.0
;
exit
;
protocol ip
; -- Internet protocol user configuration --
ipsec
; -- IPSec user configuration --
enable
;
template 1 isakmp des md5
template 1 ike natt-version rfc
template 1 keepalive dpd
;
template 2 dynamic esp des md5
template 2 tunnel-protection tnip2
;
template 3 ikev2 encryption tdes
IPsec 123
2 Configuration Teldat SA
In this case, we have two routers with one IPsec tunnel set up between them. Said IPsec tunnel protects all traffic
sent and received via the tnip1 IP tunnel interface, which is configured with GRE encapsulation (tunnel running in
GRE/IP mode).
By using GRE as the data encapsulation method, IPv4 and IPv6 traffic can be transmitted through the tunnel. In ad-
dition, devices send IPv4 and IPv6 routes to the remote end via the IKEv2 configuration payload.
124 IPsec
Teldat SA 2 Configuration
log-command-errors
no configuration
add device tnip 1
add device loopback 1
add device loopback 2
set data-link sync serial0/0
set data-link sync serial0/1
set hostname Router1
set inactivity-timer disabled
feature ipv6-access-list
; -- IPv6 Access Lists user configuration --
access-list list1
entry 1 deny
entry 1 source address 3333::3333/64
;
exit
;
exit
;
feature access-lists
; -- Access Lists user configuration --
access-list 1
entry 1 default
entry 1 permit
entry 1 source address 33.33.33.33 255.255.255.255
;
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 192.168.0.1 255.255.255.0
;
exit
;
;
;
network tnip1
; -- IP Tunnel Net Configuration --
ip address unnumbered loopback1
;
ipv6 address 1111::1111/64
mode gre ip
source ethernet0/0
destination 192.168.0.2
protection-ipsec
exit
;
;
network loopback1
; -- Loopback interface configuration --
ip address 2.3.4.5 255.255.255.0
;
exit
;
network loopback2
; -- Loopback interface configuration --
ip address 33.33.33.33 255.255.255.255
;
IPsec 125
2 Configuration Teldat SA
126 IPsec
Teldat SA 2 Configuration
log-command-errors
no configuration
add device tnip 1
add device loopback 1
add device loopback 2
set data-link sync serial0/0
set data-link sync serial0/1
set hostname Router1
set inactivity-timer disabled
feature ipv6-access-list
; -- IPv6 Access Lists user configuration --
access-list list1
entry 1 deny
entry 1 source address 4444::4444/64
;
exit
;
exit
;
feature access-lists
; -- Access Lists user configuration --
access-list 1
entry 1 default
entry 1 permit
entry 1 source address 44.44.44.44 255.255.255.255
exit
;
exit
;
;
network ethernet0/0
; -- Ethernet Interface User Configuration --
ip address 192.168.0.2 255.255.255.0
;
exit
;
;
;
network tnip1
; -- IP Tunnel Net Configuration --
ip address unnumbered loopback1
;
ipv6 address 2222::2222/64
mode gre ip
source ethernet0/0
destination 192.168.0.1
protection-ipsec
exit
;
;
;
network loopback1
; -- Loopback interface configuration --
ip address 6.7.8.9 255.255.255.0
;
exit
;
network loopback2
; -- Loopback interface configuration --
ip address 44.44.44.44 255.255.255.255
;
IPsec 127
2 Configuration Teldat SA
2.5 Certificates
RSA asymmetric keys must be used when using RSA-based authentication. These keys are usually used within
higher-level encapsulations called certificates. Our routers allow RSA-based authentication, but you will need to in-
stall certain certificate management tools.
Note
The device only uses certificates that are valid, correctly signed, and that have not been revoked.
If these conditions are not met, the device still loads certificates and displays their properties but it
doesn't use them.
Note
A certificate must be valid in order to be used, so please ensure that the device time is properly syn-
chronized and that the time zone parameters and daylight saving times are configured correctly.
In this section, we will explain how to work with certificates, i.e., how they are downloaded, assigned to templates,
created, etc.
IPSec config>cert
128 IPsec
Teldat SA 2 Configuration
The certificate command from the CERT menu has the following options:
Command Operation
LOAD Loads a CERTIFICATE from a disk to RAM memory.
DISK_DELETE Deletes a CERTIFICATE from a disk.
CONFIG_DELETE Deletes a CERTIFICATE from the configuration.
PRINT Displays the content of a CERTIFICATE on screen.
BASE64 Loads a CERTIFICATE from the console in base64 format.
PKCS12 PKCS12 managing. This option will be explained in PKCS #12. Personal Informa-
tion Exchange on page 151
PFX PKCS12 management with .PFX extension. This option behaves just like
PKCS12.
NO Disables or deletes an option.
Release Modification
11.01.13 The CERTIFICATE [CertFile] NO command is obsolete as of version 11.01.13.
11.02.01 The CERTIFICATE [CertFile] NO command is obsolete as of version 11.02.01.
11.01.13 The PFX command has been added as of version 11.01.13.
11.02.01 The PFX command has been added as of version 11.02.01.
“CERTIFICATE [CertFile] LOAD”
Allows you to load a certificate from a disk into the device's RAM memory. A certificate must be downloaded into the
RAM using this command before you can use it to perform an operation.
Example:
Deletes a certificate from a disk. The certificates can be loaded from a file stored on a disk or from the router config-
uration using the FILE command.
Example:
Allows you to delete a certificate from the configuration. The certificates can be loaded from a file stored on a disk or
from the router configuration using the FILE command.
Example:
Example:
IPsec 129
2 Configuration Teldat SA
Serial Number : 5780 D427 8AFF D97A 26AB 4ADC 9C37 6C8B 3F77 0D92
Algorithm Identifier : SHA 256 With RSA
Issuer:
o (Organization Name ):Internet Widgits Pty Ltd
s (State or Province ):Some-State
c (Country Name ):AU
Valid From : Thu Dec 9 09:59:10 2021 UTC+1
Valid To : Tue Dec 8 09:59:10 2026 UTC+1
Subject:
o (Organization Name ):Internet Widgits Pty Ltd
s (State or Province ):Some-State
c (Country Name ):AU
Public Key :
Algorithm Identifier : RSA
Modulus Length : 2048 Bits.
Modulus :
A7C5 2CEA 092C 0D12 82D4 E844 5535 0934 830D D443 5914 2A0A 30A6 2D9F
22AB FE28 7793 79DF 9B82 321D 09D6 D7C5 BBCA 7D23 221B 320A F87B 13D6
AEEA 6D35 0E8D BF2B D6D9 5F27 67B4 3BA7 9979 D618 0AA4 1F21 98F4 F397
9D0F 5009 3ABC 60F6 21EF 105F 0A8F 547F 1DC5 E1BD CAEC A106 D27B 7963
279C 57EA D7EA E7BD C531 A115 ABA9 B3D1 89C2 0A91 C895 6A8B B802 1282
7021 411E 8E3B 7C30 7C4E CD80 FE1D 86D6 0916 24EF 8644 053B FB98 568D
AE28 46EC 837F 436F F383 B12B B2E6 B240 F8C0 D526 7619 1D19 8CBD 995A
3549 D0A6 02DC 5E9E 1E71 B15F CCA2 EEEB E622 E9EE 5B5F C6EF 1710 6F35
B951 B86F AA70 E400 03C6 917E DDAB F0A8 CC35 F445 72FD F816 3663 094E
ADD8 6C83
Exponent :
01 00 01
Extensions :
=> Subject Key Identifier
46E7EEFF49D6F22B4368550120A4A8D76A7C7943
Critical Extensions :
=> Basic Constraints
30030101FF : 0....
Signature :
Signature Algorithm : SHA 256 With RSA
Signature Data Info : 2048 Bits.
Signature Data :
953C BFCB EC42 5EFD 80EB D78C FCC1 B913 0CC5 ED08 6F72 8992 5D4A 4725 E000
F366 A0AE 98FA DB70 F489 0B2E 4172 3550 18BA 7162 49AA 2D72 A7FC D715 B240
2805 BF1A A3DD 8A5C 5EFA BE44 7E28 BBDC 6067 F118 35B1 BDB7 8E63 828C DD9F
847F B1E5 82A9 57BE FB79 6057 4DDB 48F4 45B6 3082 E1E8 6F36 7678 789A 256E
C56E 24A3 968C D13F 40FD 9641 E124 65A0 B736 C5A2 4484 B940 63E6 A806 645D
9677 75B8 406D CEEB A103 3934 95E9 6BBD 17AE 199D C172 D5E4 D2E2 2C7A C8ED
6A66 4434 E6C8 ADE3 25C3 B8E7 8AB5 D21D CA1A 9189 36A6 E401 22FF 1CBD E091
0108 890E 01D3 2FF5 C265 CAA3 DF6B 87AA 67EB 0FE6 E395 7584 06A9 5B31 1292
9382 728A D8F0 D54D 10E0 E3C8 5379 2DF8
Status
-o=Internet Widgits Pty Ltd,s=Some-State,c=AU
-Private key found with id 1
-CA certificate: CERT_BASE.CER
-Status:Signature ok.
Release Modification
11.01.13 The CERTIFICATE [CertFile] PRINT command has been modified to show more informa-
130 IPsec
Teldat SA 2 Configuration
Release Modification
tion as of version 11.01.13.
11.02.01 The CERTIFICATE [CertFile] PRINT command has been modified to show more informa-
tion as of version 11.02.01.
“CERTIFICATE [CertFile] BASE64”
Allows you to import a certificate in base64 format. Once you have executed the command without any errors, the
certificate will be saved in the configuration and displayed after the FILE command.
Example:
Allows you to generate a random RSA key and assign it to a certificate authority (CA). In other words, it lets you gen-
erate a public/private key pair that will be stored to the device's disk when the configuration is saved.
After generating the key pair, the device suggests generating a Certificate Signing Request (CSR), telling the user to
go to the CSR menu from the CERT menu and execute the MAKE [RSA KEY ID] command.
Example:
It's a good moment to make the Certificate Signing Request (CSR) associated with this RSA Key...
IPsec 131
2 Configuration Teldat SA
If you want to do it, go to the “CERT” menu and then to the “CSR” menu and execute the command “MAKE 1”.
IPSec config>
Important
While the generated RSA keys are stored in the device configuration, they are not displayed with the
SHOW CONFIG command for security reasons. Therefore, if you want to modify text that you have
copied after running the SHOW CONFIG command and then paste it into another device, the RSA keys
will not be copied along with the rest of the configuration.
Command history:
Release Modification
10.08.34.05.08 As of version 10.08.34.05.08, a 4096-bit key size is supported.
10.08.43 As of version 10.08.43, a 4096-bit key size is supported.
10.09.23 As of version 10.09.23, a 4096-bit key size is supported.
11.00.00.02.06 As of version 11.00.00.02.06, a 4096-bit key size is supported.
11.00.03 As of version 11.00.03, a 4096-bit key size is supported.
11.01.00 As of version 11.01.00, a 4096-bit key size is supported.
Allows you to change the certificate authority (CA) associated with a previously generated RSA key.
Example:
This command is similar to the previous command in that it also allows you to change the certificate authority (CA)
associated with a previously generated RSA key. However, it also allows you to extend the length to more than 8
characters.
Example:
• Configure the various CSR attribute values, i.e., subject-name (mandatory), alternative-name (optional) and pass-
word (optional), and select the signature algorithm that will be used to generate the certificate. For this configura-
tion, you need to access the CSR setup menu and execute the respective commands. These commands will be
132 IPsec
Teldat SA 2 Configuration
Note
Verisign does not accept certain characters in the CSR fields. One such character is the @ symbol,
which means you cannot include an email address. You will get error 105 from Verisign if you try to in-
sert an invalid character. This field should be left blank if you are going to send your CSR to Verisign.
The LIST TEMPLATE ALL command will show how it all went:
IPsec 133
2 Configuration Teldat SA
“ALT-NAME [Alternative-name]”
Allows you to configure the alternative-name attribute that will be included in the CSR that you generate later on.
Example:
CSR config>alt-name ?
<1..128 chars> Alternative-name text
CSR config>alt-name teldat.es
CSR config>
“CLEAN”
Example:
CSR config>clean
CSR cleaned OK
CSR config>
Example:
CSR config>delete ?
<word> File name
CSR config>delete prueba
CSR successfully deleted from disk
CSR config>
“LIST”
Example:
CSR config>list
A: PRUEBA.CSR 494 06/25/09 10:38 Flash
A: PRUEBA2.CSR 494 06/25/09 10:38 Flash
CSR config>
Example:
CSR config>load ?
<word> File name
CSR config>load prueba
CSR loaded
CSR config>
Associates a CSR that we've generated with the private key of the ID entered. As you can see below, the subject-
name attribute must be set before you can generate the CSR. Once you have generated the CSR, the router dis-
plays it on screen and asks whether you want to store it to disk. If option yes is entered, this question is omitted and
accepted automatically.
Example:
CSR config>make ?
134 IPsec
Teldat SA 2 Configuration
Command history:
Release Modification
11.01.06 The "[yes]" option was added as of version 11.01.06
Configures the password attribute that will be included in the CSR that you generate later on. The password can be
entered in encrypted format by running CIPHERED (subcommand) or in clear using the PLAIN subcommand.
Example:
CSR config>password ?
ciphered Ciphered password
plain Plain password
CSR config>password pla
CSR config>password plain ?
<4..95 chars> Text
CSR config>password plain mypassword
CSR config>
“PRINT ASN.1/BASE64/READABLE”
Displays the contents of a CSR stored in RAM, on screen. It can be displayed in various formats: ASN1, BASE64 or
READABLE.
Syntax:
CSR config>print ?
asn.1 ASN.1 format
base64 BASE64 format
readable Readable format
CSR config>
Example 1:
IPsec 135
2 Configuration Teldat SA
B9 1C E9 02 03 01 00 01 A0 2D 30 2B 06 09 2A 86 48 86 F7 0D
01 09 0E 31 1E 30 1C 30 1A 06 03 55 1D 11 04 13 30 11 82 0F
74 65 6C 64 61 74 2E 69 6D 61 73 64 2E 65 73 30 0D 06 09 2A
86 48 86 F7 0D 01 01 04 05 00 03 41 00 4A 0A C2 BB 00 0E 24
9F 2A DE 61 58 FB A7 B8 11 30 C5 18 45 47 3E D2 4F 2E 32 90
05 05 68 DB A7 79 AA BB 4F A5 C2 CF BE EE B3 3B 15 B7 8B F9
41 02 7C 37 B3 3B C2 BD 1D 40 12 01 35 5C 5B C1 B6
CSR config>
Example 2:
Example 3:
“SIGNATURE-ALGORITHM”
Lets you select the encryption algorithm that will be used for signing the CSRs. The algorithm can be MD5, SHA1,
MD2, SHA-256, SHA-384, or SHA-512. The default is MD5.
136 IPsec
Teldat SA 2 Configuration
Example:
CSR config>signature-algorithm ?
md5 Set Signature Algorithm of CSR to MD5 algorithm
sha1 Set Signature Algorithm of CSR to SHA1 algorithm
md2 Set Signature Algorithm of CSR to MD2 algorithm
sha256 Set Signature Algorithm of CSR to SHA256 algorithm
sha384 Set Signature Algorithm of CSR to SHA384 algorithm
sha512 Set Signature Algorithm of CSR to SHA512 algorithm
CSR config>signature-algorithm sha1
CSR config>
Configures the subject-name attribute that will be included in the CSR that you generate later on. You must configure
this attribute in order to generate the CSR.
The subject-name is entered as a character string separated by commas and in X500 format, as shown below:
Once configured, the subject-name can be modified (i.e., have new fields added to it) by executing the command
again and storing it on different lines. This attribute can have a maximum of 20 fields and you can enter multiple
fields of the same type.
Example:
CSR config>subject-name ?
<1..250 chars> Subject-name: " C=Country, L=Locality, ST=State/Province,
O=Organization, OU=OrgUnit, CN=CommonName, E=Email,
DC=DomainComponent... "
CSR config>subject-name "c = es, l = madrid, o = teldat, ou = imasd, ou = planta1"
CSR config>subject-name "cn = teldat.imasd.es, e = [email protected]"
CSR config>
Note
1. Be sure to enter the backslash character (\) before entering the equals sign (=), backslash (\) or
comma (,) in any of the fields.
“EXIT”
Lets you return to the CERT menu from the CSR menu.
Example:
CSR config>exit
CERTIFICATES config>
The SCEP protocol allows you to obtain the certificates by connecting to a server (usually the CA server). The device
establishes an HTTP connection to the server and the information is exchanged over this connection.
IPsec 137
2 Configuration Teldat SA
Install
The first thing you have to do is to install the CA certificate on the device. There are several ways to do this:
• Through the configuration: use the FILE command from the CERT menu to enter the commands for defining a cer-
tificate file:
Example:
• Loading a file in base64 format using the CERTIFICATE [CertFile] BASE64 command from the CERT menu.
• Loading the file through ftp and executing the CERTIFICATE [CertFile] BASE64 LOAD command from the CERT
menu.
• Running the INSTALL-CA [GROUP] command from the SCEP menu.
• Using the auto-install feature (this is explained in greater detail in group configuration options).
The install process must have the domain name configured in the group SCEP menu through the DOMAIN-NAME
command or in the IP menu through the DNS-DOMAIN-NAME command.
Enroll
You need to install the user certificate after installing the CA certificate. The device will need an RSA key before it
can contact the SCEP server to request a certificate. This key should have been generated earlier but will be gener-
ated automatically (as explained in the commands section) if it doesn't already exist. Basically, the device encapsu-
lates a CSR request and sends it to the server which validates the request, generates the corresponding certificate
and returns it, also encapsulated.
You can have someone manually installing the user certificate through the enroll process, or you can configure auto-
matic installation. With automatic installation, the device attempts to obtain a certificate when it doesn't have one or
when one has expired.
View status
The certificates that are obtained are automatically installed on the device. You can view them from the CERT menu.
Certificates have the name assigned in the SCEP configuration and are associated with a template, as discussed in
the section on Obtaining certificates through CSR on page 132. To check the general status of the configuration,
use the LIST TEMPLATE ALL command from the IPsec menu. To list the status of configured groups, use the LIST
command from the SCEP monitoring menu.
CONFIGURATION
The device allows you to configure multiple SCEP servers with corresponding parameters within groups that can be
added to the configuration. To enter the SCEP menu, run the SCEP command from the IPsec CERT menu.
Command Function
CA-CHAIN-INSTALL Installs the certificate chain up to the root CA.
CANCEL-PENDING Cancels pending operations.
CAPABILITIES Displays commands supported by the server.
ENROLL Runs the enroll protocol for a SCEP group.
GROUP Creates or enters a SCEP group configuration.
INSTALL-CA Runs the install protocol for a SCEP group.
NEXT-CA-INSTALL Installs the renewed CA certificates.
NO Deletes an option or restores it to its default value.
EXIT Exits the SCEP setup menu.
“CA-CHAIN-INSTALL [group]”
This command should be used when the INSTALL command fails to install the certificate chain up to the root CA.
With some older servers, the INSTALL command will only give the root CA certificate and not the whole chain. We
don't recommend using this command unless this happens.
Example:
138 IPsec
Teldat SA 2 Configuration
“CANCEL-PENDING [group]”
This command should be used to cancel pending operations in a group that has already been configured.
Example:
Command history:
Release Modification
11.01.03 This command was introduced as of version 11.01.03.
“CAPABILITIES [group]”
Runs a SCEP group GetCACaps request, which displays the features supported by the server. This command was
introduced in 2008. Servers with versions prior to this date will give an incorrect response and you will get a parsing/
command error (or similar) in the console.
Example:
“ENROLL [group]”
Runs a SCEP group enroll process. This forces the process to run independently of the AUTOENROLLMENT para-
meter configured in the group.
Upon receiving the certificate, the certificate footprint is displayed for user approval. The footprint is the certificate's
MD5 hash.
Remember to save the configuration to preserve the certificate and generated keys the next time the device is re-
booted.
Example:
SCEP config$enroll 1
Building CSR...
Ciphering enveloped data...
Building signature...
Opening...
172.24.75.193...
Sending Query. Waiting Answer...
Certificate name: ROUTER.CER
Fingerprint: 42 A4 8F 61 E4 1D 39 91 7B 34 0B EA C6 09 B3 47
Do you accept the certificate received(Yes/No)? y
Saving CA certificate router
IPsec 139
2 Configuration Teldat SA
Version : V3
Serial Number : 1C
Algorithm Identifier : MD5 With RSA
Issuer:
CN (Common Name ):
****************************************
Do not forget to save the configuration!
****************************************
“GROUP [group]”
Example:
SCEP config$group 1
-- Scep group user configuration --
SCEP group 1 config$
“INSTALL-CA [group]”
Upon receiving the certificate, the certificate footprint is displayed for user approval. The footprint is the certificate's
MD5 hash.
Remember to save the configuration to preserve the certificate and generated keys the next time the device is re-
booted.
Example:
“NEXT-CA-INSTALL [group]”
Runs a SCEP group GetNextCACert request allowing you to obtain new CA certificates before the old ones expire.
This command was introduced in 2008. Servers with versions prior to this date will give an incorrect response and
you will get a parsing/command error (or similar) in the console.
Example:
140 IPsec
Teldat SA 2 Configuration
****************************************
Do not forget to save the configuration!
****************************************
Command history:
Release Modification
11.01.03 The "next-ca-install" command is obsolete as of version 11.01.03.
“ALTERNATIVE-NAME [Alternative-name]”
Configures the alternative-name attribute that forms part of the CSR generated in the enroll process.
Example:
Configures the automatic mode. When the device is in automatic mode, it runs the enroll process when the following
occurs:
• When the certificate identified by name using the USER-CERT-NAME command does not exist.
• When the certificate identified using the USER-CERT-NAME command has less than double the configured expira-
tion time left.
The device periodically checks whether the above circumstances have occurred. Checks are performed every
minute (by default) but you can configure the RETRY-PERIOD to change their frequency.
Before you can run the enroll process, you must perform the installation. Please remember that the installation is not
IPsec 141
2 Configuration Teldat SA
an automatic process.
Example:
Command history:
Release Modification
10.08.43 As of version 10.08.43, the value of this command is the amount of time before expiration
rather than a period of time.
10.09.25 As of version 10.09.25, the value of this command is the amount of time before expiration
rather than a period of time.
10.09.24.20.07 The RETRY-PERIOD option was introduced as of version 10.09.24.20.07.
11.00.00.02.08 As of version 11.00.00.02.08, the value of this command is the amount of time before ex-
piration rather than a period of time.
11.00.04 As of version 11.00.04, the value of this command is the amount of time before expiration
rather than a period of time. The RETRY-PERIOD option was also introduced.
11.01.00 As of version 11.01.00, the value of this command is the amount of time before expiration
rather than a period of time.The RETRY-PERIOD option was also introduced.
“CA-CERT-NAME [name]”
Identifies the name that the CA certificate has once the certificate has been obtained, or the name it already has if it
has already been loaded.
The default value for this command is “teldat”. Run the NO CA-CERT-NAME command to restore the default value.
Configures a fingerprint in MD5 or SHA1 format for the CA certificate. Both types can be used simultaneously. For an
install operation to be successful, the configured fingerprint must match the received fingerprint. If said print doesn't
match, the install operation stops and the certificate won't be saved.
AUTO-INSTALL FEATURE:
When a ca-fingerprint has been configured, the router tries to automatically install a CA certificate if the following
conditions are met:
In this case, the auto-install process is initiated and a CA certificate retrieved. This CA certificate is only saved if the
configured fingerprints match the configured CA certificate fingerprints.
142 IPsec
Teldat SA 2 Configuration
Once the CA installation has completed successfully, an auto-enroll operation executes. The CA and router certific-
ates are then automatically installed.
Example 1:
Example 1 shows the MD5 fingerprint format: 16 bytes represented in hexadecimal format using the colon (:) symbol
as separator.
Example 2:
Example 2 shows the SHA1 fingerprint: 20 bytes represented in hexadecimal format using the colon symbol (:) as
separator.
Run NO CA-FINGERPRINT MD5 or NO CA-FINGERPRINT SHA1 to remove the preset fingerprints. Note that the
auto-install feature can't execute if the NO CA-FINGERPRINT command is configured.
Command history:
Release Modification
11.01.02 This command was introduced as of version 11.01.02.
“CA-ISSUER-AS-RECIPIENT”
Uses the issuer name of the CA for the recipient information in the enroll process.
By default, the CA subject name is used for the recipient information. Run the NO CA-ISSUER-AS-RECIPIENT com-
mand to restore default behavior.
Command history:
Release Modification
10.08.43 This command was introduced as of version 10.08.43.
10.09.25 This command was introduced as of version 10.09.25.
11.00.00.02.08 This command was introduced as of version 11.00.00.02.08.
11.00.04 This command was introduced as of version 11.00.04.
11.01.00 This command was introduced as of version 11.01.00.
“CGI-PATH [url-path]”
Specifies the server URL path (usually a CGI script). Default is “/cgi-bin/pkiclient.exe”.
Configures the password attribute that forms part of the CSR generated in the enroll process. You can configure a
password in ciphered format using the CIPHERED option.
Example 1:
Example 2:
IPsec 143
2 Configuration Teldat SA
Command history:
Release Modification
10.09.24.20.07 The CIPHERED option was introduced as of version 10.09.24.20.07.
11.00.04 The CIPHERED option was introduced as of version 11.00.04.
11.01.00 The CIPHERED option was introduced as of version 11.01.00.
“DEBUG”
This command is only effective for operations forced from the console. With this enabled, any requests sent to the
server are printed for further analysis. Use the NO DEBUG command to disable this function.
“DOMAIN-NAME”
Sets the CA domain name. Where this parameter is not configured, the CA domain name will be the name con-
figured in the IP with the DNS-DOMAIN-NAME command.
If this command is not set and there is no DNS-DOMAIN-NAME, the install process will end with an error.
“GENERATEKEY”
Makes the enroll process generate an RSA key when the one configured using the RSA-KEY-ID command cannot be
found.
If a key configured with the RSA-KEY-ID command exists, then this command has no effect.
If there is no key configured with the RSA-KEY-ID command and this command is not enabled, the enroll process
ends with an error.
This command is disabled by default. Run the NO GENERATEKEY command to restore the default behavior.
If this command is configured, the IP is included in the CSR subject generated in the enrollment process. You can
configure an IP address or an interface. If you configure an interface, the interface's primary IP is used. The IP is en-
coded in the unstructuredAddress attribute. By default, the IP is not included in the CSR.
Example:
“PORT”
Specifies the server listening port. Default is 80 (HTTP). Run the NO PORT command to restore the default value.
“REGENERATEKEY”
Generates an RSA key every time the enroll process is run, provided that the key configured with the RSA-KEY-ID
command exists. It is important to note that if the RSA key specified using the RSA-KEY-ID command does not exist
and the GENERATEKEY command is not enabled, the enroll process ends with an error regardless of this com-
mand's value.
This command is disabled by default. Run the NO REGENERATEKEY command to restore the default behavior.
The device periodically checks whether the above circumstances have occurred. By default, checks are performed
every minute but you can configure the RETRY-PERIOD to change their frequency.
144 IPsec
Teldat SA 2 Configuration
Example:
Command history:
Release Modification
11.01.03 This command was introduced as of version 11.01.03.
Specifies the RSA key used in this SCEP group. RSA keys are generated in the IPSEC menu using the KEY RSA
GENERATE command. The device will use the enroll process to generate an RSA key if the configured key cannot
be found or if this command is disabled, but it will only do so if the GENERATEKEY command is enabled.
This command is disabled by default. Run the NO RSA-KEY-ID command to restore the default behavior.
As an example, the enroll process has the following effects in these configurations.
Generates a key in the first enroll process that is retained in successive enroll-
ments.
• (no rsa-key-id) && (generate) && (regenerate):
Generates a key in the first enroll process that is renewed in successive enroll-
ments.
• (rsa-key-id 3):
If it does not exist, then the enroll process ends with an error.
• (rsa-key-id 3) && (regenerate):
If it does not exist, then the enroll process ends with an error.
Specifies the length (in bits) of the RSA key automatically generated. This command has no effect if the key specified
through the RSA-KEY-ID command already exists.
If the key specified through the RSA-KEY-ID command does not exist, the keys that are automatically generated in
enroll process will have the length that is specified here.
If the key specified through the RSA-KEY-ID command does not exist and this command is not configured, the keys
that are automatically generated in the enroll process will have the CA certificate module length.
“SERIAL-NUMBER”
If this command is configured, the device's serial number is included in the CSR subject generated in the enroll pro-
cess. The serial number is encoded in the serialNumber attribute. By default, the serial number is not included in the
CSR. Run the NO SERIAL-NUMBER command to restore the default behavior.
“SIGNER-NAME [name]”
Specifies the signer-name identifier attached to the message sent in the enroll process.
Example:
IPsec 145
2 Configuration Teldat SA
When this command isn't configured, the signer-name is obtained from the domain name, configured through the
DNS-DOMAIN-NAME command from the IP protocol menu, preceded by the device name, configured through the
SET-HOSTNAME command from the configuration root menu, and a period.
Example:
DNS-DOMAIN-NAME = teldat.es
HOSTNAME = hostname
When this command is not configured and there is no HOSTNAME or DNS-DOMAIN-NAME, the enroll process ends
with an error.
The SOURCE-ADDRESS command specifies the interface address that will be used as source address for all outgo-
ing TCP connections. The source can be an IP address or an interface. If you configure an interface, the interface's
primary IP is used. If you use the VRF command to configure a VRF and SCEP is being used, the interface's VRF
must be the same as the VRF you set when configuring the source address as an interface. Otherwise, you'll get an
error message.
Example:
Command history:
Release Modification
10.09.20 This command was introduced as of version 10.09.20.
11.00.02 This command was introduced as of version 11.00.02.
“SUBJECT-NAME [name]”
To configure said subject-name, enter the different fields as a character string separated by commas and in X500
format, as shown below:
Example:
Note
1. Make sure you enter the backslash character (\) before entering an equals sign (=), backslash (\) or
comma (,) in any of the fields.
146 IPsec
Teldat SA 2 Configuration
When this command is not configured, the CSR subject-name is obtained from the domain name (configured
through the DNS-DOMAIN-NAME command in the IP protocol menu) preceded by the device name (configured
through the SET HOSTNAME command from the configuration root menu) and a period.
Example:
DNS-DOMAIN-NAME = teldat.es
HOSTNAME = hostname
When this command is not configured and there is no HOSTNAME or DNS-DOMAIN-NAME, the enroll process will
end with an error.
“URL [url]”
Examples:
If the specified URL is not an IP address, the device will require a DNS server capable of resolving domain names.
“USER-CERT-NAME [name]”
Identifies the name of the user certificate once it has been obtained, or the name of the CA certificate if it has already
been loaded.
The default value for this command is "router". Use NO USER-CERT-NAME to restore the default value.
“VRF [vrf_tag]”
Specifies the VRF where SCEP is working. If the SOURCE-ADDRESS command is configured as an interface, the
interface's VRF must be the same or the device will return an error.
By default, no VRF is configured and VRF_MAIN is used. Use NO VRF to restore the default value.
Command history:
Release Modification
11.00.04.20.04 This option was introduced as of version 11.00.04.20.04.
11.00.05 This option was introduced as of version 11.00.05.
11.01.01 This option was introduced as of version 11.01.01.
A router can obtain a CRL from a lightweight directory access protocol (LDAP) server, usually located in the CA it-
self. The IPsec LDAP menu allows you to configure four servers from which to download the CRL. Afterwards, the
server is assigned a template. Once the device has obtained the CRL, it stores it in the non-volatile memory to pre-
vent it from being deleted the next time the device reboots.
The device supports delta CRLs. These are CRLs that only provide information about certificates whose statuses
have changed since the issuance of a previous CRL.
You can also download the CRL and install it in the device's non-volatile memory (via FTP, for example).
In order to configure the CRL, you must define the search parameters to access the server and enable the CRL in
the template. To configure the search parameters, use the IPsec LDAP command described in the section on IPsec
LDAP command on page 148. To enable the CRL use theCRL command from the TEMPLATE menu of IPsec as ex-
plained in the section on Template CRL command on page 149.
IPsec 147
2 Configuration Teldat SA
The LDAP command from the IPsec menu has the following options:
Command Function
SERVER Configures the LDAP server parameters.
TIMER CRL query period in the LDAP server.
Configures the LDAP server listening port. The default is port 389.
Example:
Command history:
Release Modification
11.00.05 The LDAP server default command is obsolete as of version 11.00.05.
11.01.00 The LDAP server default command is obsolete as of version 11.01.00.
You can choose to let the device get the server address by searching the CA certificate CRL Distribution Points ex-
tension. To achieve this behavior, you need to configure the USE-CA-SUBJ-AS-DN option in the TEMPLATE, as in-
dicated in the section on Template CRL command on page 149.
Example:
Configures the LDAP server listening port. The default is port 389.
Example:
Example:
Configures the distinguished name (DN) attribute used in LDAP server queries.
You can choose to let the device obtain the DN by searching the CA certificate CRL Distribution Points extension. To
achieve this behavior, you need to configure the USE-CA-SUBJ-AS-DN command in the TEMPLATE, as indicated in
Template CRL command on page 149.
Example:
Example:
Example:
148 IPsec
Teldat SA 2 Configuration
Displays a list of configured servers. We would obtain the following if we use what we configured in the previous ex-
amples:
Example:
Sets the period of time between CRL lookups. The default value is one day.
The CRL has several optional fields: next update indicates the date of the next CRL update, and next publish indic-
ates the date the next CRL/delta CRL will be issued. The update is done on the date indicated in the next update or
next publish fields, or upon expiry of the period scheduled between lookups, whichever occurs first.
Example:
2.5.6.1.1 Attributes
The default search attribute used in LDAP to obtain the CRL in IPsec is as follows:
certificaterevocationlist;binary
You can select another attribute by changing the LDAP global configuration, as explained in the Teldat Dm790-I
LDAP Protocol manual. When you configure an attribute in the LDAP global configuration, you can use it in the CRL
search rather than in the default.
The other search parameters used are obtained on the basis of those configured in the LDAP global configuration.
As explained in the section on ISAKMP template parameters on page 25, setting the TEMPLATE [ID] IKE METHOD
to RSA when configuring ISAKMP templates, gives you the TEMPLATE [ID] IKE CRL command with the following
options:
Command Function
OPTIONAL Continuous even if the CRL is not available.
ALWAYS CRL must always be available.
LDAP-SERVER Assigns an IPsec LDAP server.
USE-CA-SUBJ-AS-DN Uses the CA subject as the CRL DN.
If a certificate cannot be validated using a CRL lookup because the CRL is not available, the device will assume that
the certificate has not been revoked and will use it. The OPTIONAL or ALWAYS command must be enabled for the
device to use the CRL.
Example:
If a certificate cannot be validated using a CRL lookup because the CRL is not available, the device will assume that
IPsec 149
2 Configuration Teldat SA
the certificate may have been revoked and will not use it. The OPTIONAL or ALWAYS command must be enabled for
the device to use the CRL.
Example:
This command is used to assign an LDAP server configured in IPsec to the template. When you need to search for a
CRL using LDAP, the connection parameters will be taken from the server assigned to this command.
Example:
When the device starts searching for the CRL using LDAP, it tries to get the server address and DN from the CA cer-
tificate CRL Distribution Points extension.
When you want to use a different DN (i.e., not the CA subject) or you don't want to use the address of the server loc-
ated between the CA certificate extensions, you must set the NO USE-CA-SUBJ-AS-DN command and configure the
DA and IP address in the associated LDAP server (as indicated in the section describing the IPsec "LDAP" com-
mand).
Example:
Example:
Use the LIST TEMPLATE ALL command to display the configuration status:
There are a number of operations that you can perform with the CRL lists, such as LIST, PRINT, DELETE, LOAD,
and UNLOAD. Running commands in this menu will not change the configuration.
The TIME-TO-EXPIRE command allows you to temporarily bring forward a CRL search to take place at a time other
150 IPsec
Teldat SA 2 Configuration
IPSec config>cert
-- Cert user configuration --
CERTIFICATES config>crl
-- CRL user configuration --
CRL config>?
delete Delete a CRL
list List CRLs
load Load a CRL
print Print a CRL
time-to-expire Configure the time to expire of a CRL
unload Unload a CRL
exit
CRL config>print all
Name: VRSGNCA.CRLVersion : V2
Algorithm Identifier : SHA1 With RSA
DN : ou=For Test Purposes Only,o=Teldat
This Update : Wed Oct 29 08:00:07 2008
Signature :
Signature Algorithm : SHA1 With RSA
Signature Data Info : 2048 Bits.
Signature Data :
5C33 20CC FACA BD65 76AB 3FDB 4786 E620 FC0E 0DA4 B934 E745 2ACC 2453 9177
9DCB 07D1 1FEB C6A1 0812 896E 6042 1DC2 A94D 85B6 60FA 4656 C07D 22BD 5C37
6907 4765 E6F7 1CCC 6F44 B651 68F3 AC39 6886 9A79 13FC FAD4 8F79 04BF 69CA
F68F 08BA A85D AB22 5BD2 1BA3 8B96 8961 380D 2B0C E157 274B 72C1 FB92 71D6
0E3D 757A FAB5 A83B E903 9B13 A225 0183 2381 629E 6DE1 C099 2841 AC9E 6915
6A05 25B1 0133 804D 07D1 A8D1 E94E 74C5 6745 0D65 0DA4 2776 215A 84B7 E0F8
2350 EBD1 00DE 1B62 DCE7 0288 8A55 9199 03AB DFBF 185F 40F0 D12D 9C15 A6C2
8CF1 9BD9 4329 81E0 3664 26A5 C831 F13F 9107 929A D2C1 8ECA 6F11 6D5F 4D4A
15DB FBED 3C1A 7509 6464 DC78 C203 3935
PKCS #12 is a standard that uses an established syntax to provide a safe means of exchanging personal identity in-
formation. Some of the data that can be exchanged include RSA passwords and certificates.
The standard is basically implemented in the device with two command groups:
As explained in the section on CERT menu on page 128, the CERT menu is located in the IPsec menu. The CERTI-
FICATE command within the CERT menu has the following options relating to the PKCS12 standard:
Command Function
PKCS12 IMPORT Uploads a P12 file from a configuration disk.
PFX IMPORT Uploads a PFX file from a configuration disk. Same behavior as PKCS12 IM-
PORT.
BASE64 Uploads a certificate and password in base64 format from the console.
PKCS12 EXPORT [CHAIN] Exports a certificate and the associated RSA password.
PFX EXPORT [CHAIN] Exports a certificate and its associated RSA password. Same behavior as
PKCS12 EXPORT [CHAIN].
NO Disables or deletes an option.
IPsec 151
2 Configuration Teldat SA
Allows you to load and process a PKCS12 file with a “P12” extension from the device’s static memory (disk).
The P12 file is protected at all times by a password, which is requested by the device when the command is entered.
Once the command has executed successfully, the certificates contained in the file and an RSA password are up-
loaded to the device's configuration. At the same time, the file is deleted from the device’s static memory (disk) for
security reasons.
DEBIAN.CER
Allows you to enter a PKCS #12 file in base64 format. As with the previous configuration, the certificates and RSA
key are saved to the configuration once the command has executed successfully.
Allows the device to export a certificate and its associated RSA key. The certificate and key are exported in base64
format. This appears on screen when the command is run.
The device tries to export the entire user certificate chain when the CHAIN option is present.
152 IPsec
Teldat SA 2 Configuration
MIIHSAIBAzCCBwQGCSqGSIb3DQEHAaCCBvUEggbxMIIG7TCCAtYGCSqGSIb3DQEH
AaCCAscEggLDMIICvzCCArsGCyqGSIb3DQEMCgECoIICZjCCAmIwHAYKKoZIhvcN
AQwBAzAOBAh0IcKZinXr2AICB9AEggJA0HWp52Cwx6hWni8xOfQPobG9PjY8eQKF
(..)
nV/uAj8z2gH4TsKxjKFyoJj9rtGu+XskXcPrkLqbAPXfArZW4cpBTG7j3P8c9Lvl
syv3IKMx+b8B/lafyYEVXNOPucQ6Jnt2X8o1p+iTXkULTxk+UWCYpnhPwHOPzRTX
ogy4pBwJWXQxRxdf1+L7InxTEAoeIjLXrJ3jX48YgNgMgp0gPWw4txfS90HAYJR3
7jj3JbJXLDL+n/hv8yvi/Txo1yZ4IKiW+dBPYJAmgnUdVWVtvZZ1qAx
sqfSINGtADVidWmrmhDWo4BvwhEv2OZzunx+ZUmftbzm+TOWdKsfBRxyhSo8wx0T
NlEE56SEtRBs/Nw63+KhEYPYBKCcgPP50uqafs2oYiTGIeYbWG3+9hIxz3u4rG31
(..)
HyFowjX5YnlGBoaydPLKvTFExskl9R3kMyU4k6+pW6F5n3fI7CDeFzsIZlD+o8Zr
e60NBekf0VN7goUv1XwZM3kb6/QdlApPh0igARaf8xK0hEzX9xIMjeoZySYvT0I9
3ytLeXKsVx42G+zJ/0FEnhKHrVxAIoP1sQJzsnhj/305LYhCf0N3xXaUKENx
/+cXc3r1p9rsIAewVa52wpaI8b6uIs97rB/iO7H/cm+Rj+9SYGSF3xGF6PGU1uhn
kqyb3WQJ4DtVsJ+ytO+vSmfNii1yEA8+/cWkQHHl5fCay9mKbbh71ZNR4qN0fupc
(..)
lXBw0ySdDByIUkaoLanGn3g3LYHitoXBD8Va4H//mWoMUsXQo7kBwWndwd+rFPy/
vqrbjPyelwf/i4+Y3h8Ek5yFlg711M1w0sYmDI1S0UzHmMGlJ2Nm1QHiOD1k9DQ5
tUrLWomrYJA6YgqSAnNglpGj3RfusVvLtPE0Z6Y3gzA7MB8wBwYFKw4DAhoEFO/x
zHZ0tJ4t1pGZUXGgqg3wCBKaBBQPqMtTh66bqURtgQkWjJ9JqGpQSQICB9A=
2.5.9 No
Sets parameters back to their default values, disables options or deletes configuration elements that were previously
added.
Deletes the certificate that is selected from the loaded certificates and the certificates saved into the configuration.
Deletes the certificate that is selected from the certificates saved into the configuration.
Release Modification
11.01.13 The NO command is supported as of version 11.01.13.
11.02.01 The NO command is supported as of version 11.02.01.
IPsec 153
3 Monitoring Teldat SA
Chapter 3 Monitoring
3.1 Introduction
In our routers, IPsec monitoring is done once the SPD elements have been configured.
The difference, in terms of configuration, is that we will be listing parameters instead of changing them. As a result,
any changes we make will only be temporary in nature (since they will no longer have any effect after we have re-
booted the device).
As explained in the introduction to this manual, security associations (SAs) are the secure connections created after
consulting the SPD, and contain the necessary security information (authentication and encryption keys) to process a
packet. Therefore, when we create an SA, we establish a secure connection for transmitting data between two tunnel
endpoints.
There are two types of SA: phase I or ISAKMP SAs and phase II SAs. Phase II SAs can be dynamic or manual.
There is a clear difference between the dynamic and ISAKMP SAs and the manual SAs, and this is something that
should be taken into account. Manual SAs are permanent connections (i.e., the connection is set up between the
tunnel endpoints when the manual templates are configured). Dynamic and ISAKMP SAs, being dynamic, only ap-
pear when we are using the connection between the tunnels endpoints (i.e., when the tunnel is set up).
The monitoring system lists the connections configured previously: the phase I or ISAKMP SAs, and the phase II or
dynamic and manual SAs. It also allows us to eliminate connections, among other options.
In the following sections we will first describe the steps for accessing the monitoring system. Then we will explain
each of the available commands in detail. Finally, we will outline some likely problems and solutions that may be en-
countered in IPsec negotiations.
The examples shown in each monitoring command are based on the following scenario.
*p 3
Console operator
+protocol ip
-- IP protocol monitor --
IP+ipsec
IPSec+
The following commands are available within the IPsec protocol monitoring environment:
Command Operation
? (HELP) Lists the commands or their available options.
ADDRESS-TO-BAN Enters the IPv4 addresses banned from using the protocol.
BITRATE Displays the encapsulation/decapsulation rate in real time.
154 IPsec
Teldat SA 3 Monitoring
3.2.2.1 address-to-ban
Allows you to prevent certain IP addresses from using IPsec by specifying an IP address range that cannot include a
security association (SA) source or destination address.
Example:
When you want to access information on blocked addresses, you should use the LIST BANNED and NO ADDRESS-
TO-BAN commands to unblock the addresses.
3.2.2.2 bitrate
Allows you to monitor the protocol's packet encapsulation/decapsulation rate in real time. When there is a significant
rate change, a new entry will appear in the table. You can halt monitoring at any time by pressing any key.
Example:
IPSec+bitrate
Enc rate (bps/pps) Dec rate (bps/pps)
------------------ ------------------
480/ 1 480/ 1 (15:29:24)
1136/ 3 808/ 2 (15:29:35)
1456/ 4 1808/ 5 (15:29:36)
480/ 1 480/ 1
3.2.2.3 cert
Lets you access the certificate monitoring menu. This is explained in the section on Certificate monitoring com-
mands on page 171.
Example:
IPSec+cert
3.2.2.4 clear
IPsec 155
3 Monitoring Teldat SA
Command Function
COUNTERS Clears counters from the encryption queue and from the SAs used.
SA Cuts established SA connections.
STATISTICS Clears the protocol's statistics.
Clears counters from the encryption queue and from the SAs used. Use the LIST ADVANCED command to view the
counter content.
Example:
IPSec+clear counters
All counters have been reset.
IPSec+
3.2.2.4.2 clear sa
We can use this command to cut the connection established between the two tunnel endpoints. The type of interrup-
tion will depend on the type of SA we have.
There is little point in removing a manual SA because, as we saw above, the connection is permanent and cannot be
cut. We can, however, clear the dynamic and ISAKMP SAs.
Command Operation
ALL Removes all dynamic and ISAKMP SAs.
HOSTNAME-FILTER Removes those SAs involving a specific device.
IN Removes incoming dynamic SAs.
NEGOTIATION Removes ISAKMP or phase I SAs.
OUT Removes outgoing dynamic SAs.
“CLEAR SA ALL”
Example:
IPSec+clear sa all
Clearing IPSec Connections... Done
IPSec+
Deletes all dynamic and ISAKMP SAs involving a specific device (determined by [hostname]). You can use the aster-
isk character (*) to include all hostnames beginning with the same characters. In the following example, all SAs in-
volving devices whose hostname begins with “HOST_”, are removed.
Example:
You will get the following options when you select any of the commands between CLEAR SA IN, CLEAR SA NEGO-
TIATION and CLEAR SA OUT:
Command Function
ADDRESS-FILTER Removes all SAs containing an IPv4 source or destination address within in a spe-
cified range.
ALL Removes all SAs of the selected type.
CONNECTION Removes all SAs with a specified ID number.
HOSTNAME-FILTER Removes all SAs involving a specific device.
IKEV1 Removes all SAs negotiated with the IKEv1 protocol. Only available with the "clear
sa negotiation" command
IKEV2 Removes all SAs negotiated with the IKEv2 protocol. Only available with the "clear
sa negotiation" command
156 IPsec
Teldat SA 3 Monitoring
Clears all SAs (incoming dynamic/ISAKMP/outgoing dynamic) containing an IPv4 source or destination address that
fall within the range specified by [ip add][mask].
Example:
Example:
The [id] field is the SA identification number. All dynamic and ISAKMP SAs with the specified [id] number are re-
moved.
Example:
Clears all SAs (incoming dynamic/ISAKMP/outgoing dynamic) involving a specific device, determined by [hostname].
Example:
Clears all SAs (incoming dynamic/ISAKMP/outgoing dynamic) negotiated using the IKEv1 protocol.
Example:
Clears all SAs (incoming dynamic/ISAKMP/outgoing dynamic) negotiated using the IKEv2 protocol.
Example:
Command history:
Release Modification
11.01.10 The IKEV1 and IKEV2 options were added to the CLEAR SA NEGOTIATION command
as of version 11.01.10.
Deletes the protocol's statistics. You can use the LIST STATISTICS command to show these statistics.
Example:
IPsec 157
3 Monitoring Teldat SA
IPSec+clear statistics
All IPSec statistics have been reset.
IPSec+
3.2.2.5 fault-tolerant
Lets you access the fault tolerant IPsec recovery monitoring menu. This will be explained in the section on Certificate
monitoring commands on page 171.
Example:
IPSec+fault-tolerant
3.2.2.6 filter-by-host
FILTER-BY-HOST allows you to limit protocol monitoring to only those events involving a specific device, identified
as hostname.
“FILTER-BY-HOST [hostname]”
Limits monitoring to events relating to the device whose host name is [hostname].
Example:
IPSec+filter-by-host HOST_H
Filter activated with hostname HOST_H
IPSec+
Use the LIST NEGOTIATION FILTER command to view the [hostname] defined in the filter. Use the NO FILTER-
BY-HOST command to disable it.
3.2.2.7 filter-dpd
Enables the filter showing dead peer detection (DPD) protocol events and logs.
Example:
IPSec+filter-dpd
IPSec+
You can use the LIST NEGOTIATION FILTER command to check whether the filter is enabled. Use NO FILTER-DPD
to disable it.
Allows you to enter the Group Domain Of Interpretation (GDOI) group monitoring menu. This will be explained in the
section on GDOI group monitoring commands on page 180.
Example:
3.2.2.9 hardware
Command Function
enable Enables an encryption card.
list Lists the status of hardware used by IPsec.
test Analyzes whether encryption hardware is present.
Enables the selected hardware component, if available, to accelerate the encryption process.
Example:
158 IPsec
Teldat SA 3 Monitoring
IPSec+hardware enable ?
cf1531 CF1531
fsl-dpaa-sec FSL-DPAA-SEC
fsl-sec FSL-SEC
generic-driver GENERIC DRIVER
mpc8272 MPC8272
mpc85xx MPC85XX
ts422-ts727 TS422-TS727
IPSec+hardware enable fsl-dpaa-sec
IPSec+
Command history:
Release Modification
11.01.00 The FSL-DPAA-SEC option was introduced as of version 11.01.00.
The HARDWARE LIST command shows whether the encryption card is enabled. Use the NO HARDWARE ENABLE
command to disable it.
“HARDWARE LIST”
Lists the status of the hardware used to accelerate the IPsec encryption process.
Example:
IPSec+hardware list
“HARDWARE TEST”
Example:
IPSec+hardware test ?
<0s..52w1d> Time value
IPSec+hardware test 5s
IPSec+
3.2.2.10 hostname-to-ban
Allows you to block a device from using IPsec by specifying a host name that must not form part of any security as-
sociation.
“HOSTNAME-TO-BAN [hostname]”
Prevents the router from establishing an IPsec tunnel with a device whose hostname is [hostname].
Example:
IPSec+hostname-to-ban HOST_H
IPSec+
Use the LIST BANNED command to access information on blocked devices. Use the NO HOSTNAME-TO-BAN com-
mand to unblock the devices.
IPsec 159
3 Monitoring Teldat SA
3.2.2.11 list
Shows protocol monitoring information. You can use the following commands:
Command Function
ACCESS-LISTS Displays information on access lists.
ADDRESS-FILTER Provides protocol information on IP addresses within a certain range.
ADVANCED Displays the content of the counters used in the SA and encryption queue.
BANNED Lists addresses or devices that cannot use IPsec.
CERTIFICATE_NUMBER Certificate identified by the number assigned during IKE negotiation.
HOSTNAME-FILTER Provides protocol information on a device identified by its hostname.
NEGOTIATION IKE negotiation log (Internet Key Exchange ).
NOTIFICATION IKE negotiation notification messages.
SA Security associations.
STATISTICS IPsec protocol operating statistics.
The following options become available when you enter this command:
Command Function
address-filter Displays all the protocol information relating to the specified IP address range.
all Displays all access list information (cache and entries).
Cache Displays cache information from access lists associated with IPsec.
entries Displays defined entries from the access lists associated with IPsec.
The information displayed is limited to cases involving an IP address in the range [IP add][mask].
Displays all available information on the access lists assigned to IPsec, formed from cache and the list entries.
Displays all the cache data for the access lists assigned to IPsec.
Lists all the entries defined in the access lists assigned to IPsec.
Selects and displays all IPsec monitoring information relating to the IP address range [IP add][mask].
Example:
SA OUT
SA 3 SPI=0x725d86d5
SA UP, ESP-DES ESP-MD5 SRC=10.10.10.1 DES=10.10.10.2
LifeTime:1h0m0s (0h56m7s)
encode pkts:2 (err:0)
Path MTU: 1446, number of path MTU sent 0, number of path MTU received 0
SRC=1.1.1.1/32 DES=2.2.2.2/32 ethernet0/0
SA IN
SA 2 SPI=0x8426bab4
SA UP, ESP-DES ESP-MD5 SRC=10.10.10.2 DES=10.10.10.1
LifeTime:1h0m0s (0h56m7s)
decode pkts:2 (err:0)
DPD: idle for 51(60) seconds
160 IPsec
Teldat SA 3 Monitoring
SA NEGOTIATION
SA 1 (i_cookie=0x172ba5e581af8c2b r_cookie=0x2f5b71cea58696b7)
Inic=10.10.10.1 Resp=10.10.10.2
SRC=10.10.10.1 DES=10.10.10.2 STATE=5
LifeTime:1h0m0s (0h56m7s)
ClientSRC=1.1.1.1/32 ClientDES=2.2.2.2/32 Rule=0 Ifc=ethernet0/0
DPD ENABLED : idle for 60(60) seconds, ignored 0(3) DPD packets, waiting for out-traffic
IKE fragmentation
ISAKMP_SA available, STATE=ESTABLISH
ISAKMP_NEGII id 0x378218c9, (0x8426bab4/0x725d86d5)
SRC=1.1.1.1/32 DES=2.2.2.2/32 ethernet0/0
LifeTime:1h0m0s (0h56m7s)
encode pkts:2 (err:0), decode pkts:2 (err:0)
Lets you read the encryption queue and SA counter values used. It also tells you whether the protocol has been dis-
abled with the SHUTDOWN command.
Example:
IPSec+list advanced
Cipher Queue Size: 50
Cipher Queue Water Mark: 2 reached 0h4m27s ago.
Current Queue Level: 0
Max SA simultaneous: 2 reached 0h4m27s ago.
Current number of SA Out: 1
Current number of SA In: 1
Max tunnel supported: 400
Access list hash size (slots): 37
Number of keys in hash: 48
Number of free keys: 1
Fields checked by hash: ia_src ia_dst selector1 selector2 selector3
Hash usage (absolute): 2 (ipsec) + 635 (other) + 48 (fail) = 685 (total)
Hash usage (relative): 0% (ipsec) + 92% (other) + 7% (fail)
Hash usage (moving average): 0.1% (ipsec) + 96.3% (other) + 3.5% (fail)
Hash distribution:
[min ... max] -> number of slots with n keys, min <= n <= max
[0 ... 0] -> 12
[1 ... 1] -> 11
[2 ... 3] -> 12
[4 ... 7] -> 2
Previous exponentiation level 1 (max 1)
IPSec active
IPSec+
Lists an IP address range and any host names that are not allowed to form part of an IPsec tunnel because they
have been banned via the ADDRESS-TO-BAN or HOSTNAME-TO-BAN commands.
Example:
IPSec+list banned
IPsec 161
3 Monitoring Teldat SA
Banned addresses:
210.210.210.0
Banned hostnames:
HOST_H
IPSec+
Displays information about a particular certificate identified by the number [id] assigned in the IKE negotiation.
Selects and displays all monitoring information relating to the device whose host name is [hostname]. As with other
IPsec commands where you have to enter a [hostname], you can use the asterisk character (*) to select all the
devices whose host name begins with the characters preceding the asterisk.
Nested within this command, and related to the IKE negotiation log, are the following commands:
Command Function
ADDRESS-FILTER Only reports negotiations involving a specific device, determined by its IP address.
ALL Displays the negotiation in full.
BETWEEN Displays the IKE negotiation between two specific devices.
FILTER Specifies which filters are enabled.
HOSTNAME-FILTER Only reports negotiations involving a specific device, determined by its hostname.
ORDER Displays the negotiation in order of conversations among peers.
Only shows negotiations for entries involving the device whose IPv4 address is [IP add].
Shows the entire IKE negotiation that has not yet been consulted.
Example:
162 IPsec
Teldat SA 3 Monitoring
(trans 1 id=des)
(encap tunnel)
(life sec)
(duration 3600)
(auth alg md5)
(HDR nonce)(# 24(0x18))
(id addr4 prot=0 port=0)(# 1.1.1.1)
(id addr4 prot=0 port=0)(# 2.2.2.2)
10.10.10.1 10.10.10.2:
(* 01:--------- Matching template ---------)(# 2(0x2))
(HDR bb213236)
(HDR hash)
(* 11:--------- Creating SA IN ---------)(# 461703945(0x1b850b09))
(* 12:--------- Creating SA OUT ---------)(# -243871082(0xf176d296))
(* 40:------!!! CONNECTED !!!------)
(* 09:--------- Creating ISAKMP SA id ---------)(# -2093442493(0x83389a43))
10.10.10.2 10.10.10.1: (HDR 83389a43)
(HDR hash)
(del esp #1)(* 8426bab4)
10.10.10.1 10.10.10.2: (09:04:40)
(* 14:--------- Deleting SA IN ---------)(# -2077836620(0x8426bab4))
(* 09:--------- Creating ISAKMP SA id ---------)(# 787648381(0x2ef28f7d))
(* 15:--------- Deleting SA OUT ---------)(# 1918731989(0x725d86d5))
(HDR 2ef28f7d)
(HDR hash)
(del esp #1)(* 725d86d5)
(09:04:43)
(* 09:--------- Creating ISAKMP SA id ---------)(# 1173201016(0x45eda078))
(* 14:--------- Deleting SA IN ---------)(# 461703945(0x1b850b09))
(* 09:--------- Creating ISAKMP SA id ---------)(# -766098472(0xd25643d8))
(* 15:--------- Deleting SA OUT ---------)(# -243871082(0xf176d296))
(HDR 45eda078)
(HDR hash)
(del esp #1)(* 1b850b09)
(HDR d25643d8)
(HDR hash)
(del esp #1)(* f176d296)
(09:04:47)(* 07:--------- Deleting ISAKMP NEG ---------)(# 1(0x1))
(09:05:01)
(* 36:--------- Local Starting Neg ---------)
(* 06:--------- Creating ISAKMP NEG ---------)(# 6(0x6))
(HDR 0)
(HDR sa)
(prop 1 isakmp #1)
(trans 1 id=1)
(encrypt des)
(hash md5)
(grp desc 1)
(auth presh)
(life sec)
(duration 3600)
(vendor 13)(* lJ/M GeTeldat)
(vendor attrcfg)
(vendor xauth)
(vendor ikefrag)
(vendor natt)(* nat-t-rfc)
(vendor dpd)
10.10.10.2 10.10.10.1: (HDR 0)
(HDR sa)
(prop 1 isakmp #1)
(trans 1 id=1)
(encrypt des)
(hash md5)
(grp desc 1)
(auth presh)
(life sec)
(duration 3600)
IPsec 163
3 Monitoring Teldat SA
164 IPsec
Teldat SA 3 Monitoring
Selects and displays negotiations between devices whose IPv4 addresses are [IP1 add] and [IP2 add].
Shows which of the following filters are enabled: negotiation filter, event filter and DPD filter. These are enabled
through the FILTER-BY-HOST and FILTER-DPD commands, or using the EVENT ADDRESS-FILTER command from
the IPsec configuration menu; the latter of these commands creates an event filter with a range of IP addresses to
monitor. These filters affect the output of the BITRATE , LIST NEGOTIATION and LIST STATISTICS commands.
Example:
DPD filter
IPSec+
Filters out all entries except those involving the device identified by [hostname].
Displays IKE negotiation notification messages: failed negotiation proposals, incompatible, deleted SAs, etc.
Example:
IPSec+list notification
(09:10:44)
IPSec+
3.2.2.11.9 list sa
Allows us to view all the SAs and see whether the connections are active.
When we list the SAs, manual SAs will always be shown because they are permanent connections. Since the dy-
namic and ISAKMP SAs are dynamic, they will only be shown if we are using the connection between the tunnel
ends (i.e., if we are transmitting data).
Command Operation
IN Lists incoming dynamic and manual SAs.
NEGOTIATION Lists ISAKMP or phase I SAs.
OUT Lists outgoing dynamic and manual SAs.
Filters out all SAs (incoming/ISAKMP/outgoing) except those that contain a source or destination address within the
range defined by [IP add][mask].
Example:
IPsec 165
3 Monitoring Teldat SA
SA NEGOTIATION
SA 6 (i_cookie=0xa65b782f4d068855 r_cookie=0xdc8cac71ce06ef94)
Inic=10.10.10.1 Resp=10.10.10.2
SRC=10.10.10.1 DES=10.10.10.2 STATE=5
LifeTime:1h0m0s (0h53m3s)
ClientSRC=1.1.1.1/32 ClientDES=2.2.2.2/32 Rule=0 Ifc=ethernet0/0
DPD ENABLED : idle for 60(60) seconds, ignored 0(3) DPD packets, waiting for out-traffic
IKE fragmentation
ISAKMP_SA available, STATE=ESTABLISH
ISAKMP_NEGII id 0xcec98cb4, (0xe5fd30c6/0x4c54f100)
SRC=1.1.1.1/32 DES=2.2.2.2/32 ethernet0/0
LifeTime:1h0m0s (0h53m3s)
encode pkts:2 (err:0), decode pkts:2 (err:0)
IPSec+
Lists all the SAs of the selected type that are currently active (incoming/ISAKMP/IKEv2/outgoing). In the case of in-
coming and outgoing SAs, it will list the manual SAs and the active dynamic SAs.
Example:
IPSec+list sa in all
SA IN
SA 7 SPI=0xe5fd30c6
SA UP, ESP-DES ESP-MD5 SRC=10.10.10.2 DES=10.10.10.1
LifeTime:1h0m0s (0h52m41s)
Direct-decoded-fwd: nexthop 20.20.20.2, ifc ethernet0/1
decode pkts:2 (err:0) (FVRF err:0 - IVRF err:0)
DPD: idle for 17(60) seconds
SRC=1.1.1.1/32 DES=2.2.2.2/32 ethernet0/0
IPSec+
SA NEGOTIATION
SA 327 [IKEv2] (i_cookie=0xf0fd1c34fb2bbac3 r_cookie=0xe17a6c2fef5a37fd)
Inic=192.168.212.204 Resp=192.168.212.203
SRC=192.168.212.203 DES=192.168.212.204 STATE=6
LifeTime:1h0m0s (0h26m52s)
ClientSRC=192.168.212.203/32 ClientDES=192.168.212.204/32 Rule=0 Ifc=ethernet0/0 GRE
DPD ENABLED : idle for 60(60) seconds, ignored 0(3) DPD packets, waiting for out-traffic
ISAKMP_SA available, STATE=ESTABLISH
CHILD_SA id 0xb7559a17, (0x7598c4be/0x5a6a1514)
SRC=192.168.212.203/32 DES=192.168.212.204/32 GRE ethernet0/0
LifeTime:1h0m0s (0h26m55s)
encode pkts:0 (err:0), decode pkts:0 (err:0)
Shows active ISAKMP SAs built between the device and the IPsec tunnel peer identified by [hostname].
Command history:
Release Modification
11.00.05 As of version 11.00.05, the output of the LIST SA IN and LIST SA OUT commands only
shows the statistic that applies (i.e., decoded packets for SA IN, and encoded packets for
166 IPsec
Teldat SA 3 Monitoring
Release Modification
SA OUT) rather than both statistics (encoded and decoded packets). They also show in-
formation related to the DIRECT-DECODED-FWD and DIRECT-ENCODED-FWD com-
mands.
11.01.00 As of version 11.01.00, the output of the LIST SA IN and LIST SA OUT commands only
shows the statistic that applies (i.e., decoded packets for SA IN, and encoded packets for
SA OUT) rather than both statistics (encoded and decoded packets). They also show in-
formation related the DIRECT-DECODED-FWD and DIRECT-ENCODED-FWD com-
mands.
11.00.07 As of version 11.00.07, the output of the LIST SA NEGOTIATION , LIST SA IN and LIST
SA OUT commands shows IKEv2 SAs.
11.01.02 As of version 11.01.02, the output of the LIST SA NEGOTIATION , LIST SA IN and LIST
SA OUT commands shows IKEv2 SAs.
11.01.04 The IKEV1, IKEV2 and CONNECTION options were introduced as of version 11.01.04.
11.01.04 As of version 11.01.04, the output of the LIST SA NEGOTIATION command shows the
routes received via IKEv2 Configuration Payload.
11.01.08 As of version 11.01.08, the output of the LIST SA NEGOTIATION command shows Trans-
port encapsulation information.
11.01.08 As of version 11.01.08, the output of the LIST SA IN and the LIST SA OUT commands
shows VRF error counter information.
Example:
IPSec+list statistics
----ESP/AH Statistics:----
Input Stats
-----------
Frames ok 4
Frames error 0
---> Out-of-Order frames 0
---> Unknown payload protocol 0
---> Internal errors 0
Frames/sec 0 (max 1)
kbits/sec 0 (max 0)
Output Stats
------------
Frames ok 4
Unknown authentication algorithm 0
Frames/sec 0 (max 1)
kbits/sec 0 (max 0)
Sa in not found 0
Invalid spi notifications sent 0
Sa out Template not found 0
Sa out not found(only manual) 0
----IKE Statistics:----
ISAKMP not found 0
Invalid ISAKMP notif. sent 0
Negotiation phase I 1
Negotiation phase II 1
Check Hash Error phase I 0
Check Hash Error phase II 0
Drops Collision IKE messages 0
Drops Waiting IKE Processing 0
IPsec 167
3 Monitoring Teldat SA
IPSec+
Example:
Command history:
Release Modification
11.01.04 This monitoring command was introduced as of version 11.01.04.
3.2.2.12 monitor-level
The verbose option in the MONITOR-LEVEL command gives detailed monitoring information.
“MONITOR-LEVEL VERBOSE”
Example:
IPSec+monitor-level verbose
IPSec+
Use the NO MONITOR-LEVEL VERBOSE command to disable the verbose monitoring mode.
3.2.2.13 no
The sole purpose of this command is to perform the opposite action of the other protocol commands. The menu
shown in no is a replica of the initial menu, but only contains those commands for which there is an opposite func-
tion.
Command Function
ADDRESS-TO-BAN Unblocks IPv4 addresses banned from IPsec.
FILTER-BY-HOST Stops limiting monitoring to a specific device.
FILTER-DPD Does not include DPD protocol events and logs.
HARDWARE Using the enable option, disables a specific encryption card.
HOSTNAME-TO-BAN Unblocks devices banned from IPsec.
MONITOR-LEVEL Using the verbose option reduces the amount of detailed monitoring information
shown.
SHUTDOWN Enables IPsec.
STOP-ON-MESSAGE Doesn't halt the negotiation log when a particular message occurs.
3.2.2.14 shutdown
Performs an orderly shutdown of all open IPsec connections and disables the protocol.
168 IPsec
Teldat SA 3 Monitoring
Example:
IPSec+shutdown
Warning
You will instantly lose access if you run this command when connecting via a remote console through
an IPsec session. You won't be able to recover access until you reboot the device or until you run the
NO SHUTDOWN command through an access mode that isn't protected by IPsec.
3.2.2.15 stop-on-message
Stops the negotiation message log when a particular message occurs. The options for this command are the num-
bers identifying the messages where the log can be stopped.
Command Function
01 --------- Matching template ---------
02 --------- Matching SA NEG ---------
03 --------- Decryption error ---------
04 --------- Retransmission ---------
05 --------- Unable to initiate. Unknown destination ---------
06 --------- Creating ISAKMP NEG ---------
07 --------- Deleting ISAKMP NEG ---------
08 --------- Creating ISAKMP SA ---------
09 --------- Creating ISAKMP SA id ---------
10 --------- Unable to make ISAKMP SA ---------
11 --------- Creating SA IN ---------
12 --------- Creating SA OUT ---------
13 --------- Deleting AL ENTRY ---------
14 --------- Deleting SA IN ---------
15 --------- Deleting SA OUT ---------
16 --------- KeepAlive Deleting SA ---------
17 --------- Purgetime SA NEG ---------
18 --------- Purgetime SA NEG II ---------
19 --------- ISAKMP SA negotiating I ---------
20 --------- Negotiation on Phase I. Phase II not allowed ---------
21 --------- Invalid NegII or ISAKMP SA ---------
22 --------- Initiated Renegotiation Timer for SA OUT ---------
23 --------- Renegotiation Timer for SA OUT expired ---------
24 --------- Attempt to renegotiate delayed ---------
25 --------- Matching CRL ---------
26 --------- Invalid ID information ---------
27 --------- No Dir Info in SA ---------
28 --------- ISAKMP SA negotiating II ---------
29 --------- Negotiation from banned host stopped ---------
30 --------- DPD Deleting SAs ---------
31 --------- Max tunnel supported reached ---------
32 --------- Renegotiation using DNAT ---------
33 --------- Lifetime changed ---------
34 --------- Searching Backup Peer ---------
35 --------- Renegotiation Timer for SA NEG expired ---------
36 --------- Local Starting Neg ---------
37 --------- Remote Starting Neg ---------
IPsec 169
3 Monitoring Teldat SA
In the example shown below, the negotiation log is interrupted when message 36 appears. After running the STOP-
ON-MESSAGE command, all ISAKMP SAs are deleted in order to start a new negotiation, which will happen if there
is IPsec traffic (the SAs are not permanent). We can list the negotiation to see how the log stopped when the mes-
sage occurred.
Example:
IPSec+stop-on-message 36
3.2.2.16 template-bitrate
Allows you to monitor the protocol's packet encapsulation/decapsulation rate for the selected dynamic template, in
real time. When there is a significant rate change, a new entry will appear in the table. You can halt monitoring at any
time by pressing any key.
Example:
IPSec+template-bitrate 2
TEMPLATE 2:
Enc rate (bps/pps) Dec rate (bps/pps)
------------------ ------------------
0/ 0 0/ 0
IPSec+
Note
To enable real time monitoring of the packet encapsulation/decapsulation rate for a dynamic template,
you must configure a REPORT related with RATE on this template. To do this, use the TEMPLATE [ID]
REPORT {TX-RATE-KBPS/TX-RATE-KBPS} commands as described in the section on Dynamic tem-
plate parameters on page 35.
IPSec+template-bitrate 2
TEMPLATE 2:
Enc rate (bps/pps) Dec rate (bps/pps)
------------------ ------------------
170 IPsec
Teldat SA 3 Monitoring
Command history:
Release Modification
11.00.05 This command was introduced as of version 11.00.05.
11.01.00 This command was introduced as of version 11.01.00.
3.2.3.1 crl
Enters the CRL monitoring menu. The commands available in this menu are as follows:
Command Function
? (HELP) Lists the commands or their available options.
LIST Lists the CRLs on the device.
EXIT Exits the certificate monitoring menu.
3.2.3.1.1 list
Command Function
EXISTENT Lists the CRLs written into the device's non-volatile memory.
LOADED Lists active CRLs.
“LIST EXISTENT”
Displays those CRL lists written into the device's non-volatile memory.
Example:
“LIST LOADED”
Example:
3.2.3.2 list
Command Function
LOADED-CERTIFICATES Lists certificates that are currently active on the device.
DISK-CERTIFICATES Lists active certificates saved to disk.
CONFIG-CERTIFICATES Lists active certificates saved to the configuration.
TREE-CERTIFICATES Lists all currently active device certificates in a tree structure.
IPsec 171
3 Monitoring Teldat SA
Example:
Issuer: TELDAT_CERT.CER
Status:
-cn=Teldat Certification Authority,ou=ID,o=Teldat,l=Madrid,s=Madrid,c=ES
-Without Private Key
-CA certificate: TELDAT_CERT.CER
-Status:Signature ok.
Fingerprint md5: F3:FE:79:E6:46:D0:DA:E6:A4:61:33:C3:8B:5F:74:B2
Fingerprint sha1: 4C:AC:41:E1:3B:65:CE:D5:CC:84:74:84:6D:8F:A8:C1:54:09:0E:B0
SHA-1 hash of Subject Public Key Info: 30:81:89:02:81:81:00:B2:DF:CD:94:39:4A:63:F3:40:28:9F:CB:15
----------------------------------------------
CERT_BASE.CER (from config)
Issuer: CERT_BASE.CER
Status:
-o=Internet Widgits Pty Ltd,s=Some-State,c=AU
-Private key found with id 1
-CA certificate: CERT_BASE.CER
-Status:Signature ok.
Fingerprint md5: 6A:43:BB:A4:77:F4:5A:D3:4C:B6:8A:09:EB:14:CA:E0
Fingerprint sha1: BF:FD:21:DF:82:76:FC:49:D3:20:79:76:62:F5:5E:72:6A:E2:16:E6
SHA-1 hash of Subject Public Key Info: 30:82:01:0A:02:82:01:01:00:A7:C5:2C:EA:09:2C:0D:12:82:D4:E8
----------------------------------------------
Example:
Example:
172 IPsec
Teldat SA 3 Monitoring
• The first one shows the tree structure and the name of the certificate.
• The second one shows the certificate´s error status.
• The third one shows the certificate´s private key error status.
Example:
3.2.3.3 scep
Accesses the SCEP monitoring menu. The commands available in this menu are as follows:
Command Function
? (HELP) Lists the commands or their available options.
CA-CHAIN-INSTALL Installs the chain of certificates up to the root CA.
CAPABILITIES Displays the commands supported by the server.
ENROLL Executes the enroll protocol for a SCEP group.
INSTALL-CA Executes the install protocol for a SCEP group.
LIST Lists SCEP group status.
NEXT-CA-INSTALL Installs the renewed CA certificates.
EXIT Exits the certificate monitoring menu.
These commands behave in the same way as the commands described in the section entitled Obtaining certificates
through SCEP on page 137.
Command history:
Release Modification
11.01.03 The "next-ca-install" command is obsolete as of version 11.01.03.
3.2.3.3.2 list
Example:
SCEP monit+list
Group: 1, enrolltime: 40 mins (expires in 14 mins),
retry period: 2 mins (remaining time for next retry: 1 mins), status: IDLE
URL: 192.168.213.119, CGI_PATH: /certsrv/mscep/mscep.dll
CA: win2008
Key Encipherment Cert (Encryption): A:WIN200EN.CER
Digital Signature Cert (Enrollment): A:WIN200OF.CER
There is a valid certificate: A:TELDAT_C.CER
Command history:
Release Modification
10.08.43 As of version 10.08.43, this command shows the enrolltime in seconds and no longer
IPsec 173
3 Monitoring Teldat SA
Release Modification
shows the timeleft, which is always 1 minute.
10.09.25 As of version 10.09.25, this command shows the enrolltime in seconds and no longer
shows the timeleft, which is always 1 minute.
10.09.24.20.07 As of version 10.09.24.20.07, this command shows, in addition to the enrolltime, the time
remaining before the user certificate expires, the retry-period and the time remaining be-
fore the next retry (all times are shown in minutes).
11.00.00.02.08 As of version 11.00.00.02.08, this command shows the enrolltime in seconds and no
longer shows the timeleft, which is always 1 minute.
11.00.04 As of version 11.00.04, this command shows, in addition to the enrolltime, the time re-
maining before the user certificate expires, the retry-period and the time remaining before
the next retry (all times are shown in minutes).
11.01.00 As of version 11.01.00, this command shows, in addition to the enrolltime, the time re-
maining before the user certificate expires, the retry-period and the time remaining before
the next retry (all times are shown in minutes).
*p 3
Console Operator
+protocol ip
-- IP protocol monitor --
IP+ipsec
-- IPSec protocol monitor --
IPSec+fault-tolerant
-- Fault tolerant IPSec recovery monitor --
Router1 IPSecFT monitor+
3.2.4.1 list
Example:
174 IPsec
Teldat SA 3 Monitoring
Connection 1:
Time since creation: 0d05h02m13s
Current state: STANDBY
Local [address/port]: 192.168.212.219:52912
Remote [address/port]: 192.168.212.218:1025
Internal ID: 0x00000002
Session ID: 0x1636
Inactivity timeout: 500 milliseconds
Inherit condition: VRRP
Last packet received: 180555
Number of tunnels: 0
Monitored IP 01: 192.168.3.225
Message queue:
Initialized: TRUE
Queue size: 1000
Available elements: 1000
Used elements: 0
Sent to queue: 243880
Errors sending to queue: 0
Queue full counter: 0
Retrieved from queue: 243880
The above example shows five large blocks of information which we will now explain:
- “Config change pending": Shows whether the backup job has any pending
configuration changes.
IPsec 175
3 Monitoring Teldat SA
- “Unregistered connections”: Backup tasks that have not been able to re-
gister.
• “Connection X”: The following information concerns backup task number X.
- “Time since creation": Time since the backup task was created.
• Block 2: “List of remote tunnels”. Lists IPsec sessions that are controlled by backup tasks.
- “Session ID”: The following information refers to the specified backup task.
• “ID 0xXXXXXXXX”: Displays information on the specified IPsec session.
• Block 3: “Main task state”. Lists information on the main IPsecFT task.
- “Config change pending”: Indicates whether the main task has any configura-
tion changes pending.
“Invalid version”: ACK received with error due to the protocol version.
“Invalid type”: ACK received with error due to the type of packet received.
“Invalid num seq”: ACK received with error due to sequence number.
“'not add' flag”: ACK received with error due to a notification stating that the
specified IPsec session could not be added.
“'not del' flag”: ACK received with error due to a notification stating that the spe-
cified IPsec session could not be deleted.
176 IPsec
Teldat SA 3 Monitoring
- “Time since last conn retry”: Time passed since the last reconnection attempt
with the backup task.
- “Local [address/port]”: Source address/port the backup task used in the con-
nection.
- “Inactivity timeout”: Maximum time permitted without receiving data from the
backup task.
- “Keepalive period”: Time waited for the next main task action.
• Block 4: “List of local tunnels”. Lists the IPsec sessions controlled by the main task.
“Queue full counter”: Number of times that the queue is full when trying to enter
an element.
Example:
IPsec 177
3 Monitoring Teldat SA
Number of tunnels: 0
Monitored IP 01: 192.168.3.225
For more information about the meaning of each field, please refer to the LIST ALL monitoring command example in
this section.
Displays information on those IPsec sessions controlled by the main task and matching the specified filter.
Example:
No filter has been specified in this example, so all IPsec sessions controlled by the main task are shown.
Example:
In this example, we have specified a filter (10.10.1.7). Now you will be able to see all IPsec sessions controlled by
the main task and matching the specified filter - in this case 5 out of 650 sessions.
For further information about the meaning of each field, please refer to the LIST ALL monitoring command example
in this section.
Example:
178 IPsec
Teldat SA 3 Monitoring
For further information about the meaning of each field, please refer to the LIST ALL monitoring command example
in this section.
Example:
For further information about the meaning of each field, please refer to the LIST ALL monitoring command example
in this section.
Displays information on those IPsec sessions controlled by backup tasks and matching the specified filter.
Example:
We have not specified a filter in this example so all IPsec sessions controlled by the backup tasks are shown.
Example:
In this example, we have specified a filter (10.10.1.7). Now you will be able to see all IPsec sessions controlled by
the backup tasks and matching the specified filter - in this case 5 out of 650 sessions in a single backup task.
For further information about the meaning of each field, please refer to the LIST ALL monitoring command example
in this section.
3.2.4.2 clear
Resets IPsecFT monitoring counters. The options for this command are as follows:
IPsec 179
3 Monitoring Teldat SA
Command Function
? (HELP) Lists the commands or their available options.
ALL Resets any counters that allow resetting.
BACKUP-TASK Resets any backup task counters that allow resetting.
MAIN-TASK Resets any main task counters that allow resetting.
QUEUE Resets IPsecFT message queue counters that allow resetting.
Example:
Resets any of the IPsecFT monitoring backup task counters that allow resetting.
Example:
Resets any of the IPsecFT monitoring main task counters that allow resetting.
Example:
Resets any of the IPsecFT monitoring message queue counters that allow resetting.
Example:
*p 3
Console Operator
+pro ip
-- IP protocol monitor --
IP+ipsec
180 IPsec
Teldat SA 3 Monitoring
3.2.5.1 List
Example:
3.2.5.2 Rekey
Example:
The message causing the error was sent by device 172.24.51.57, whose HDR has the "0" identifier. This means that
the error occurred in the first phase of the negotiation.
Another very important thing to know is who commenced negotiations (i.e., who was the initiator).
Origin
This message occurs because the device hasn't been able to match the packet
that should trigger the negotiation with an IPsec ACL entry.
Solution
Mask.
IPsec 181
3 Monitoring Teldat SA
Protocol.
If you still cannot find the source of the error, take a look at the LIST ACCESS-LIST ENTRIES monitoring command
output to see if the hits in the corresponding entry are increasing.
Initiator: 172.24.51.57
Origin
This message occurs because device 172.24.78.15 was unable to accept any of
the proposals from device 172.24.51.57. In this negotiation phase, the proposals
received are compared with those configured in the ISAKMP template.
Solution
Group: 1 or 2.
Initiator: 172.24.51.57
Origin
This message occurs because device 172.24.78.15 was unable able to decode
the encrypted message sent by device 172.24.51.57. In fact, if we take a closer
look at the erroneous message, we can see that it contains several strange
parameters: unknown identifier (where the protocol and port are different to the
ones that were configured) followed by an unknown header, .hdr 75 0.
Solution
Check the pre-shared key and the ip_address – key, hostname-key associ-
ations.
182 IPsec
Teldat SA 3 Monitoring
Initiator: 172.24.51.57
Origin
This message occurs because device 172.24.78.15 was unable to accept any of
the proposals from device 172.24.51.57. In this negotiation phase, the proposals
received are compared with the ones configured in the dynamic template associ-
ated with the corresponding ACL.
Solution
Initiator: 172.24.51.57
Origin
This message occurs because device 172.24.78.15 has not been able to accept
the client identifier from device 172.24.51.57 (id addr4 prot=0 port=0)(#
0xac183339) (id addr4 prot=16 port=0)(# 0xac184e0f). In this negotiation phase,
the proposals of the identifiers received are compared with the ones configured
in the ACL.
Solution
IPsec 183
3 Monitoring Teldat SA
Mask.
Protocol.
Initiator: 172.24.78.15
Origin
This message occurs because device 172.24.78.15 was unable to find the CA in
the corresponding ISAKMP template.
Solution
Initiator: 172.24.51.57
Origin
This message occurs because device 172.24.78.15 was unable to find the CA
configured on the certificate it received (CERTREG 9, in the above example),
among the CAs configured on the ISAKMP templates.
Solution
Check the ISAKMP template parameters and compare them to the monitoring
command output.
184 IPsec
Teldat SA 3 Monitoring
Initiator: 172.24.51.57
Origin
Solution
Use the monitoring command to check that the received certificate is correct:
Validity period.
Initiator: 172.24.51.57
Origin
Solution
Check that a certificate has been loaded for the required CA.
If the required CA matches the one that was sent, run a list of the ISAKMP tem-
plates and check the result. This should tell us what the problem is.
If the required CA does not match the one that was sent, consult the CERTIFIC-
ATES menu to see whether a certificate from this CA has been loaded.
IPsec 185