01-28-2013 11:28 AM - edited 03-11-2019 05:53 PM
Hello Everyone
I have just setup a new ASA 5525 and am configuring DMZ. As a test i have been able to successfully publish web and rdp from outside to inside and from outside to DMZ. My internal clients can successfullly communicate with DMZ hosts. Where I am running into problems is allowing the DMZ host access to internal resources. Whenever i apply an access list the DMZ interface it then blocks access to the outside interface because of the implicit deny. What i want is to be able give DMZ hosts access to internal resouces but also be able to allow then access to the internet for basic http https.
Question is how do i give hosts granular access to internal resouces from the DMZ without killing their acces to the outside.
Currently from outside i can access both DMZ host and internal host on port 80 and 3389. From DMZ i can access internal host on port 80 but cannot access external resouces on outside interface.
Thanks
Here is my config
hostname SFN-ASA1
domain-name ia-global.com
enable password xxxxxxxxx encrypted
passwd xxxxxxxxxxxx encrypted
names
!
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address x.x.x.34 255.255.255.224
!
interface GigabitEthernet0/1
nameif Inside
security-level 100
ip address 10.2.0.3 255.255.255.248
!
interface GigabitEthernet0/2
nameif dmz
security-level 50
ip address 172.16.29.1 255.255.255.0
!
interface GigabitEthernet0/3
shutdown
no nameif
no security-level
no ip address
!
interface GigabitEthernet0/4
shutdown
no nameif
no security-level
no ip address
!
interface GigabitEthernet0/5
shutdown
no nameif
no security-level
no ip address
!
interface GigabitEthernet0/6
shutdown
no nameif
no security-level
no ip address
!
interface GigabitEthernet0/7
shutdown
no nameif
no security-level
no ip address
!
interface Management0/0
shutdown
nameif management
security-level 100
ip address 10.2.3.20 255.255.255.0
management-only
!
ftp mode passive
clock timezone PST -8
clock summer-time PDT recurring
dns domain-lookup Inside
dns server-group DefaultDNS
name-server 10.2.3.21
name-server 10.2.3.22
domain-name ia-global.com
object network test_rdp
host 10.2.0.4
object network obj_dmz_network
subnet 172.16.29.0 255.255.255.0
object network obj_dmz_server
host 172.16.29.5
object network objN_default_network
subnet 0.0.0.0 0.0.0.0
object service objS_rdp
service tcp source eq 3389 destination eq 3389
object network objN_inside
subnet 10.0.0.0 255.0.0.0
object-group service objS_outbound_protocols
description This group is used for all outbound protocols
service-object tcp destination eq www
service-object tcp destination eq https
service-object tcp destination eq ftp
service-object tcp destination eq ssh
service-object tcp destination eq 3389
service-object udp destination eq ntp
service-object icmp
access-list dmz_access extended permit tcp any object test_rdp eq www
access-list dmz_access extended permit tcp any object test_rdp eq 3389
access-list public_access extended permit tcp any object obj_dmz_server eq 3389
access-list public_access extended permit tcp any object test_rdp eq www
access-list public_access extended permit tcp any object obj_dmz_server eq www
pager lines 24
logging enable
logging asdm informational
mtu outside 1500
mtu Inside 1500
mtu management 1500
mtu dmz 1500
no failover
icmp unreachable rate-limit 1 burst-size 1
icmp permit any outside
icmp permit any Inside
icmp permit any dmz
no asdm history enable
arp timeout 14400
!
object network test_rdp
nat (Inside,outside) static 64.47.176.56
object network obj_dmz_network
nat (Inside,dmz) static obj_dmz_network
object network obj_dmz_server
nat (dmz,outside) static 64.47.176.58
object network objN_inside
nat (Inside,outside) dynamic interface
access-group public_access in interface outside
access-group dmz_access in interface dmz
route outside 0.0.0.0 0.0.0.0 x.x.x.33 1
route Inside 10.0.0.0 255.0.0.0 10.2.0.1 1
route Inside 192.168.0.0 255.255.0.0 10.2.0.1 1
timeout xlate 3:00:00
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 10.0.0.0 255.0.0.0 Inside
http 192.168.0.0 255.255.0.0 Inside
http 192.168.0.0 255.255.0.0 management
http 10.2.3.0 255.255.255.0 Inside
http 10.2.3.0 255.255.255.0 management
no snmp-server location
no snmp-server contact
snmp-server enable traps snmp authentication linkup linkdown coldstart warmstart
telnet 10.0.0.0 255.0.0.0 Inside
telnet timeout 30
ssh 10.0.0.0 255.0.0.0 Inside
ssh timeout 30
console timeout 0
management-access Inside
threat-detection basic-threat
threat-detection statistics access-list
no threat-detection statistics tcp-intercept
ntp server 10.2.3.21
webvpn
username xxxxxx password xxxxxxxxxxx encrypted privilege 15
!
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
Cryptochecksum:b115172d02c6c1286138d410287aaf87
: end
01-28-2013 05:28 PM
The following NAT is incorrect:
object network obj_dmz_network
nat (Inside,dmz) static obj_dmz_network
It should have been:
object network obj_10.0.0.0
subnet 10.0.0.0 255.0.0.0
nat (Inside,dmz) static obj_10.0.0.0
Then to provide granular access to the inside, you would need to place all the specific lines at the top of the ACL, then deny to 10.0.0.0, and finally permit any as follows:
access-list dmz_access permit tcp 172.16.29.0 255.255.255.0 10.0.0.0 255.0.0.0 eq 80
access-list dmz_access permit tcp 172.16.29.0 255.255.255.0 10.0.0.0 255.0.0.0 eq 443
...
...
access-list dmz_access deny ip 172.16.29.0 255.255.255.0 10.0.0.0 255.0.0.0
access-list dmz_access permit tcp 172.16.29.0 255.255.255.0 any eq 80
access-list dmz_access permit tcp 172.16.29.0 255.255.255.0 any eq 443
access-list dmz_access permit udp 172.16.29.0 255.255.255.0 any eq 53
Hope that helps.
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