We help IT Professionals succeed at work.

Cisco Router CBAC & PPTP

MrPrince
MrPrince asked
on
Medium Priority
1,198 Views
Last Modified: 2012-05-07
Hi,

Im having problems configuring CBAC on a Cisco 871 router -  12.4(22)T. Im getting traffic in and out of the box but certain protocols dont seem to work, specifically PPTP and ICMP. Below are the pertinent parts of my config:

ip inspect name Global_IE tcp
ip inspect name Global_IE udp
ip inspect name Global_IE icmp
ip inspect name Global_IE pptp
!
interface Vlan10
ip address 172.16.0.1 255.255.255.252
 ip access-group Vestibule_Outbound in
 no ip redirects
 no ip unreachables
 no ip proxy-arp
 ip nbar protocol-discovery
 ip flow ingress
 ip flow egress
 ip nat inside
 ip virtual-reassembly
!
interface FastEthernet0
 switchport access vlan 10
 duplex full
 speed 100
!
interface FastEthernet4
 ip address dhcp
 ip access-group Inbound in
 no ip redirects
 no ip unreachables
 no ip proxy-arp
 ip nbar protocol-discovery
 ip flow ingress
 ip flow egress
 ip nat outside
 ip ips Global_IPS in
 ip ips Global_IPS out
 ip inspect Global_IE out
 ip virtual-reassembly
 duplex auto
 speed auto
!
ip access-list extended Vestibule_Outbound
 permit ip any any
 deny   ip any any log
!
ip access-list extended Inbound
remark Permit DHCP
 permit udp any eq bootps any eq bootpc
deny   ip any any log
!


My understanding of the above configuration is that:

1. PPTP traffic  is allowed by the Vestibule_Outbound ACL inbound to VLAN 10
2. The traffic leaves the fa4 interface since no Outbound ACL is applied.
3. CBAC opens a temporary ACE at the top of the Inbound ACL to allow the return traffic (GRE)

If I let SDM do the configuration I end up with an ACE of permit tcp any any eq gre on the Inbound ACL.  The same for ICMP & NTP. Although this works doesnt this simply open up a hole in the network? Isnt CBAC supposed to allow return traffic dynamically rather than having a specific ACE? Im having the same problem with ICMP too.

Can anyone explain the processing rules that CBAC uses? Ive read conflicting statements that CBAC:

1. First checks the traffic against an ACL then inspects it, if configured to, and finally amends the corresponding ACL to allow the return traffic.

2. Inspects the traffic first then amends the corresponding ACL to allow the return traffic.

Im confused. What is the correct way to accomplish this?

Thanks.
Comment
Watch Question

CERTIFIED EXPERT

Commented:
That's the way it is supposed to work, but CBAC has problems with connectionless protocols like UDP, and GRE (in my experience).

Allowing GRE in is not much of a security risk, because by definition, it is an encapsulation protocol.  Something on the inside of your network has to decapsulate it.

I would use the GRE keyword, though:  permit gre any any

Similarly, I've had to add ACL entries similar to:

deny icmp any any redirect
deny icmp any any timestamp-request
deny icmp any any echo
permit icmp any any

(Alternately, you can add permit statements for echo-reply, time exceeded, administratively prohibited, etc.)
CERTIFIED EXPERT

Commented:
I'll also note that PPTP first uses a TCP connection on port 1723 and then the GRE encapsulation.  The "ip inspect name <name> pptp" might focus primarily on the TCP session.
CERTIFIED EXPERT

Commented:
Final note: I"ve had to put explicit access list entries in for DNS and SNTP as well.

Author

Commented:
Oh Ok, so it's working as well as to be expected then. In the end i added the ACE for the GRE tunnel, i know the IP is genuine so it's not a massive security risk. Can you recommend any good protocol timeouts by any chance? I don't know the best practises on those.

Cheers.
CERTIFIED EXPERT
Commented:
Unlock this solution and get a sample of our free trial.
(No credit card required)
UNLOCK SOLUTION

Author

Commented:
Thanks.
Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a sample view!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.