08-31-2013 06:41 AM
My legacy IPSEC and IKEv2 clients are able to connect and browse the internet via hairpinning through the ASA. However, the clients are unable to connect to the 10.0.0.0 network hosts attached to the inside interface. I added an ACL (VPN-LAN-access) and applied to a vpn-filter but I am wondering if it might be a NAT issue instead?
!
ASA Version 8.4(5)
!
hostname ciscoasa
enable password encrypted
passwd encrypted
names
!
interface Ethernet0/0
switchport access vlan 2
!
interface Ethernet0/1
!
interface Ethernet0/2
!
interface Ethernet0/3
!
interface Ethernet0/4
!
interface Ethernet0/5
!
interface Ethernet0/6
!
interface Ethernet0/7
!
interface Vlan1
nameif inside
security-level 100
ip address 10.0.0.1 255.255.255.0
!
interface Vlan2
nameif outside
security-level 0
ip address dhcp setroute
!
boot system disk0:/asa845-k8.bin
ftp mode passive
same-security-traffic permit intra-interface
object network obj_any
subnet 0.0.0.0 0.0.0.0
object network VPN_NETWORK
subnet 192.168.1.0 255.255.255.192
object network LAN
subnet 10.0.0.0 255.255.255.0
access-list dynamic-filter_acl extended permit ip any any
access-list VPN-LAN-access extended permit ip 192.168.1.0 255.255.255.0 10.0.0.0 255.255.255.0
pager lines 24
logging enable
logging asdm informational
mtu inside 1500
mtu outside 1500
ip local pool VPN-DHCP-POOL 192.168.1.10-192.168.1.50
icmp unreachable rate-limit 1 burst-size 1
asdm image disk0:/asdm-702.bin
no asdm history enable
arp timeout 14400
no arp permit-nonconnected
nat (inside,outside) source static any any destination static VPN_NETWORK VPN_NETWORK no-proxy-arp route-lookup
!
object network obj_any
nat (inside,outside) dynamic interface
!
nat (outside,outside) after-auto source dynamic VPN_NETWORK interface
timeout xlate 3:00:00
timeout pat-xlate 0:00:30
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02
timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp-pat 0:05:00
timeout sip 0:30:00 sip_media 0:02:00 sip-invite 0:03:00 sip-disconnect 0:02:00
timeout sip-provisional-media 0:02:00 uauth 0:05:00 absolute
timeout tcp-proxy-reassembly 0:01:00
timeout floating-conn 0:00:00
dynamic-access-policy-record DfltAccessPolicy
user-identity default-domain LOCAL
aaa authentication http console LOCAL
aaa authentication ssh console LOCAL
http server enable 4443
http 10.0.0.0 255.255.255.0 inside
no snmp-server location
no snmp-server contact
snmp-server enable traps snmp authentication linkup linkdown coldstart warmstart
no sysopt connection permit-vpn
crypto ipsec ikev1 transform-set ESP-AES-256-SHA esp-aes-256 esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-AES-128-SHA esp-aes esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-AES-192-SHA esp-aes-192 esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-AES-128-MD5 esp-aes esp-md5-hmac
crypto ipsec ikev1 transform-set ESP-AES-192-MD5 esp-aes-192 esp-md5-hmac
crypto ipsec ikev1 transform-set ESP-AES-256-MD5 esp-aes-256 esp-md5-hmac
crypto ipsec ikev1 transform-set ESP-AES-128-SHA-TRANS esp-aes esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-AES-128-SHA-TRANS mode transport
crypto ipsec ikev1 transform-set ESP-AES-128-MD5-TRANS esp-aes esp-md5-hmac
crypto ipsec ikev1 transform-set ESP-AES-128-MD5-TRANS mode transport
crypto ipsec ikev1 transform-set ESP-AES-192-SHA-TRANS esp-aes-192 esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-AES-192-SHA-TRANS mode transport
crypto ipsec ikev1 transform-set ESP-AES-192-MD5-TRANS esp-aes-192 esp-md5-hmac
crypto ipsec ikev1 transform-set ESP-AES-192-MD5-TRANS mode transport
crypto ipsec ikev1 transform-set ESP-AES-256-SHA-TRANS esp-aes-256 esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-AES-256-SHA-TRANS mode transport
crypto ipsec ikev1 transform-set ESP-AES-256-MD5-TRANS esp-aes-256 esp-md5-hmac
crypto ipsec ikev1 transform-set ESP-AES-256-MD5-TRANS mode transport
crypto ipsec ikev1 transform-set ESP-3DES-SHA esp-3des esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-3DES-MD5 esp-3des esp-md5-hmac
crypto ipsec ikev1 transform-set ESP-3DES-SHA-TRANS esp-3des esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-3DES-SHA-TRANS mode transport
crypto ipsec ikev1 transform-set ESP-3DES-MD5-TRANS esp-3des esp-md5-hmac
crypto ipsec ikev1 transform-set ESP-3DES-MD5-TRANS mode transport
crypto ipsec ikev1 transform-set ESP-DES-SHA esp-des esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-DES-MD5 esp-des esp-md5-hmac
crypto ipsec ikev1 transform-set ESP-DES-SHA-TRANS esp-des esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-DES-SHA-TRANS mode transport
crypto ipsec ikev1 transform-set ESP-DES-MD5-TRANS esp-des esp-md5-hmac
crypto ipsec ikev1 transform-set ESP-DES-MD5-TRANS mode transport
crypto ipsec ikev2 ipsec-proposal DES
protocol esp encryption des
protocol esp integrity sha-1 md5
crypto ipsec ikev2 ipsec-proposal 3DES
protocol esp encryption 3des
protocol esp integrity sha-1 md5
crypto ipsec ikev2 ipsec-proposal AES
protocol esp encryption aes
protocol esp integrity sha-1 md5
crypto ipsec ikev2 ipsec-proposal AES192
protocol esp encryption aes-192
protocol esp integrity sha-1 md5
crypto ipsec ikev2 ipsec-proposal AES256
protocol esp encryption aes-256
protocol esp integrity sha-1 md5
crypto dynamic-map SYSTEM_DEFAULT_CRYPTO_MAP 65535 set pfs group1
crypto dynamic-map SYSTEM_DEFAULT_CRYPTO_MAP 65535 set ikev1 transform-set ESP-AES-256-SHA
crypto dynamic-map SYSTEM_DEFAULT_CRYPTO_MAP 65535 set ikev2 ipsec-proposal AES256 AES192 AES 3DES DES
crypto map outside_map 65535 ipsec-isakmp dynamic SYSTEM_DEFAULT_CRYPTO_MAP
crypto map outside_map interface outside
crypto map inside_map 65535 ipsec-isakmp dynamic SYSTEM_DEFAULT_CRYPTO_MAP
crypto map inside_map interface inside
crypto ca trustpoint TrustPoint0
enrollment self
subject-name CN=ciscoasa
crl configure
crypto ca certificate chain TrustPoint0
certificate xyz
quit
crypto ikev2 policy 1
encryption aes-256
integrity sha
group 5 2
prf sha
lifetime seconds 86400
crypto ikev2 policy 10
encryption aes-192
integrity sha
group 5 2
prf sha
lifetime seconds 86400
crypto ikev2 policy 20
encryption aes
integrity sha
group 5 2
prf sha
lifetime seconds 86400
crypto ikev2 policy 30
encryption 3des
integrity sha
group 5 2
prf sha
lifetime seconds 86400
crypto ikev2 policy 40
encryption des
integrity sha
group 5 2
prf sha
lifetime seconds 86400
crypto ikev2 enable outside client-services port 443
crypto ikev2 remote-access trustpoint TrustPoint0
crypto ikev1 enable outside
crypto ikev1 policy 1
authentication pre-share
encryption 3des
hash sha
group 2
lifetime 86400
telnet timeout 5
ssh 10.0.0.0 255.255.255.0 inside
ssh timeout 30
ssh version 2
ssh key-exchange group dh-group1-sha1
console timeout 0
dhcp-client client-id interface outside
dhcpd auto_config outside
!
dhcpd address 10.0.0.100-10.0.0.131 inside
dhcpd dns 8.8.8.8 8.8.4.4 interface inside
dhcpd option 3 ip 10.0.0.1 interface inside
dhcpd enable inside
!
threat-detection basic-threat
threat-detection statistics access-list
no threat-detection statistics tcp-intercept
dynamic-filter enable interface outside classify-list dynamic-filter_acl
dynamic-filter drop blacklist interface outside
ssl encryption 3des-sha1 des-sha1 rc4-md5 aes128-sha1 aes256-sha1
ssl trust-point TrustPoint0 outside
webvpn
enable outside
anyconnect image disk0:/anyconnect-win-3.1.04063-k9.pkg 1
anyconnect profiles IKEv2-VPN_client_profile disk0:/IKEv2-VPN_client_profile.xml
anyconnect enable
tunnel-group-list enable
group-policy EdgeAccess internal
group-policy EdgeAccess attributes
dns-server value 8.8.8.8 8.8.4.4
vpn-tunnel-protocol ikev1
group-policy DfltGrpPolicy attributes
vpn-tunnel-protocol ikev1 ikev2 ssl-clientless
group-policy GroupPolicy_IKEv2-VPN internal
group-policy GroupPolicy_IKEv2-VPN attributes
wins-server none
dns-server value 8.8.8.8
vpn-filter value VPN-LAN-access
vpn-tunnel-protocol ikev2 ssl-client
default-domain none
webvpn
anyconnect profiles value IKEv2-VPN_client_profile type user
group-policy GroupPolicy1 internal
group-policy GroupPolicy1 attributes
vpn-tunnel-protocol l2tp-ipsec
username atlas password xyz encrypted privilege 15
tunnel-group EdgeAccess type remote-access
tunnel-group EdgeAccess general-attributes
address-pool VPN-DHCP-POOL
default-group-policy EdgeAccess
tunnel-group xyz ipsec-attributes
ikev1 pre-shared-key xyz
tunnel-group IKEv2-VPN type remote-access
tunnel-group IKEv2-VPN general-attributes
address-pool VPN-DHCP-POOL
default-group-policy GroupPolicy_IKEv2-VPN
tunnel-group IKEv2-VPN webvpn-attributes
group-alias IKEv2-VPN enable
!
class-map inspection_default
match default-inspection-traffic
!
!
policy-map type inspect dns preset_dns_map
parameters
message-length maximum client auto
message-length maximum 512
policy-map global_policy
class inspection_default
inspect dns preset_dns_map
inspect ftp
inspect h323 h225
inspect h323 ras
inspect ip-options
inspect netbios
inspect rsh
inspect rtsp
inspect skinny
inspect esmtp
inspect sqlnet
inspect sunrpc
inspect tftp
inspect sip
inspect xdmcp
!
service-policy global_policy global
privilege show level 0 mode configure command filter
privilege cmd level 0 mode configure command filter
privilege cmd level 0 mode config-group-webvpn command filter
privilege cmd level 0 mode config-username-webvpn command filter
prompt hostname context
no call-home reporting anonymous
: end
08-31-2013 06:52 AM
Hi,
Not really sure if the NAT is the reason it aint working. Though I usually configure it a different way for just the specific networks
nat (inside,outside) source static LAN LAN destination static VPN_NETWORK VPN_NETWORK
You could always check with "packet-tracer" while a host is connected with VPN Client what it says.
packet-tracer input outside tcp
Could atleast see if any ASA configuration/rule drop the traffic.
Ofcourse it might be possible that there is some problem with the actual host on either the LAN or the one using VPN Client.
You dont need an VPN Filter ACL on the VPN configuration unless you specifically want to limit some traffic. The default setting on the ASA is that it will allow all connections coming from a VPN connection. If you wanted to disable that setting you would have to issue "no sysopt connection permit-vpn" after which you would need to allow/deny traffic in the ACL attached to the "outside" interface in the direction "in".
- Jouni
08-31-2013 08:07 AM
Thanks for the quick response.
I made a few changes per you comments. Adjusted the NAT statement, enabled the sysopt option although I would prefer to keep it off and use ACL's as I *think* that would be more secure?, and disable the vpn-filter for the ACL. Hairpinning still works but still unable to get to the internal clients per the trace below.
sysopt connection permit-vpn
no vpn-filter value VPN-LAN-access
no nat (inside,outside) source static any any destination static VPN_NETWORK VPN_NETWORK no-proxy-arp route-lookup
nat (inside,outside) source static LAN LAN destination static VPN_NETWORK VPN_NETWORK no-proxy-arp route-lookup
Per the output below, the question is how do I prevent the traffic from being dropped in phase 3?
ciscoasa(config)# packet-tracer input outside tcp 192.168.1.11 10000 10.0.0.10$ Phase: 1 Type: ROUTE-LOOKUP Subtype: input Result: ALLOW Config: Additional Information: in 10.0.0.0 255.255.255.0 inside Phase: 2 Type: UN-NAT Subtype: static Result: ALLOW Config: nat (inside,outside) source static LAN LAN destination static VPN_NETWORK VPN_NETWORK no-proxy-arp route-lookup Additional Information: NAT divert to egress interface inside Untranslate 10.0.0.101/3389 to 10.0.0.101/3389 Phase: 3 Type: ACCESS-LIST Subtype: Result: DROP Config: Implicit Rule Additional Information: Result: input-interface: outside input-status: up input-line-status: up output-interface: inside output-status: up output-line-status: up Action: drop Drop-reason: (acl-drop) Flow is denied by configured rule
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide