0

I have the exact same problem as described in this question: Cisco ASA 5505 DMZ Setup Issue

However, the top-voted answer by Weaver did not solve my issue, so I ask the community again. I followed his answer very closely, but the packet-trace test failed on the RPF-check:

packet-tracer input Outside tcp 1.1.1.1 12345 10.0.0.2 22

Phase: 6 Type: NAT Subtype: rpf-check Result: DROP Config: object network host-10.0.0.2-tcp22 nat (Lab,Outside) static interface service tcp ssh ssh Additional Information:

Result: input-interface: Outside input-status: up input-line-status: up output-interface: Lab output-status: up output-line-status: up Action: drop Drop-reason: (acl-drop) Flow is denied by configured rule

How do I pass the RPF-check? I've read many Cisco docs about configuring NAT, but none of them solve my problem here.

#sh run
: Saved
:
ASA Version 9.1(3)
!
hostname [omitted]
domain-name [omitted]
enable password [omitted] encrypted
passwd [omitted] encrypted
names
!
interface Ethernet0/0
!
interface Ethernet0/1
 switchport access vlan 2
!
interface Ethernet0/2
 switchport access vlan 2
!
interface Ethernet0/3
 switchport access vlan 3
!
interface Ethernet0/4
 switchport access vlan 3
!
interface Ethernet0/5
 switchport access vlan 3
!
interface Ethernet0/6
 switchport access vlan 3
!
interface Ethernet0/7
 switchport access vlan 3
!
interface Vlan1
 description OUTSIDE
 mac-address [omitted]
 nameif Outside
 security-level 0
 ip address dhcp setroute
!
interface Vlan2
 description HOME LAN
 nameif Home
 security-level 100
 ip address 192.168.1.1 255.255.255.0
!
interface Vlan3
 description LAB
 no forward interface Vlan2
 nameif Lab
 security-level 50
 ip address 10.0.0.1 255.255.255.0
!
ftp mode passive
clock timezone [omitted]
dns domain-lookup Outside
dns server-group DefaultDNS
 name-server 8.8.8.8
 name-server 8.8.4.4
 domain-name sylvarant
same-security-traffic permit inter-interface
same-security-traffic permit intra-interface
object network OBJ_INTERNAL_ALL
 subnet 0.0.0.0 0.0.0.0
object network Home-subnet
 subnet 192.168.1.0 255.255.255.0
 description PENDING - For use as Home LAN obj when Internet is available to modify
object network lab-subnet
 subnet 10.0.0.0 255.255.255.0
object network external-ip
 host [omitted]
object service SSH
 service tcp source eq ssh
object network host-10.0.0.2
 host 10.0.0.2
 description Lab Splunk server
object network host-10.0.0.2-tcp22
 host 10.0.0.2
 description Lab Splunk server SSH
object-group service svcgrp-10.0.0.2-tcp tcp
 port-object eq ssh
access-list Home_in extended permit icmp any any echo log
access-list outside_access_in extended permit tcp any object host-10.0.0.2 object-group svcgrp-10.0.0.2-tcp
access-list Lab_access_in extended deny ip any any
pager lines 24
logging enable
logging timestamp
logging asdm informational
mtu Outside 1500
mtu Home 1500
mtu Lab 1500
icmp unreachable rate-limit 1 burst-size 1
no asdm history enable
arp timeout 14400
no arp permit-nonconnected
nat (Home,Outside) source dynamic any interface description PAT for HOME network
!
object network lab-subnet
 nat (Lab,Outside) dynamic interface
object network host-10.0.0.2-tcp22
 nat (Lab,Outside) static interface service tcp ssh ssh
access-group outside_access_in in interface Outside
route Home 192.168.0.0 255.255.255.0 192.168.1.2 1
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 ssh console LOCAL
http server enable
http 192.168.1.0 255.255.255.0 Home
no snmp-server location
no snmp-server contact
snmp-server enable traps snmp authentication linkup linkdown coldstart warmstart
crypto ipsec security-association pmtu-aging infinite
crypto ca trustpool policy
telnet timeout 5
ssh 192.168.1.0 255.255.255.0 Home
ssh timeout 60
ssh version 2
ssh key-exchange group dh-group1-sha1
console timeout 0

dhcpd address 192.168.1.2-192.168.1.33 Home
!
threat-detection basic-threat
threat-detection statistics access-list
no threat-detection statistics tcp-intercept
ntp server 129.6.15.30 source Outside prefer
username [omitted] password [omitted] encrypted
!
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 rsh
  inspect rtsp
  inspect esmtp
  inspect sqlnet
  inspect skinny
  inspect sunrpc
  inspect xdmcp
  inspect sip
  inspect netbios
  inspect tftp
  inspect ip-options
  inspect icmp
!
service-policy global_policy global
prompt hostname context
no call-home reporting anonymous
password encryption aes
Cryptochecksum:bbf2ff9baaf19bb46d6adec26d8db9c6
: end

packet-tracer input Outside tcp 1.1.1.1 12345 [My public IP] 22:

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: NP Identity Ifc
output-status: up
output-line-status: up
Action: drop
Drop-reason: (acl-drop) Flow is denied by configured rule

sh nat:

#sh nat
Manual NAT Policies (Section 1)
1 (Home) to (Outside) source dynamic any interface   description PAT for HOME network
    translate_hits = 6922, untranslate_hits = 2

Auto NAT Policies (Section 2)
1 (Lab) to (Outside) source static host-10.0.0.2-tcp22 interface   service tcp ssh ssh
    translate_hits = 0, untranslate_hits = 0
2 (Lab) to (Outside) source dynamic lab-subnet interface
    translate_hits = 0, untranslate_hits = 0
Willman
  • 155
  • 1
  • 10

1 Answers1

0

Ah the good old asa 5500 series ,treacherous little gizmo.

From what i saw your acl is a bit off

access-list Home_in extended permit icmp any any echo log
access-list outside_access_in extended permit tcp any object host-10.0.0.2 object-group svcgrp-10.0.0.2-tcp
access-list Lab_access_in extended deny ip any any ***

seems like you didn't configure the inbound rule for it on the Lab 10.0.0.0.x interface

try adding the following rule the Lab acl:

access-list lab_access_in extended permit tcp ssh  host-10.0.0.2 

or via asdm (basically permit on Lab acl any host to access 10.0.0.2 on port 22)

hertitu
  • 337
  • 1
  • 6
  • Oh so I have to explicitly allow inbound on the Outside **AND** Lab interfaces? All the guides I read only said to allow on the Outside.... I believe this fixes it since it passed the packet-trace command, but I just want to make 100% before I mark as the answer. I'll have my friend attempt to SSH into my network when he gets home. – Willman Jan 21 '17 at 19:46
  • I think you may have misunderstood the question - if the aim is to allow SSH from the outside to a host on the Lab network then that does not require an ACL on the Lab interface. – hertitu Jan 21 '17 at 21:06
  • I'm afk right now, but I ran that packet-trace command earlier and everything passed after I added the suggested ACL on the Lab iface. – Willman Jan 21 '17 at 22:16
  • OP please try and let us know – Devops_Dave Jan 23 '17 at 13:31
  • @DNDN - See my updated original post with the packet-trace and sh nat outputs – Willman Jan 25 '17 at 18:42
  • 1.you are using now a random nat port-u didn't configure nat for 2.your nat config is wrong configure manually configure manual nat via asdm to translate any address directed to outside interface at port 22 to translate to 10.0.0.2 keeping the same dest address and port. 3.post sh run and new trace using 22 port outbound origin ip – Devops_Dave Jan 28 '17 at 20:58