ActionScripting in Flash MX

5.5 IP Security architecture (IPSec)

The technologies discussed so far offer the capability to tunnel protocols and user data but do not inherently provide privacy. To satisfy the requirements for scalable, flexible, interoperable VPNs, a major initiative by the IETF Security Working Group has produced a standard called the IP Security Architecture (IPSec). IPSec provides a generic mechanism for the secure transfer of IP-based application data in both public and private networks. IPSec is designed to enable client and gateway products from many vendors to interoperate freely and therefore creates true end-to-end security across multivendor networks such as the Internet. Specifically, as follows:

It is important to understand that IPSec is limited to tunneling IP applications only; for tunneling non-IP applications it should be used in conjunction with a multiprotocol encapsulation technique such as GRE or L2TP Having said that, protocols such as NetWare IPX, AppleTalk OSI, and Banyan VINES will happily run over IP instead of their native Layer 3 stacks (e.g., OSI transport class 4 uses IP protocol number 29; VINES uses IP protocol number 83), and where sites are running pure IP at Layer 3, these protocols can be readily tunneled over IPSec.

One of the major strengths of IPSec is that it was developed through open consensus over several years via the IETF (in contrast to technologies such as PPTP, which required several subsequent fixes after security flaws were discovered). IPSec offers flexible building blocks from which robust, secure VPNs can be constructed. Most leading VPN vendors already support IPSec. IPSec is typically implemented on hosts (PCs, servers, etc.) or security gateways (routers, firewalls, or VPN devices), in one of three formats, as follows:

This section provides a concise technical review of IPSec and its operations. For further information on IPSec and its components, the interested reader is referred to [54–60].

5.5.1 IPSec concepts and terminology

The IPSec framework comprises three main components, responsible for authentication, privacy, and key management, as follows:

Fundamental to IPSec is the concept of a Security Association (SA). Both AH and ESP make use of SAs, and a major function of IKE is the establishment and maintenance of SAs. We will discuss each of the above components in turn, after a brief discussion of SAs.

Security Associations (SA)

A Security Association (SA) is an abstraction denoting a secure logical connection between two or more IPSec entities. An SA describes the agreed-upon security services that peer entities will use in order to communicate securely (i.e., an SA is the embodiment of the negotiated security policy between two devices, incorporating the cryptographic algorithms used, keying information, and identifying the participating parties).

There are two basic types of SA: the IKE SA (used for key and SA management) and general-purpose IPSec SAs (used for data transmission). The IKE SA is bidirectional and must be established before any data transfer is possible. IPSec SAs are unidirectional (simplex). A full IPSec VPN, therefore, comprises at least three SAs: an IKE SA plus two general-purpose SAs for bidirectional data communication (i.e., an inbound and outbound SA from the SA initiator's perspective). An SA can be used either for AH or ESP and may be in either transport or tunnel mode. Figure 5.14 illustrates the basic SA concepts. In Figure 5.14, we see that each VPN comprises an IKE SA plus inbound and outbound (relative to the initiator) general-purpose SAs for data transmission. The allocation of SPIs is arbitrary; however, it is recommended that new SPIs should differ from those recently used.

Figure 5.14: IKE and IPSec Security Associations (SAs) for two VPNs.

Each SA is identified by a 32-bit number sitting directly above the IP layer called the Security Parameter Index (SPI). The SPI is normally allocated dynamically but is fixed for the duration of an SA. The SPI cannot be encrypted, since it is required to identify the associated SA. A fully qualified (i.e., unique) SA is identified by the combination of three elements:

<Security Parameter Index, IP Destination Address, Security Protocol>

Security Association Components

An SA protects traffic within it via either AH or ESP, but not both. For a connection that requires protection from both AH and ESP a pair of SAs must be configured in each direction as defined in section 5.4.4.

IPSec databases

In order to keep track of SA connection states and the policies in place, an IPSec implementation maintains two databases, as follows:

Tunnel and transport mode

IPSec defines two modes of operation for security associations, transport and tunnel mode, as follows:

Figure 5.15 illustrates SAs in both transport and tunnel mode.

Figure 5.15: SAs are defined in either transport mode or tunnel mode.

The advantages of transport mode are that it adds only a few bytes of overhead per datagram and has a lower processing overhead. Furthermore, since the IP header is passed in the clear, this enables service providers to offer special processing (such as quality of service) at quite a granular level (based on information in the header such as source and destination address, ToS bits, etc.). By contrast, tunneling obfuscates such details, exposing only gateway-to-gateway information. Even so, anything above Layer 3 is likely to be encrypted, so application-specific flow differentiation is not possible. One significant drawback of transport mode is that the IP header is open to abuse by malicious users (i.e., traffic or topology analysis can be performed in preparation for a subsequent denial-of-service or spoof attack). Another disadvantage is that the so-called mutable fields within the IP header are not authenticated. Tunnel mode offers complete protection of the encapsulated IP datagram; a malicious user only can determine the tunnel end points and the encapsulation protocol.

Tunnel mode also offers the possibility of using private (i.e., unregistered) addressing schemes and can be used instead of NAT in certain scenarios. A major advantage of tunnel mode is that it enables intermediate network devices (such as a router or firewall) to act as a kind of IPSec proxy for hosts that are not yet IPSec enabled. For example, two sites could be connected using an IPSec VPN via IPSec-enabled routers. Clients and servers on those sites have no IPSec capability; however, IPSec processing can be applied transparently on specified traffic between sites based on access control lists (i.e., the end systems are completely unaware of the gateways—no explicit connection must be made). This enables existing IP networks to reap the benefits of secure VPNs with minimal disruption.

Reference [54] states that a host must support both transport and tunnel mode, whereas a security gateway is required to support only tunnel mode. For all transit traffic security gateways must use tunnel mode; however, gateways frequently use transport mode also (e.g., transport mode may also be used for gateway-to-gateway management traffic such as SNMP or ICMP, where the gateway is effectively operating as a host). It is also common practice for host-to-host connections to be in tunnel mode.

5.5.2 Authentication Header (AH)

The IP Authentication Header (AH) provides integrity and data origin authentication for IP datagrams and also offers optional protection against session replay. Note that replay protection must be implemented by any IPSec-compliant system (regardless of whether it is used or not). Data integrity is assured by a checksum (ICV) generated by a message authentication code (e.g., MD5 or SHA-1); data origin authentication is assured by including a secret shared key in the data to be authenticated; and replay protection is provided by use of a sequence number field within the AH header. In the IPSec vocabulary, these three distinct functions are collectively referred to as authentication.

AH services are connectionless, operating on a per-packet basis. AH authenticates all of the IP datagram, with the exception of a small number of mutable fields in the IP header. These fields are typically modified in transit and cannot be predicted by the receiver. The mutable fields include those shown in the following chart:

IP version 4

IP version 6

Type of Service (TOS)

Class

Flags and fragment offset

Flow label

Time to Live (TTL)

Hop limit

Header checksum

 

If these fields absolutely must be protected, then IPSec tunnel mode must be used. In tunnel mode the original IP header and associated data are encapsulated inside another IP header, so only the outer IP wrapper changes in transit. The payload of the IP packet (including the original IP header) is considered immutable and can, therefore, be fully protected by AH (or indeed ESP authentication).

AH processing is only performed on unfragmented IP packets. An IP packet that already has AH applied may be fragmented by intermediate routers but must be reassembled at the destination before passing up to the AH process, or else it will be discarded by the AH process. This prevents overlapping fragment attacks (such as teardrop). Packets that fail authentication are discarded and are not delivered to upper layers to reduce the chance of denial-of-service attacks. (See Figure 5.16.) Note that the patchy authentication of the IP header with AH indicates that certain fields are not authenticated (i.e., so-called mutable fields that are likely to change in transit).

Figure 5.16: The shaded area represents the scope of authentication for IPSec transport and tunnel mode using either the AH or the ESP protocol.

AH header format

AH is identified by protocol number 51, assigned by the IANA. AH can be used either in transport mode or in tunnel mode. In transport mode AH is inserted immediately following the original IP header. If the datagram already has IPSec header(s), then the AH header is inserted before these. In tunnel mode AH is applied to the encapsulating IP header and payload, so the original IP header is fully protected. Note that early IPSec implementations may not support AH in tunnel mode. AH is an integral part of IPv6. In an IPv6 environment, AH is considered a mandatory end-to-end pay-load and it appears after hop-by-hop, routing, and fragmentation extension headers. The destination options, extension headers may appear either before or after the AH header. The current AH header format and operation are described in [55]. The header format is illustrated in Figure 5.17.

Figure 5.17: AH header format.

AH Header Fields

5.5.3 Encapsulating Security Payload (ESP)

The IP Encapsulating Security Payload (ESP) provides data confidentiality using encryption. ESP can also optionally provide data origin authentication, connectionless (per packet) integrity, and replay protection. When ESP is used to provide authentication functions, it uses the same algorithms used by the AH protocol; however, the scope differs (as illustrated in Figure 5.18). The required services are configurable at SA establishment, with the following restrictions:

Figure 5.18: ESP header and trailer.

Encryption is selectable regardless of the other service options. It is strongly recommended that if encryption is enabled, authentication should also be enabled. If encryption alone is enabled, then a malicious user could forge packets and mount cryptanalytic attacks. This is practically impossible when integrity check and authentication are enabled. Although authentication and encryption are optional, at least one of them must be enabled; otherwise, it makes no sense to use ESP at all. As with AH, ESP processing is applied only to unfragmented IP packets. If both encryption and authentication are selected, the receiver first authenticates the packet. If authentication fails, the packet is discarded to avoid unnecessary processing and reduce the risk of a denial-of-service attack.

The cryptographic algorithms implemented in IPSec are called transforms. For example, the DES algorithm used in ESP is called the ESP DES-CBC transform [62]. IPSec defines the interfaces into the Public Key Infrastructure (PKI) but does not explicitly specify which PKI; it defines two competing standards: Simple Key Management for Internet Protocol (SKIP) and Internet Security Association Key Management Protocol (ISAKMP). Both are so-called authenticated Diffie-Helman Key Exchange Algorithms (D-H KEAs). Typically, the authentication of the D-H public key material is provided by X.509 certificates, and, therefore, SKIP and ISAKMP do not define the full scope of a PKI and require an interface into an external certificate request-generation technology (such as provided by [18–21]).

ESP packet format

ESP is identified by protocol number 50, assigned by the IANA. The current ESP packet format is described in [56]. The format of the ESP packet is more complicated than that of the AH packet. Actually there is not only an ESP header but also an ESP trailer and ESP authentication data. The payload is encapsulated between the header and the trailer, hence the name of the protocol.

ESP Header Fields

Since both ESP and AH provide authentication, one might question why ESP authentication does not cover the IP header, doing away with the need for AH altogether. There are several reasons for this, including the following:

As with AH, ESP can be used in two ways: transport mode and tunnel mode. In transport mode the original IP datagram is taken and the ESP header is inserted immediately after the IP header. If the datagram already has IPSec header(s), then the ESP header is inserted before any of those. The ESP trailer and the optional authentication data are appended to the payload. ESP in transport mode provides neither authentication nor encryption for the IP header. This is a disadvantage, since false packets might be delivered for ESP processing. In tunnel mode ESP offers complete protection if both encryption and authentication are selected, since the original IP datagram becomes the payload data for the new ESP packet (only the encapsulating IP header is not protected). As with AH, ESP is an integral part of IPv6. In an IPv6 environment, ESP is considered an end-to-end payload and it appears after hop-by-hop, routing, and fragmentation extension headers. The destination option extension headers could appear either before or after the AH header.

5.5.4 Combining IPSec protocols

IP packets transmitted over an individual SA are protected either by AH or ESP but not both. Where the security policy requires a combination of services for a particular traffic flow, it is necessary to employ multiple SAs. The term SA bundle refers to a sequence of SAs through which traffic must be processed in order to satisfy the security policy. The order of the sequence is defined by the policy. Note that the SAs that comprise a bundle may terminate at different end points (e.g., one SA may extend between a mobile host and a security gateway and a second, nested SA may extend to a host behind the gateway). The use of SA bundles means that AH and ESP may be applied alone, in combination with the other, or even nested within another instance. With these combinations, authentication and/or encryption can be provided between a pair of communicating hosts, between a pair of communicating firewalls, or between a host and a firewall. Given the two modes of each protocol, there are a number of possible combinations. Fortunately, only a few combinations make sense. Reference [55] describes the mandatory combinations that must be supported by each IPSec implementation. Other combinations may also be supported, but this could affect interoperability.

SA bundles

As indicated previously, if AH and ESP are required in combination, then multiple SAs must be established in each direction. This group of SAs is referred to as an SA bundle. There are two models for SA bundle creation, as follows:

If this were not complicated enough, both transport and nested bundles can be combined. For example, an IP packet with transport adjacency IPSec headers can be sent through nested tunnels. When designing an IPSec VPN, however, it is recommended that you limit the number of times IPSec processing is applied to avoid overburdening the gateways and limiting scalability (this will depend somewhat on the vendor equipment architecture selected). Two stages are sufficient for most applications; it is unlikely that further processing beyond three stages has any real benefit. Note that in order to create an SA bundle in which SAs have different end-points, at least one level of tunneling must be applied (transport adjacency does not allow for multiple source-destination addresses, because only one IP header is present).

The general principle of the combined use is that IPSec processing upon packet reception should start with authentication followed by decryption. Using this principle, the sender first applies ESP and then AH to outbound traffic (in fact, this sequence is mandated for transport mode IPSec processing). A more subtle issue with combined SAs is whether ESP authentication should be enabled when AH authentication is in use. In practice enabling ESP authentication makes sense only when the ESP SA extends beyond the AH SA (e.g., an encrypted transport connection between two hosts that traverses an AH tunnel between two gateways). In such cases it is strongly recommended that ESP authentication be enabled to avoid potential spoofing attacks. Finally, if packets are received where the origin is unknown, they should be discarded without performing decryption to avoid wasteful processing and reduce the likelihood of a denial-of-service attack.

5.5.5 The Internet Key Exchange Protocol (IKE)

Although the use of security associations is fundamental to IPSec, IPSec does not have an inherent mechanism for creating SAs. The IETF chose to divide functionality into two parts: IPSec provides packet-level processing, while the Internet Key Management Protocol (IKMP) negotiates SAs. After investigating several alternatives (including SKIP and Photuris), the IETF selected as the Internet Key Exchange (IKE) as its standard for configuring IPSec SAs [59]. IKE (previously referred to as ISAKMP/Oakley) supports automated negotiation of SAs and automated generation and refresh of cryptographic keys. Actually, the terms IKE and ISAKMP are not precisely interchangeable; IKE is a hybrid protocol incorporating features from the following:

In practice IKE creates an authenticated, secure tunnel between two entities and then negotiates the SA for IPSec. This process requires that the two entities authenticate themselves to each other and establish shared keys. Note that it is not necessary to use IKE, but manually configuring SAs is a laborious and maintenance-intensive process for anything other than a small lab network. In practice IKE will be used for most real-world applications to enable scalable, rapid deployment.

IKE defines a standardized framework to support negotiation of security associations, initial generation of all cryptographic keys, and subsequent refresh of these keys. Oakley is the mandatory key management protocol that is required to be used within the IKE framework. IKE supports automated negotiation of security associations and automated generation and refresh of cryptographic keys. The ability to perform these functions with little or no manual configuration of machines will be a critical element as a VPN grows in size. In addition, the IKE methods have been designed with the explicit goals of providing protection against several well-known exposures, as follows:

Operation

IKE requires that all information exchanges must be both encrypted and authenticated so that no one can eavesdrop on the keying material, and the keying material will be exchanged only among authenticated parties. This is required because the IKE procedures deal with initializing the keys, so they must be capable of running over links where no security can be assumed to exist. Hence, the IKE protocols use the most complex and processor-intensive operations in the IPSec protocol suite.

Peer entities must be authenticated to each other before the IKE SA can be established. IKE is very flexible in this regard, supporting multiple authentication methods. The two entities must agree on a common authentication protocol through a negotiation process. At the time of writing the following mechanisms are generally implemented:

Both digital signature and public key cryptography require the use of digital certificates to validate the public-private key mapping. IKE allows the certificate to be accessed independently (e.g., through DNSSEC) or by having the two devices explicitly exchange certificates as part of IKE.

The integrity of any cryptography-based solution depends more on keeping keys secret than it does on the strength of the cryptographic algorithms used. With IPSec both parties use a shared session key in order to encrypt the IKE tunnel, negotiated via Diffie-Helman. IPSec employs a set of very robust Oakley exchange protocols, using a two-phase approach, as illustrated in Figure 5.19. As we can see in Figure 5.19, in main mode, messages 1 and 2 negotiate the characteristics of the SAs. Messages 3 and 4 exchange nonces and also execute a D-H exchange to establish a master key (SKEYID). Messages 1 through 4 flow in the clear for the initial Phase 1 exchange, and they are unauthenticated. Messages 5 and 6 exchange the required information for mutually authenticating peer identities. The pay-loads of these messages are now protected by the encryption and keying material established with messages 1 through 4. Note that if aggressive mode is used instead of main mode, then only four messages are required, but the SA is not authenticated. Quick mode takes three or four messages only (depending upon whether the commit bit is set).

Figure 5.19: Phase 1 and Phase 2 IKE and IPSec SA negotiations.

Phase I—Initializing SAs with IKE

In Phase 1 IKE initially establish SAs and exchange keys between two systems that wish to communicate securely. Throughout this section we refer to the parties involved as Host 1 (H1, the initiator) and Host 2 (H2, the responder). This set of negotiations establishes a master secret from which all cryptographic keys will subsequently be derived for protecting data traffic. In the most general case, public key cryptography is used to establish an IKE SA between systems and to establish the keys that will be used to protect the IKE messages that will flow in the subsequent Phase 2 negotiations. Phase 1 is concerned only with establishing the protection suite for the IKE messages themselves, but it does not establish any SAs or keys for protecting user data.

The SAs that protect the IKE messages are set up during the Phase 1 exchanges. Since we are starting cold (no previous keys or SAs have been negotiated between H1 and H2), the Phase 1 exchanges will use the IKE identity protect exchange (also known as Oakley main mode).

Six messages are needed to complete the exchange, as illustrated in Figure 5.19. As an alternative to main mode IKE supports an option called aggressive mode, used for expedited SA connections (only three messages are exchanged, so this SA is unauthenticated). IKE also offers a solution when the remote host's IP address is not known in advance. IKE allows a remote host to identify itself by a permanent identifier, such as a name or an e-mail address. The IKE Phase 1 exchanges will then authenticate the remote host's permanent identity using public key cryptography, as follows:

Phase 2—Initializing protocol SAs for data transfer

Upon successful completion of Phase 1, H1 will initiate the Oakley Phase 2 message exchanges (known as Oakley quick mode) to define the IPSec SAs and keys used to protect IP datagrams exchanged between users. Phase 2 exchanges are relatively simple, since a secure channel has already been established; all that is required is to negotiate the SAs and keys that will protect user data exchanges. In practice Phase 2 negotiations occur much more frequently than Phase 1 negotiations; for example, a typical application of a Phase 2 negotiation is to refresh the cryptographic keys once every two to three minutes. All IKE Phase 2 payloads, except the IKE header itself, must be encrypted using the algorithm agreed upon during Phase 1 negotiations. Phase 2 authentication is achieved through the use of several cryptographically based hash functions. The input to the hash functions is derived partly from Phase 1 information (SKEYID) and partly from information exchanged in Phase 2. Authentication is based on certificates, but the Phase 2 process itself does not use certificates directly (it uses the SKEYI—a material from Phase 1, which was authenticated by certificates). Oakley quick mode comes in two forms, as follows:

Note that although PFS is highly desirable in cryptography, the specifications treat PFS as optional. They mandate that a system must be capable of handling the key exchange field when it is present in a quick mode message but do not require a system to include the field within the message.

Performance issues

IKE Phase 1 uses public key cryptographic operations, which are very processor intensive. Phase 2 uses the less processor-intensive symmetric key cryptography. However, a single IKE Phase 1 negotiation can protect several subsequent Phase 2 negotiations, so in practice Phase 1 negotiations are relatively infrequent. As a general rule one might expect Phase 1 negotiations to be executed once a day or maybe once a week for relatively stable fixed VPNs, with Phase 2 negotiations executed once every few minutes. Clearly, dial-up VPNs are required to execute Phase 1 for the duration of each call.

Using IKE with remote access

The key difference for remote access applications is the use of Oakley to identify the remote host by name, rather than by its dynamically assigned IP address. Once the host identity has been authenticated and the IP address binding is known, the rest of the procedures are identical to those described previously. As indicated, Phase I is only executed once, when the dial-up connection is first initiated. Assuming remote host H1 is dialing into a home network, the key points to note are the following:

IKE, ISAKMP, Oakley, and SKEME embody many important concepts, and we have skimmed somewhat over the details here. For further information about IKE, the interested reader is referred to [57–60, [64]].

5.5.6 Design considerations

IPSec is powerful and very flexible; it offers a wide variety of connectivity scenarios, including gateway to gateway, host to host, and host to gateway (where gateways could be firewalls, routers, dedicated VPN appliances, switches, and RAS/NAS boxes; and hosts could comprise servers, PCs, workstations, laptops, and possibly even PDAs and mobile phones in the future). IPSec's initial applications are to secure communications across public and private networks; however, it may also be used to secure communications across the LAN. Note that all IPv6 devices will incorporate IPSec as standard. Some of the key applications currently being deployed include the following:

IPSec presents excellent opportunities for service providers to provision secure managed services. For dedicated IVPNs the service provider would typically supply, configure, and manage the CPE devices used to construct a VPN. There are already a number of VPN appliances on the market targeted specifically for this application. Providers can bring this service to market very rapidly, since IPSec's transparency means that IVPNs can be deployed without any modification to the service provider infrastructure. Providers can offer basic QoS if they build their IVPN service over a premium IP service (possibly mapped over ATM or Frame Relay). It is also relatively straightforward to provide dial support using IPsec client software on the remote user PCs. Again, this requires no change to the provider infrastructure. We will now examine the most common deployment scenarios for IPSec.

Example design 1: simple end-to-end host security

As shown in Figure 5.20, two hosts are connected through the Internet (or an intranet) without any IPSec gateway between them (standard routing is employed). In this case the hosts may use ESP, AH, or a combination in either transport or tunnel mode. Figure 5.20 illustrates the concept with possible encapsulation formats.

Figure 5.20: Simple end-to-end security using a host IPSec stack only. Note that IPorg is the original IP header; IPtun is the new IP header created in IPSec tunnel mode.

Example design 2: basic VPN support

Figure 5.21 illustrates a very simple VPN created between two IPSec gateways, G1 and G2. In this case the hosts are not required to support IPSec. The gateways are required to support only tunnel mode, either with AH or ESP. This configuration would allow private network addresses to be handled over a public IP network such as the Internet. However, bear in mind that the addressing schemes need to be consistent (e.g., they should not overlap).

Figure 5.21: Basic VPN security using gateway IPSec stacks between two intranets. Note that IPorg is the original IP header; IPtun is the new IP header created in IPSec tunnel mode.

It may be desirable to configure tunnels between gateways that combine both AH and ESP support. Some products support this capability, with the encapsulation order configurable via the tunnel policy. Note that this is often termed combined tunneling and should not be confused with iterated tunneling (since the SA bundle comprising the tunnel has identical end points, it would be inefficient to perform iterated tunneling in this case). Instead, one IPSec protocol is applied in tunnel mode and the other in transport mode, which can be conceptually thought of as a combined AH-

ESP tunnel. An equivalent approach is to IP tunnel the original datagram and then apply transport adjacency IPSec processing to it. The result is that we have an outer IP header followed by the IPSec headers in the order set by the tunnel policy, and then the original IP packet.

Example design 3: end-to-end security with VPN support

Figure 5.22 illustrates a scenario that is a combination of Designs 1 and 2. Both hosts and gateways are required to support IPSec. The security gateways must be configurable to enable IPsec traffic (including ISAKMP traffic) to be passed for hosts behind them. In this situation one would normally configure the gateways to use AH in tunnel mode, protecting the host traffic, which is set to ESP transport mode.

Figure 5.22: Remote access.

Note that for enhanced security we could use a combined AH-ESP tunnel between the gateways (if supported), so that the ultimate destination addresses would be encrypted, the entire packet traversing the Internet would be authenticated, and the encapsulated data double encrypted. This is the only case where three stages of IPSec processing might be useful; however, the performance impact is likely to be considerable.

Example design 4: remote access

Figure 5.23 illustrates a secure design—remote access over the Internet to reach a server (H2) in an organization protected by a firewall (FW). The remote host would typically use a PPP dial-in connection to an ISP RAS. The ISP would then onward route using conventional routing. Between the remote host H1 and the firewall, only tunnel mode is required. Between the hosts either tunnel mode or transport mode can be used, with the same choices as in Design 1. A typical configuration would be to use AH in tunnel mode between H1 and FW and ESP in transport mode between H1 and H2 (note that early IPSec implementations that do not support AH in tunnel mode cannot implement this design). Note that in this case, the sender must apply the transport header before the tunnel header. Therefore, the management interface to the IPsec implementation must support configuration of the SPD and SAD to ensure this ordering of IPsec header application. It may also be possible to create a combined AH-ESP tunnel between the remote host, H1, and the gateway, FW. In this case H1 can access the whole intranet using just one SA bundle.

Figure 5.23: End-to-end security. Both gateways and hosts support IPSec.

While the combination of the IPSec protocols in theory leads to a large number of possibilities, in practice only a few (such as those presented previously) are commonly used. Use of other, optional combinations may adversely affect interoperability [54].

Категории