Configure Cisco ASA 5505 for site-to-site VPN
We have the small version of Cisco ASA 5505 in our on-premises site so all configuration samples will be done for this model. If you are using firewall from another vendor you would need to search on Google on specific steps.
The following steps are based on this excellent article. Remember we are mostly system programmers and not actually network admins so do verify this setup with someone more network proficient.
First, we are telling Cisco ASA what is the subnet we have in Microsoft Azure.
object-group network vpn-azure-subnet
description vpn azure subnet
network-object 10.2.0.0 255.255.0.0
Now we are listing those local subnets that will take part in VPN connections.
object-group network vpn-local-subnet
description vpn local subnet
network-object 192.168.1.0 255.255.255.0
network-object 192.168.4.0 255.255.255.0
Next we create the access list that contains both object groups.
access-list acl-vpn-azure extended permit ip object-group vpn-local-subnet object-group vpn-azure-subnet
Traffic in VPN connection shall be excluded from NAT.
nat (inside,outside) 1 source static vpn-local-subnet vpn-local-subnet destination static vpn-azure-subnet vpn-azure-subnet no-proxy-arp route-lookup
Good, lets create the VPN parameters for our connection.
crypto ikev1 policy 5
authentication pre-share
encryption aes-256
hash sha
group 2
lifetime 28800
crypto ipsec ikev1 transform-set azure-transform esp-aes-256 esp-sha-hmac
crypto ipsec security-association lifetime seconds 3600
crypto ipsec security-association lifetime kilobytes 102400000
Specify the value of public IP address we created earlier and the shared key from the setup VPN connection page. Here we use the 207.46.13.105 as an example.
tunnel-group 207.46.13.105 type ipsec-l2l
tunnel-group 207.46.13.105 ipsec-attribute
ikev1 pre-shared-key 1SharedSuperSecret!
crypto map azure-crypto-map 1 match address acl-vpn-azure
crypto map azure-crypto-map 1 set peer 207.46.13.105
crypto map azure-crypto-map 1 set ikev1 transform-set azure-transform
crypto map azure-crypto-map interface outside
sysopt connection tcpmss 1350
sysopt connection preserve-vpn-flows
Finally enable the VPN connection on our Cisco ASA firewall.
crypto ikev1 enable outside