Escenario DMZ in ASA 5505

Unanswered Question
Jan 10th, 2010

Hi,

I have a Cisco ASA 5505 w/ Security Plus license.

Three VLANs are configured:  Outside, Inside, DMZ,

But these features are not operational

- Internet access for hosts on the Inside network
- DMZ access to webserver for hosts on the Inside network
- DMZ access to webserver for hosts on the Internet
- Inside access for webserver in the DMZ to database server on the Inside network.


this is my conf.


ASA Version 8.2(1)
!
hostname FWVALLS01
domain-name vacex.local
enable password 8Ry2YjIyt7RRXU24 encrypted
passwd 2KFQnbNIdI.2KYOU encrypted
names
!
interface Vlan1
nameif inside
security-level 100
ip address 192.168.1.1 255.255.255.0
!
interface Vlan2
nameif outside
security-level 0
ip address 80.34.171.134 255.255.255.0
!
interface Vlan3
nameif DMZ
security-level 50
ip address 10.30.30.1 255.255.255.0
!
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
switchport access vlan 3

!
ftp mode passive
clock timezone CEST 1
clock summer-time CEDT recurring last Sun Mar 2:00 last Sun Oct 3:00
dns server-group DefaultDNS
domain-name vacex.local
same-security-traffic permit inter-interface
access-list outside_access_in extended permit tcp any eq www host 80.32.78.244 eq www
access-list dmz_acces_in extended permit tcp host 10.10.10.30 host 192.168.1.2 eq 1433
access-list DMZ_access_in extended permit tcp host 192.168.1.2 host 10.30.30.30 eq www
access-list DMZ_access_in extended permit icmp 192.168.1.0 255.255.255.0 interface DMZ
access-list inside_access_in extended permit ip any any
access-list inside_access_in extended permit icmp 192.168.1.0 255.255.255.0 interface DMZ
access-list inside_access_in extended permit tcp host 192.168.1.2 interface DMZ eq 3389
access-list inside_access_out extended permit ip any any
access-list inside_access_out extended permit icmp interface DMZ 192.168.1.0 255.255.255.0
access-list inside_access_out extended permit tcp interface DMZ host 192.168.1.2 eq 3389
access-list inside_access_out extended permit tcp interface DMZ host 192.168.1.2
access-list DMZ_access_out extended permit icmp interface DMZ 192.168.1.0 255.255.255.0
access-list DMZ_access_out extended permit tcp host 192.168.1.2 interface DMZ
access-list inside_in extended permit ip 192.168.1.0 255.255.255.0 any
access-list inside_in extended permit icmp any any
access-list inside_in extended permit tcp any any eq 3389
access-list outside_in extended permit tcp any host 80.32.78.244 eq www
access-list outside_in extended deny ip any any log
access-list DMZ_in extended permit tcp host 10.30.30.30 any eq www
access-list DMZ_in extended permit tcp host 10.30.30.30 any eq https
access-list DMZ_in extended permit icmp host 10.30.30.30 any
access-list DMZ_in extended permit udp host 10.30.30.30 any eq domain
access-list DMZ_in extended permit icmp any any
access-list DMZ_in extended permit icmp any any echo-reply
access-list DMZ_in extended permit icmp any any unreachable
access-list DMZ_in extended permit icmp any any time-exceeded
access-list DMZ_in extended permit icmp any any source-quench
access-list DMZ_out extended permit icmp any any echo-reply
access-list DMZ_OUT extended permit tcp any any eq www
access-list DMZ_OUT extended permit tcp any any eq https
access-list DMZ_OUT extended permit icmp any any
pager lines 24
logging enable
logging asdm informational
mtu outside 1500
mtu inside 1500
mtu DMZ 1500
no failover
icmp unreachable rate-limit 1 burst-size 1
icmp permit any inside
icmp permit any DMZ
no asdm history enable
arp timeout 14400
nat-control
global (outside) 1 interface
global (DMZ) 1 interface
nat (inside) 1 0.0.0.0 0.0.0.0
static (DMZ,outside) tcp interface www 10.30.30.30 www netmask 255.255.255.255
static (inside,DMZ) 192.168.1.0 192.168.1.0 netmask 255.255.255.0
static (DMZ,inside) 10.30.30.30 80.32.78.244 netmask 255.255.255.255
access-group outside_in in interface outside
access-group inside_in in interface inside
access-group DMZ_in in interface DMZ
route outside 0.0.0.0 0.0.0.0 80.32.78.0 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
dynamic-access-policy-record DfltAccessPolicy
http server enable
http 192.168.1.0 255.255.255.0 inside
no snmp-server location
no snmp-server contact
snmp-server enable traps snmp authentication linkup linkdown coldstart
crypto ipsec security-association lifetime seconds 28800
crypto ipsec security-association lifetime kilobytes 4608000
client-update enable
telnet timeout 5
ssh timeout 5
console timeout 0
dhcpd auto_config outside
!
dhcpd address 192.168.1.5-192.168.1.254 inside
dhcpd enable inside
!

threat-detection basic-threat
threat-detection statistics access-list
no threat-detection statistics tcp-intercept
webvpn
!
class-map inspection_default
match default-inspection-traffic
!
!
policy-map type inspect dns preset_dns_map
parameters
  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
!
service-policy global_policy global
prompt hostname context
Cryptochecksum:de513e48a343002a73081b3934d2ec9a
: end
no asdm history enable

Thanks

I have this problem too.
0 votes
  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
Loading.
vilaxmi Sun, 01/10/2010 - 18:31

-Internet access for hosts on the Inside network
- DMZ access to webserver for hosts on the Inside network
- DMZ access to webserver for hosts on the Internet
- Inside access for webserver in the DMZ to database server on the Inside network.


For your 1st requirement , all you need is :

nat (inside) 1 0.0.0.0 0.0.0.0
global (outside) 1 interface
route outside 0.0.0.0 0.0.0.0 80.32.78.0 1

For your 2nd requirement, you need :

global (DMZ) 1 interface

For your 3rd requirement, you would need to remove :

access-list outside_access_in extended permit tcp any eq www host 80.32.78.244 eq www

and add:

access-list outside_access_in extended permit tcp any eq www host 10.30.30.30 eq www

About your 4th requirement,  I have some questions :

Do you have a database server on inside and a webserver on DMZ which needs to communicate to the inside server ?

Is it a SQL server ?

Thanks,

Vijaya

Dileep Sivadas ... Sun, 01/10/2010 - 21:51

1. Internet access for hosts on the Inside network

global (outside) 1 interface

nat (inside) 1 0.0.0.0 0.0.0.0

route outside 0.0.0.0 0.0.0.0 80.32.78.0 1

I have following questions

1.1. Is this default route is correct , can you able to ping internet IPs from your ASA.

1.2. Have you terminated your internet connection directly to ASA or using any router in between?

2. DMZ access to webserver for hosts on the Inside network

  global (DMZ) 1 interface

3. DMZ access to webserver for hosts on the Internet

Your config look like this

access-list outside_in extended permit tcp any host 80.32.78.244 eq www
access-list outside_in extended deny ip any any log

static (DMZ,outside) tcp interface www 10.30.30.30 www netmask 255.255.255.255

Here my suggestion is change SNAT to this

static (DMZ,outside) tcp 80.32.78.244 www 10.30.30.30 www netmask 255.255.255.255

4.Inside access for webserver in the DMZ to database server on the Inside network.

access-list DMZ_in extended permit tcp host 10.10.10.30 host 192.168.1.2 eq 1433

access-list nonatdmz extended permit host 10.10.10.30 host 192.168.1.2

nat(DMZ) 0 access-list nonnatdmz inbound

Note that you have configured many ACL but only below three are applied

access-group outside_in in interface outside
access-group inside_in in interface inside
access-group DMZ_in in interface DMZ

Dileep

GBixaconill Tue, 01/12/2010 - 08:38

Hi Dileep!!

After the changes still doesn't work...

- Internet access for hosts on the Inside network  (yes ok)
- DMZ access to webserver for hosts on the Inside network  (no)
- DMZ access to webserver for hosts on the Internet  (no)
- Inside access for webserver in the DMZ to database server on the Inside network.  (no)

This is my new configuration.....

hostname FWVALLS01
domain-name vacex.local
enable password 8Ry2YjIyt7RRXU24 encrypted
passwd 2KFQnbNIdI.2KYOU encrypted
names
!
interface Vlan1
nameif inside
security-level 100
ip address 192.168.1.1 255.255.255.0
!
interface Vlan2
nameif outside
security-level 0
ip address 80.32.78.244 255.255.255.0
!
interface Vlan3
nameif DMZ
security-level 50
ip address 10.30.30.1 255.255.255.0
!
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
switchport access vlan 3
!
ftp mode passive
clock timezone CEST 1
clock summer-time CEDT recurring last Sun Mar 2:00 last Sun Oct 3:00
dns server-group DefaultDNS
domain-name vacex.local
same-security-traffic permit inter-interface
access-list outside_access_in extended permit tcp any eq www host 80.32.78.244 eq www
access-list dmz_acces_in extended permit tcp host 10.30.30.30 host 192.168.1.2 eq 1433
access-list DMZ_access_in extended permit tcp host 192.168.1.2 host 10.30.30.30 eq www
access-list DMZ_access_in extended permit icmp 192.168.1.0 255.255.255.0 interface DMZ
access-list inside_access_in extended permit ip any any
access-list inside_access_in extended permit icmp 192.168.1.0 255.255.255.0 interface DMZ
access-list inside_access_in extended permit tcp host 192.168.1.2 interface DMZ eq 3389
access-list nonatdmz extended permit tcp host 10.30.30.30 host 192.168.1.2
access-list inside_nat0_outbound extended permit ip any 192.168.2.48 255.255.255.240
access-list inside_nat0_outbound extended permit ip 10.30.30.0 255.255.255.0 192.168.2.48 255.255.255.240
access-list inside_nat0_outbound extended permit ip 192.168.1.0 255.255.255.0 192.168.2.48 255.255.255.240
access-list ciscovacex_splitTunnelAcl standard permit 192.168.1.0 255.255.255.0
access-list ciscovacex_splitTunnelAcl standard permit 10.30.30.0 255.255.255.0
access-list DMZ_nat0_outbound extended permit ip 192.168.1.0 255.255.255.0 192.168.2.48 255.255.255.240
access-list DMZ_nat0_outbound extended permit ip 10.30.30.0 255.255.255.0 192.168.2.48 255.255.255.240
access-list VpnValls_splitTunnelAcl standard permit 10.30.30.0 255.255.255.0
access-list VpnValls_splitTunnelAcl standard permit 192.168.1.0 255.255.255.0
pager lines 24
logging enable
logging asdm informational
mtu inside 1500
mtu outside 1500
mtu DMZ 1500
ip local pool Remots 192.168.2.50-192.168.2.60 mask 255.255.255.0
no failover
icmp unreachable rate-limit 1 burst-size 1
icmp permit any inside
icmp permit any DMZ
no asdm history enable
arp timeout 14400
global (outside) 1 interface
global (DMZ) 1 interface
nat (inside) 0 access-list inside_nat0_outbound
nat (inside) 1 0.0.0.0 0.0.0.0
static (inside,DMZ) 192.168.1.0 192.168.1.0 netmask 255.255.255.0
static (DMZ,inside) 10.30.30.30 80.32.78.244 netmask 255.255.255.255
static (DMZ,outside) 80.32.78.244 10.30.30.30 netmask 255.255.255.255
access-group inside_access_in in interface inside
access-group outside_access_in in interface outside
access-group DMZ_access_in in interface DMZ
route outside 0.0.0.0 0.0.0.0 80.32.78.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
dynamic-access-policy-record DfltAccessPolicy
http server enable
http 192.168.1.0 255.255.255.0 inside
no snmp-server location
no snmp-server contact
snmp-server enable traps snmp authentication linkup linkdown coldstart
crypto ipsec transform-set ESP-AES-256-MD5 esp-aes-256 esp-md5-hmac
crypto ipsec transform-set ESP-DES-SHA esp-des esp-sha-hmac
crypto ipsec transform-set ESP-DES-MD5 esp-des esp-md5-hmac
crypto ipsec transform-set ESP-AES-192-MD5 esp-aes-192 esp-md5-hmac
crypto ipsec transform-set ESP-3DES-MD5 esp-3des esp-md5-hmac
crypto ipsec transform-set ESP-AES-256-SHA esp-aes-256 esp-sha-hmac
crypto ipsec transform-set ESP-AES-128-SHA esp-aes esp-sha-hmac
crypto ipsec transform-set ESP-AES-192-SHA esp-aes-192 esp-sha-hmac
crypto ipsec transform-set ESP-AES-128-MD5 esp-aes esp-md5-hmac
crypto ipsec transform-set ESP-3DES-SHA esp-3des esp-sha-hmac
crypto ipsec security-association lifetime seconds 28800
crypto ipsec security-association lifetime kilobytes 4608000
crypto dynamic-map SYSTEM_DEFAULT_CRYPTO_MAP 65535 set pfs group1
crypto dynamic-map SYSTEM_DEFAULT_CRYPTO_MAP 65535 set transform-set ESP-AES-128-SHA ESP-AES-128-MD5 ESP-AES-192-SHA ESP-AES-192-MD5 ESP-AES-256-SHA ESP-AES-256-MD5 ESP-3DES-SHA ESP-3DES-MD5 ESP-DES-SHA ESP-DES-MD5
crypto map outside_map 65535 ipsec-isakmp dynamic SYSTEM_DEFAULT_CRYPTO_MAP
crypto map outside_map interface outside
crypto isakmp enable outside
crypto isakmp policy 10
authentication pre-share
encryption 3des
hash sha
group 2
lifetime 86400
client-update enable
telnet timeout 5
ssh timeout 5
console timeout 0
dhcpd auto_config outside
!

threat-detection basic-threat
threat-detection statistics access-list
no threat-detection statistics tcp-intercept
webvpn
group-policy VpnValls internal
group-policy VpnValls attributes
dns-server value 192.168.1.2
vpn-tunnel-protocol IPSec
split-tunnel-policy tunnelspecified
split-tunnel-network-list value VpnValls_splitTunnelAcl
default-domain value vacex.local
username Genis password Y2cht9meRnr1GXAt encrypted
username Genis attributes
vpn-group-policy VpnValls
username ExtraVpn password 9.oWwtEER8Ga34Dq encrypted privilege 0
username ExtraVpn attributes
vpn-group-policy VpnValls
tunnel-group VpnValls type remote-access
tunnel-group VpnValls general-attributes
address-pool Remots
default-group-policy VpnValls
tunnel-group VpnValls ipsec-attributes
pre-shared-key *
!
class-map inspection_default
match default-inspection-traffic
!
!
policy-map type inspect dns preset_dns_map
parameters
  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
!
service-policy global_policy global
prompt hostname context
Cryptochecksum:a37d50c5ddfbf3a8b9e5b38d1c79fd0e
: end
no asdm history enable

Thanks!!!!

Dileep Sivadas ... Tue, 01/12/2010 - 22:12

1.DMZ access to webserver for hosts on the Internet

access-list outside_access_in extended permit tcp any eq www host 80.32.78.244 eq www

change to

access-list outside_access_in extended permit tcp any host 80.32.78.244 eq www

2. DMZ access to webserver for hosts on Inside network

Remove Following SNAT

static (DMZ,inside) 10.30.30.30 80.32.78.244 netmask 255.255.255.255

static (inside,DMZ) 192.168.1.0 192.168.1.0 netmask 255.255.255.0

beacuse you have already configured dynamic NAT for this.

And also make sure that DMZ and internal server's default gateway set to respective firewall's interface IPs.

3. Inside access for webserver in DMZ to database server on the Inside network

access-list dmz_acces_in extended permit tcp host 10.30.30.30 host 192.168.1.2 eq 1433

add this entry in DMZ_access_in access-list

access-list DMZ_access_in extended permit tcp host 10.30.30.30 host 192.168.1.2 eq 1433

access-list nonatdmz extended permit tcp host 10.30.30.30 host 192.168.1.2

nat (DMZ) 0 access-list nonnatdmz inbound

Also enable nat-control

check this URL for NAT Configuration http://www.cisco.com/en/US/docs/security/asa/asa82/configuration/guide/nat_overview.html

Dileep

GBixaconill Wed, 01/13/2010 - 04:30

ok,.

DMZ access to webserver for hosts on Inside network  is working properly

1.DMZ access to webserver for hosts on the Internet still doesn't work

global (outside) 1 interface

nat (inside) 1 0.0.0.0 0.0.0.0

SNAT

/* Style Definitions */ table.MsoNormalTable {mso-style-name:"Tabla normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin;}

static (DMZ,outside) tcp 80.32.78.244 www 10.30.30.30 www netmask 255.255.255.255

/* Style Definitions */ table.MsoNormalTable {mso-style-name:"Tabla normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin;} ACL             

access-list outside_access_in extended permit tcp any host 80.32.78.244 eq www

access-group outside_access_in in interface outside

3. Inside access for webserver in DMZ to database server on the Inside network

This command nat (DMZ) 0 access-list nonatdmz inbound

reports de following error INVALID HOSTNAME??¿¿

Thank you very much!!

Actions

This Discussion