Last updated at Wed, 13 Dec 2017 19:55:50 GMT
Synopsis
I recently started the blog under the tag IPsec. Anyone having background in this regard would know that this topic is too elaborate to be covered with a single article. I will be doing a series of articles to touch as many details as I can. But first things first: you need to know about the basics of IPsec. I would like to share with you a way to configure an IPsec tunnel under main mode.
Configuration
Please note in advance the following is a precise configuration for when we need to use pre-shared keys as the default mechanisms. For the authenticating peers with main mode and different authentication and encryption algorithms. We will be having a question at the end of article about data transfer just to brush up the networking spark in you.
For establishing an IPsec tunnel between two sites, we have two major steps, i.e. IKE phase I and II which were described in our previous article. A link to the article is given in the reference section.
Setting up of IKE Phase I
In IKE phase I, we have to define an ‘IKE proposal, IKE policy and IKE gateway’.
IKE Proposal
IKE proposal consists of the authentication method. This is the same proposal where Diffie Hellmann aka dh-group
is defined. Here I am using authentication algorithm md5
where as encryption algorithm 3des-cbc
is applied. The lifetime for the tunnels is configured to be 86400
seconds. To attain these settings, the following set of commands are run on CLI to complete our proposal.
set security ike proposal IKE-PRO authentication-method pre-shared-keys
set security ike proposal IKE-PRO dh-group group2
set security ike proposal IKE-PRO authentication-algorithm md5
set security ike proposal IKE-PRO encryption-algorithm 3des-cbc
set security ike proposal IKE-PRO lifetime-seconds 86400
IKE Policy
As already discussed before we have two modes of IPsec, main and aggressive. For now, we will be focusing on configuration using main mode. Now, we need to attach the proposal defined in previous step in following manner, and define any keyword. We use keyisF@izan for our pre-shared key as follows;
set security ike policy IKE-POL-PR mode main
set security ike policy IKE-POL-PR proposals IKE-PRO
set security ike policy IKE-POL-PR pre-shared-key ascii-text <keyisF@izan>
IKE Gateway
IKE Gateway is the last step in configuration of IKE phase I. As the name suggests it is used for setting the gateway policy for IPsec traffic. Now we are going to define the IKE gateway IP address from where the traffic is to be sent to (the remote end) and physical interface.
set security ike gateway IKE-U8-GW ike-policy IKE-POL-PR
set security ike gateway IKE-U8-GW address 10.152.9.150
set security ike gateway IKE-U8-GW external-interface reth3.0
IKE Phase II
After completing the phase I, we have to now exchange parameters for our IPsec tunnel. This is done in IKE phase II, we have to define an ‘IPsec proposal, IPsec policy and IPsec VPN’.
IPsec Proposal
In IPsec proposal, we define a proposal named IPSEC-PRO
and apply esp
as its protocol method. Just the way in phase I, we define authentication and encryption algorithms here. For this part, hmac-md5-96
and 3des-cbc
are applied as follows.
set security ipsec proposal IPSEC-PRO protocol esp
set security ipsec proposal IPSEC-PRO authentication-algorithm hmac-md5-96
set security ipsec proposal IPSEC-PRO encryption-algorithm 3des-cbc
IPsec Policy
In this portion, we set to define a policy in which we attach IPsec proposal from previous step like this.
set security ipsec policy IPSEC-POL proposals IPSEC-PRO
IPsec VPN
Finally, we will bind a respective logical/tunnel interface which is the actual interface for handling this VPN. A gateway policy is also defined and in the last part, we want our tunnel to get up and running immediately.
set security ipsec vpn IPSEC-08-VPN bind-interface st0.8
set security ipsec vpn IPSEC-08-VPN ike gateway IKE-U8-GW
set security ipsec vpn IPSEC-08-VPN ike ipsec-policy IPSEC-POL
set security ipsec vpn IPSEC-08-VPN establish-tunnels immediately
So guys, this pretty much wraps it up. We have successfully established an IPsec tunnel having the specifications mentioned in the configuration.
Food for thought
With this piece of configuration, you can get a maximum of 20 Mbps traffic on each site, what parameter(s) you choose to change in order to increase or decrease this threshold? We would love to hear back from you. Thanks for reading and stay tune for more configuration examples of IPsec.