Configuring,Site-to-Site,VPN,B computer Configuring a Site-to-Site VPN Between Two Cisco Routers
----------------------------------------------------------Permission is granted for the below article to forward,reprint, distribute, use for ezine, newsletter, website,offer as free bonus or part of a product for sale as longas no changes a Gone are those times when the companies and the organisations didn't need a hi-tech system to handle them. Owing to the considerable increase in the business sector and thus, an enormous increase in the complexity of the organisational struc
Copyright (c) 2008 Don R. CrawleyA site-to-site virtual private network (VPN) allows you to maintain a secure "always-on" connection between two physically separate sites using an existing non-secure network such as the public Internet. Traffic between the two sites is transmitted over an encrypted tunnel to prevent snooping or other types of data attacks.This configuration requires an IOS software image that supports cryptography. The one used in the examples is c870-advipservicesk9-mz.124-15.T6.bin.There are several protocols used in creating the VPN including protocols used for a key exchange between the peers, those used to encrypt the tunnel, and hashing technologies which produce message digests.VPN ProtocolsIPSec: Internet Protocol Security (IPSec) is a suite of protocols that are used to secure IP communications. IPSec involves both key exchanges and tunnel encryption. You can think of IPSec as a framework for implementing security. When creating an IPSec VPN, you can choose from a variety of security technologies to implement the tunnel.ISAKMP (IKE): Internet Security Association and Key Management Protocol (ISAKMP) provides a means for authenticating the peers in a secure communication. It typically uses Internet Key Exchange (IKE), but other technologies can also be used. Public keys or a pre-shared key are used to authenticate the parties to the communication.MD5: Message-Digest algorithm 5 (MD5) is an often used, but partially insecure cryptographic hash function with a 128-bit hash value. A cryptographic hash function is a way of taking an arbitrary block of data and returning a fixed-size bit string, the hash value based on the original block of data. The hashing process is designed so that a change to the data will also change the hash value. The hash value is also called the message digest.SHA: Secure Hash Algorithm (SHA) is a set of cryptographic hash functions designed by the National Security Agency (NSA). The three SHA algorithms are structured differently and are distinguished as SHA-0,SHA-1, and SHA-2. SHA-1 is a commonly used hashing algorithm with a standard key length of 160 bits.ESP: Encapsulating Security Payload (ESP) is a member of the IPsec protocol suite that provides origin authenticity, integrity, and confidentiality protection of packets. ESP also supports encryption-only and authentication-only configurations, but using encryption without authentication is strongly discouraged because it is insecure. Unlike the other IPsec protocol, Authentication Header (AH), ESP does not protect the IP packet header. This difference makes ESP preferred for use in a Network Address Translation configuration. ESP operates directly on top of IP, using IP protocol number 50.DES: The Data Encryption Standard (DES) provides 56-bit encryption. It is no longer considered a secure protocol because its short key-length makes it vulnerable to brute-force attacks.3DES: Three DES was designed to overcome the limitations and weaknesses of DES by using three different 56-bit keys in a encrypting, decrypting, and re-encrypting operation. 3DES keys are 168 bits in length. When using 3DES, the data is first encrypted with one 56-bit key, then decrypted with a different 56-bit key, the output of which is then re-encrypted with a third 56-bit key.AES: The Advanced Encryption Standard (AES) was designed as a replacement for DES and 3DES. It is available in varying key lengths and is generally considered to be about six times faster than 3DES.HMAC: The Hashing Message Authentication Code (HMAC) is a type of message authentication code (MAC). HMAC is calculated using a specific algorithm involving a cryptographic hash function in combination with a secret key.Configuring a Site-to-Site VPNThe process of configuring a site-to-site VPN involves several steps:Phase One configuration involves configuring the key exchange. This process uses ISAKMP to identify the hashing algorithm and authentication method. It is also one of two places where you must identify the peer at the opposite end of the tunnel. In this example, we chose SHA as the hashing algorithm due to its more robust nature, including its 160-bit key. The key "vpnkey" must be identical on both ends of the tunnel. The address "192.168.16.105" is the outside interface of the router at the opposite end of the tunnel.Sample phase one configuration:tukwila(config)#crypto isakmp policy 10tukwila(config-isakmp)#hash shatukwila(config-isakmp)#authentication pre-sharetukwila(config-isakmp)#crypto isakmp key vpnkey address 192.168.16.105Phase Two configuration involves configuring the encrypted tunnel. In Phase Two configuration, you create and name a transform set which identifies the encrypting protocols used to create the secure tunnel. You must also create a crypto map in which you identify the peer at the opposite end of the tunnel, specify the transform-set to be used, and specify which access control list will identify permitted traffic flows. In this example, we chose AES due to its heightened security and enhanced performance. The statement "set peer 192.168.16.25" identifies the outside interface of the router at the opposite end of the tunnel. The statement "set transform-set vpnset" tells the router to use the parameters specified in the transform-set vpnset in this tunnel. The "match address 100" statement is used to associate the tunnel with access-list 100 which will be defined later.Sample phase two configuration:tukwila(config)#crypto ipsec transform-set vpnset esp-aes esp-sha-hmactukwila(cfg-crypto-trans)#exittukwila(config)#crypto map vpnset 10 ipsec-isakmp% NOTE: This new crypto map will remain disabled until a peerand a valid access list have been configured.tukwila(config-crypto-map)#set peer 192.168.16.105tukwila(config-crypto-map)#set transform-set vpnsettukwila(config-crypto-map)#match address 100The crypto map must be applied to your outside interface (in this example, interface FastEthernet 4):tukwila(config)#int f4tukwila(config-if)#crypto map vpnsetYou must create an access control list to explicitly allow traffic from the router's inside LAN across the tunnel to the other router's inside LAN (in this example, the router tukwila's inside LAN network address is 10.10.10.0/24 and the other router's inside LAN network address is 10.20.0.0/24):tukwila(config)#access-list 100 permit ip 10.10.10.0 0.0.0.255 10.20.0.0 0.0.0.255(For more information about the syntax of access-control lists, see my other articles on creating and managing Cisco router access-control lists.)You must also create a default gateway (also known as the "gateway of last resort"). In this example, the default gateway is at 192.168.16.1:tukwila(config)#ip route 0.0.0.0 0.0.0.0 192.168.16.1Verifying VPN ConnectionsThe following two commands can be used to verify VPN connections:Router#show crypto ipsec saThis command displays the settings used by the current Security Associations (SAs).Router#show crypto isakmp saThis command displays current IKE Security Associations.Troubleshooting VPN ConnectionsAfter confirming physical connectivity, audit both ends of the VPN connection to ensure they mirror each other.Use debugging to analyze VPN connection difficulties:Router#debug crypto isakmpThis command allows you to observe Phase 1 ISAKMP negotiations.Router#debug crypto ipsecThis command allows you to observe Phase 2 IPSec negotiations. Article Tags: Cryptographic Hash Function, Protocols Used, Cryptographic Hash, Hash Function, Hash Value, Hashing Algorithm, Network Address, Outside Interface, Transform-set Vpnset, Router's Inside
Configuring,Site-to-Site,VPN,B