- Bevezetés
- előfeltételek
- követelmények
- felhasznált összetevők
- áttekintés
- célok
- hozzáférés-vezérlési lista áttekintés
- NAT áttekintés
- Configure
- első lépések
- topológia
- 1. lépés-konfigurálja a NAT-ot úgy, hogy engedélyezze a házigazdák számára az internetet
- 2.lépés – a NAT konfigurálása a webkiszolgáló eléréséhez az internetről
- 3.lépés – ACLS konfigurálása
- 4.lépés – tesztelje a konfigurációt a Packet Tracer funkcióval
- ellenőrzés
- hibaelhárítás
- következtetés
Bevezetés
ez a dokumentum egyszerű és egyértelmű példát nyújt arra, hogyan konfigurálható a hálózati címfordítás (Nat) és a hozzáférés-vezérlési listák (ACL) egy ASA tűzfalon annak érdekében, hogy lehetővé tegye a kimenő és bejövő kapcsolatot. Ez a dokumentum egy Adaptive Security Appliance (ASA) 5510 tűzfallal készült, mint az ASA Kód 9-es verziója.1(1), de ez könnyen alkalmazható bármely más ASA tűzfal platformra. Ha olyan platformot használ, mint például az ASA 5505, amely fizikai interfész helyett VLAN-okat használ, akkor szükség szerint módosítania kell az interfész típusait.
előfeltételek
követelmények
erre a dokumentumra nincsenek külön követelmények.
felhasznált összetevők
az ebben a dokumentumban szereplő információk egy ASA 5510 tűzfalon alapulnak, amely ASA 9.1(1) – es verzióját futtatja.
az ebben a dokumentumban szereplő információkat egy adott laboratóriumi környezetben lévő eszközökről hozták létre. A dokumentumban használt összes eszköz törölt (alapértelmezett) konfigurációval indult. Ha a hálózat élő, győződjön meg róla, hogy megértette a parancsok lehetséges hatását.
áttekintés
célok
ebben a példakonfigurációban megnézheti, hogy milyen NAT és ACL konfigurációra van szükség ahhoz, hogy az ASA tűzfal DMZ-jében lévő webkiszolgálóhoz bejövő hozzáférést, valamint belső és DMZ-gazdagépekről kimenő kapcsolatot engedélyezzen. Ezt két célként lehet összefoglalni:
- lehetővé teszi a hosts a belső és DMZ kimenő kapcsolat az Interneten.
- engedélyezze az interneten lévő gazdagépeknek, hogy hozzáférjenek a DMZ-en lévő webszerverhez, amelynek IP-címe 192.168.1.100.
mielőtt rátérnénk a két cél eléréséhez szükséges lépésekre, ez a dokumentum röviden áttekinti az ACLs és a NAT munkáját az ASA kód újabb verzióin (8.3-as és újabb verzió).
hozzáférés-vezérlési lista áttekintés
a hozzáférés-vezérlési listák (röviden Access-listák vagy ACL-ek) az a módszer, amellyel az ASA tűzfal meghatározza, hogy a forgalom engedélyezett-e vagy sem. Alapértelmezés szerint az alacsonyabb biztonsági szintről a magasabb biztonsági szintre haladó forgalom megtagadva. Ezt felülírhatja az alacsonyabb biztonsági interfészre alkalmazott ACL. Az ASA alapértelmezés szerint lehetővé teszi a forgalmat a magasabb és az alacsonyabb biztonsági interfészek között. Ezt a viselkedést ACL-vel is felül lehet írni.
az ASA kód korábbi verzióiban (8.2 vagy korábbi) az ASA összehasonlította a bejövő kapcsolatot vagy csomagot az ACL-vel egy interfészen anélkül, hogy először a csomagot leválasztotta volna. Más szavakkal, az ACL-nek engedélyeznie kellett a csomagot, mintha azt a csomagot rögzítené az interfészen. A 8-as verzióban.3 és újabb kód, az ASA untranslates, hogy a csomag, mielőtt ellenőrzi a felület ACL. Ez azt jelenti, hogy a 8.3-as és újabb kód, valamint a dokumentum esetében a gazdagép valódi IP-jére irányuló forgalom megengedett, nem pedig a gazdagép lefordított IP-jére.
az ACL-ekkel kapcsolatos további információkért lásd a 2.Könyv: Cisco ASA Series Firewall CLI Configuration Guide (Cisco ASA Series Firewall CLI Configuration Guide, 9.1) hozzáférési szabályok konfigurálása című részét.
NAT áttekintés
a NAT az ASA-n a 8.3-as és újabb verzióban két típusra oszlik: Auto Nat (Object NAT) és Manual Nat (Twice Nat). A kettő közül az első, az Object NAT, a hálózati objektum definícióján belül van konfigurálva. Erre egy példa a dokumentum későbbi részében található. Ennek a NAT-módszernek az egyik elsődleges előnye, hogy az ASA automatikusan megrendeli a feldolgozás szabályait az ütközések elkerülése érdekében. Ez a NAT legegyszerűbb formája, de ezzel a könnyedséggel a konfiguráció részletességének korlátozása jár. Például nem hozhat fordítási döntést a csomag rendeltetési helye alapján, mint a második típusú NAT, a kézi Nat esetében. A kézi NAT részletessége robusztusabb, de megköveteli, hogy a vonalakat a megfelelő sorrendben konfigurálják, hogy elérjék a helyes viselkedést. Ez bonyolítja ezt a NAT típust, és ennek eredményeként nem lesz használva ebben a konfigurációs példában.
Lásd az információk a NAT részben könyv 2: Cisco ASA Series Firewall CLI Configuration Guide, 9.1 További információ a NAT.
Configure
első lépések
az alapvető ASA Konfigurációs beállítás három interfész, amelyek három hálózati szegmenshez kapcsolódnak. Az ISP hálózati szegmens az Ethernet0/0 interfészhez csatlakozik, és a külső címkén 0 biztonsági szint található. A belső hálózat csatlakozik az Ethernet0 / 1-hez, és 100-as biztonsági szinttel rendelkezik. A DMZ szegmens, ahol a webszerver található, csatlakozik az Ethernet0/2-hez, és DMZ-ként van címkézve, 50-es biztonsági szinttel.
a példában szereplő interfészkonfiguráció és IP-címek itt láthatók:
interface Ethernet0/0
nameif outside
security-level 0
ip address 198.51.100.100 255.255.255.0
!
interface Ethernet0/1
nameif inside
security-level 100
ip address 192.168.0.1 255.255.255.0
!
interface Ethernet0/2
nameif dmz
security-level 50
ip address 192.168.1.1 255.255.255.0
!
route outside 0.0.0.0 0.0.0.0 198.51.100.1
itt látható, hogy az ASA belső interfésze 192.168.0.1 IP-címmel van beállítva, és ez az alapértelmezett átjáró a belső gazdagépek számára. Az ASA külső interfésze az internetszolgáltatótól kapott IP-címmel van konfigurálva. Van egy alapértelmezett útvonal a helyén, amely beállítja, hogy a next-hop legyen az ISP átjáró. Ha DHCP-t használ, ez automatikusan biztosított. A DMZ interfész 192.168.1.1 IP-címmel van konfigurálva, és ez az alapértelmezett átjáró a DMZ hálózati szegmens gazdagépei számára.
topológia
itt van egy vizuális pillantást, hogy ez a kábelezett és konfigurált:
1. lépés-konfigurálja a NAT-ot úgy, hogy engedélyezze a házigazdák számára az internetet
ebben a példában a NAT objektumot, más néven AutoNAT-ot használjuk. Az első dolog, amit konfigurálni kell, a NAT szabályok, amelyek lehetővé teszik a belső és a DMZ szegmensek gazdagépeinek az internethez való csatlakozását. Mivel ezek a gazdagépek privát IP-címeket használnak, le kell fordítania őket valamire, ami az Interneten irányítható. Ebben az esetben fordítsa le a címeket úgy, hogy azok úgy nézzenek ki, mint az ASA külső interfész IP-címe. Ha a külső IP-je gyakran változik (talán a DHCP miatt), ez a legegyszerűbb módja ennek beállítására.
a NAT konfigurálásához létre kell hoznia egy hálózati objektumot, amely a belső alhálózatot, valamint a DMZ alhálózatot képviseli. Ezen objektumok mindegyikében konfiguráljon egy dinamikus nat-szabályt, amely a címfordítást (Pat) továbbítja ezeknek az ügyfeleknek, amikor a megfelelő interfészekről a külső interfészre kerülnek.
ez a konfiguráció hasonló ehhez:
object network inside-subnet
subnet 192.168.0.0 255.255.255.0
nat (inside,outside) dynamic interface
!
object network dmz-subnet
subnet 192.168.1.0 255.255.255.0
nat (dmz,outside) dynamic interface
ha megnézi a futó konfigurációt ezen a ponton (a show run parancs kimenetével), látni fogja, hogy az objektumdefiníció a kimenet két részre oszlik. Az első rész csak azt jelzi, hogy mi van az objektumban (host/alhálózat, IP-cím stb.), míg a második rész azt mutatja, hogy a NAT-szabály az objektumhoz kapcsolódik. Ha az előző kimenet első bejegyzését veszi:
amikor a 192.168.0.0/24 alhálózatnak megfelelő gazdagépek áthaladnak a belső interfészről a külső interfészre, dinamikusan szeretné lefordítani őket a külső interfészre.
2.lépés – a NAT konfigurálása a webkiszolgáló eléréséhez az internetről
most, hogy a belső és a DMZ interfészeken lévő gazdagépek kijuthatnak az internetre, módosítania kell a konfigurációt, hogy az interneten lévő felhasználók a 80-as TCP porton férhessenek hozzá webkiszolgálónkhoz. Ebben a példában a beállítás úgy történik, hogy az interneten lévő emberek csatlakozhassanak az internetszolgáltató által megadott másik IP-címhez, egy további IP-címhez, amely a miénk. Ebben a példában használja a 198.51.100.101 parancsot. Ezzel a konfigurációval az internetes felhasználók elérhetik a DMZ webszervert a 198.51.100 elérésével.101 a 80-as TCP porton. Használja az Object NAT-ot ehhez a feladathoz, és az ASA lefordítja a 80-as TCP-portot a webkiszolgálón (192.168.1.100) úgy, hogy a külső 80-as TCP-porton 198.51.100.101 legyen. A korábbiakhoz hasonlóan definiáljon egy objektumot, és határozza meg az objektum fordítási szabályait. Ezenkívül határozzon meg egy második objektumot, amely azt az IP-t képviseli, amelyre lefordítja ezt a gazdagépet.
ez a konfiguráció hasonló ehhez:
object network webserver-external-ip
host 198.51.100.101
!
object network webserver
host 192.168.1.100
nat (dmz,outside) static webserver-external-ip service tcp www www
csak összefoglalni, hogy mit jelent ez a NAT szabály ebben a példában:
amikor egy fogadó, amely megfelel az IP-cím 192.168.1.100 a DMZ szegmenseken a TCP port 80-ból (www) származó kapcsolatot hoz létre, és ez a kapcsolat a külső felületen megy ki, azt szeretné lefordítani, hogy a TCP port 80 (www) legyen a külső felületen, és lefordítani az IP-címet 198.51.100.101-re.
ez kissé furcsának tűnik… “a 80-as TCP-portról (www) származik”, de a webes forgalom a 80-as portra irányul. Fontos megérteni, hogy ezek a NAT-szabályok kétirányú jellegűek. Ennek eredményeként megfordíthatja a megfogalmazást, hogy átfogalmazza ezt a mondatot. Az eredmény sokkal értelmesebb:
amikor a külső házigazdák kapcsolatot létesítenek a 198.51.100.101-hez a 80-as TCP-porton (www), akkor a cél IP-címét 192.168.1.100-ra fordítja, és a célport a 80-as TCP-port (www) lesz, és elküldi a DMZ-t.
ennek több értelme van, ha így fogalmazzák meg. Ezután be kell állítania az ACL-eket.
3.lépés – ACLS konfigurálása
a NAT konfigurálva van, és ennek a konfigurációnak a vége közel van. Ne feledje, hogy az ASA ACL-jei lehetővé teszik az alapértelmezett biztonsági viselkedés felülbírálását, amely a következő:
- az alacsonyabb biztonsági interfészről érkező forgalom megtagadva, ha magasabb biztonsági interfészre megy.
- a magasabb biztonsági interfészről érkező forgalom megengedett, ha alacsonyabb biztonsági interfészre megy.
tehát ACL-ek hozzáadása nélkül a konfigurációhoz ez a forgalom a példában működik:
- a belső gazdagépek (100. biztonsági szint) csatlakozhatnak a DMZ-en lévő gazdagépekhez (50.biztonsági szint).
- a belső gazdagépek (100.biztonsági szint) csatlakozhatnak a külső gazdagépekhez (0. biztonsági szint).
- a DMZ-n lévő gazdagépek (50.biztonsági szint) csatlakozhatnak a külső gazdagépekhez (0. biztonsági szint).
ezt a forgalmat azonban megtagadják:
- a külső gazdagépek (0. biztonsági szint) nem tudnak csatlakozni a belső gazdagépekhez (100.biztonsági szint).
- a külső gazdagépek (0.biztonsági szint) nem tudnak csatlakozni a DMZ-en lévő gazdagépekhez (50. biztonsági szint).
- a DMZ-n lévő gazdagépek (50.biztonsági szint) nem tudnak csatlakozni a belső gazdagépekhez (100. biztonsági szint).
mivel a DMZ hálózat kívülről érkező forgalmát az ASA megtagadja a jelenlegi konfigurációjával, az interneten lévő felhasználók a 2.lépésben szereplő NAT-konfiguráció ellenére sem érhetik el a webkiszolgálót. Ezt a forgalmat kifejezetten engedélyeznie kell. A 8.3-as és újabb kódban a gazdagép valódi IP-jét kell használni az ACL – ben, nem pedig a lefordított IP-t. Ez azt jelenti, hogy a konfigurációnak lehetővé kell tennie a 192.168.1.100-ra szánt forgalmat, nem pedig a 198.51.100.101-re szánt forgalmat a 80-as porton. Az egyszerűség kedvéért a 2. lépésben meghatározott objektumokat ehhez az ACL-hez is felhasználjuk. Miután létrehozta az ACL-t, be kell alkalmaznia bejövő a külső felületen.
így néznek ki ezek a konfigurációs parancsok:
access-list outside_acl extended permit tcp any object webserver eq www
!
access-group outside_acl in interface outside
az access-list sor kimondja:
engedélyezze a forgalmat bármely (hol) az objektum által képviselt gazdagépre webszerver (192.168.1.100) a 80-as porton.
fontos, hogy a konfiguráció itt az any kulcsszót használja. Mivel az ügyfelek forrás IP-címe nem ismert, mivel eléri az Ön webhelyét, adjon meg bármilyen jelentést ‘bármilyen IP-cím’.
mi a helyzet a DMZ szegmensből a belső hálózati szegmens gazdagépeinek szánt forgalommal? Például egy szerver a belső hálózaton, amelyhez a DMZ-n lévő gazdagépeknek csatlakozniuk kell. Hogyan engedélyezheti az ASA csak azt a konkrét forgalmat, amely a belső szerverre irányul, és blokkolhat minden mást, ami a DMZ belső szegmensére irányul?
ebben a példában feltételezzük, hogy a belső hálózaton van egy DNS-kiszolgáló a 192.168.0.53 IP-címen, amelyhez a DMZ-n lévő gazdagépeknek hozzáférniük kell a DNS-felbontáshoz. Létrehozza a szükséges ACL-t, és alkalmazza azt a DMZ interfészre, hogy az ASA felül tudja írni a korábban említett alapértelmezett biztonsági viselkedést az adott interfészbe belépő forgalom számára.
így néznek ki ezek a konfigurációs parancsok:
object network dns-server
host 192.168.0.53
!
access-list dmz_acl extended permit udp any object dns-server eq domain
access-list dmz_acl extended deny ip any object inside-subnet
access-list dmz_acl extended permit ip any any
!
access-group dmz_acl in interface dmz
az ACL sokkal összetettebb, mint egyszerűen lehetővé teszi, hogy a forgalom a DNS-kiszolgáló UDP port 53. Ha csak az első ‘engedély’ Sort tennénk, akkor az összes forgalmat blokkolnánk a DMZ-től az interneten lévő házigazdák felé. Az ACL-eknek implicit ‘deny ip any any’ van az ACL végén. Ennek eredményeként a DMZ-házigazdák nem tudnak kimenni az internetre. Annak ellenére, hogy a DMZ-ből kifelé irányuló forgalom alapértelmezés szerint megengedett, az ACL alkalmazása a DMZ interfészen, a DMZ interfész alapértelmezett biztonsági viselkedései már nem érvényesek, és kifejezetten engedélyeznie kell a forgalmat az ACL interfészen.
4.lépés – tesztelje a konfigurációt a Packet Tracer funkcióval
most, hogy a konfiguráció befejeződött, tesztelnie kell annak érdekében, hogy megbizonyosodjon arról, hogy működik. A legegyszerűbb módszer a tényleges gazdagépek használata (ha ez a hálózatod). Azonban annak érdekében, hogy ezt a CLI-ből teszteljük, és tovább vizsgáljuk az ASA néhány eszközét, használjuk a packet tracer-t a felmerült problémák tesztelésére és esetleges hibakeresésére.
a Packet tracer úgy működik, hogy egy csomagot szimulál egy sor paraméter alapján, és ezt a csomagot befecskendezi az interfész adatútvonalába, hasonlóan ahhoz, ahogyan egy valós csomag tenné, ha felvenné a vezetékről. Ezt a csomagot a számtalan ellenőrzés és folyamat követi, amelyek a tűzfalon áthaladva történnek, és a packet tracer megjegyzi az eredményt. Szimulálja a belső gazdagépet, amely az interneten lévő gazdagéphez megy. Az alábbi parancs utasítja a tűzfalat:
szimuláljon egy TCP csomagot, amely a belső interfészen érkezik a 192.168.0.125 IP-címről az 12345 forrásporton, a 203.0.113.1 IP-címre a 80-as porton.
ciscoasa# packet-tracer input inside tcp 192.168.0.125 12345 203.0.113.1 80
Phase: 1
Type: ACCESS-LIST
Subtype:
Result: ALLOW
Config:
Implicit Rule
Additional Information:
MAC Access list
Phase: 2
Type: ROUTE-LOOKUP
Subtype: input
Result: ALLOW
Config:Additional Information:
in 0.0.0.0 0.0.0.0 outsidePhase: 3
Type: NAT
Subtype:
Result: ALLOW
Config:
object network inside-subnet
nat (inside,outside) dynamic interface
Additional Information:
Dynamic translate 192.168.0.125/12345 to 198.51.100.100/12345
Phase: 4
Type: NAT
Subtype: per-session
Result: ALLOW
Config:
Additional Information:
Phase: 5
Type: IP-OPTIONS
Subtype:
Result: ALLOW
Config:
Additional Information:
Phase: 6
Type: NAT
Subtype: per-session
Result: ALLOW
Config:
Additional Information:
Phase: 7
Type: IP-OPTIONS
Subtype:
Result: ALLOW
Config:
Additional Information:
Phase: 8
Type: FLOW-CREATION
Subtype:
Result: ALLOW
Config:
Additional Information:
New flow created with id 1, packet dispatched to next module
Result:
input-interface: inside
input-status: up
input-line-status: up
output-interface: outside
output-status: up
output-line-status: up
Action: allow
a végeredmény az, hogy a forgalom megengedett, amiazt jelenti, hogy átment az összes NAT és ACL ellenőrzésen a konfigurációban, és kiküldték a kilépési interfészen kívül. Vegye figyelembe, hogy a csomagot a 3.fázisban fordították le, és ennek a fázisnak a részletei megmutatják, hogy milyen szabály van. A házigazda 192.168.0.125 lefordítva dinamikusan 198.51.100.100, mint egy a konfiguráció.
most futtassa a kapcsolatot az internetről a webszerverre. Ne feledje, hogy az interneten lévő gazdagépek a külső felületen a 198.51.100.101-hez való csatlakozással férnek hozzá a webszerverhez. Ismét ez a következő parancs lefordítja:
szimuláljon egy TCP csomagot, amely a külső interfészen érkezik a 192.0.2.123 IP-címről az 12345 forrásporton, a 198.51.100.101 IP-címre a 80-as porton.
ciscoasa# packet-tracer input outside tcp 192.0.2.123 12345 198.51.100.101 80
Phase: 1
Type: UN-NAT
Subtype: static
Result: ALLOW
Config:
object network webserver
nat (dmz,outside) static webserver-external-ip service tcp www www
Additional Information:
NAT divert to egress interface dmz
Untranslate 198.51.100.101/80 to 192.168.1.100/80
Phase: 2
Type: ACCESS-LIST
Subtype: log
Result: ALLOW
Config:
access-group outside_acl in interface outside
access-list outside_acl extended permit tcp any object webserver eq www
Additional Information:
Phase: 3
Type: NAT
Subtype: per-session
Result: ALLOW
Config:
Additional Information:
Phase: 4
Type: IP-OPTIONS
Subtype:
Result: ALLOW
Config:
Additional Information:
Phase: 5
Type: NAT
Subtype: rpf-check
Result: ALLOW
Config:
object network webserver
nat (dmz,outside) static webserver-external-ip service tcp www www
Additional Information:
Phase: 6
Type: NAT
Subtype: per-session
Result: ALLOW
Config:
Additional Information:
Phase: 7
Type: IP-OPTIONS
Subtype:
Result: ALLOW
Config:
Additional Information:
Phase: 8
Type: FLOW-CREATION
Subtype:
Result: ALLOW
Config:
Additional Information:
New flow created with id 3, packet dispatched to next module
Result:
input-interface: outside
input-status: up
input-line-status: up
output-interface: dmz
output-status: up
output-line-status: up
Action: allow
ismét az eredmény az, hogy a csomag megengedett. Az ACL-ek kijelentkeznek, a konfiguráció rendben van, és az Interneten (kívül) lévő felhasználóknak képesnek kell lenniük arra, hogy hozzáférjenek a webszerverhez a külső IP-vel.
ellenőrzés
az ellenőrzési eljárásokat a 4.lépés tartalmazza – a konfiguráció tesztelése a Csomagkövető funkcióval.
hibaelhárítás
jelenleg nem áll rendelkezésre konkrét hibaelhárítási információ ehhez a konfigurációhoz.
következtetés
az ASA konfigurálása az alapvető NAT elvégzéséhez nem olyan ijesztő feladat. Az ebben a dokumentumban szereplő példa az adott forgatókönyvhöz igazítható, ha módosítja a példakonfigurációkban használt IP-címeket és portokat. Ennek végső ASA-konfigurációja kombinálva hasonló az ASA-hoz 5510:
ASA Version 9.1(1)
!
interface Ethernet0/0
nameif outside
security-level 0
ip address 198.51.100.100 255.255.255.0
!
interface Ethernet0/1
nameif inside
security-level 100
ip address 192.168.0.1 255.255.255.0
!
interface Ethernet0/2
nameif dmz
security-level 50
ip address 192.168.1.1 255.255.255.0
!
object network inside-subnet
subnet 192.168.0.0 255.255.255.0
object network dmz-subnet
subnet 192.168.1.0 255.255.255.0
object network webserver
host 192.168.1.100
object network webserver-external-ip
host 198.51.100.101
object network dns-server
host 192.168.0.53
!
access-list outside_acl extended permit tcp any object webserver eq www
access-list dmz_acl extended permit udp any object dns-server eq domain
access-list dmz_acl extended deny ip any object inside-subnet
access-list dmz_acl extended permit ip any any
!
object network inside-subnet
nat (inside,outside) dynamic interface
object network dmz-subnet
nat (dmz,outside) dynamic interface
object network webserver
nat (dmz,outside) static webserver-external-ip service tcp www www
access-group outside_acl in interface outside
access-group dmz_acl in interface dmz
!
route outside 0.0.0.0 0.0.0.0 198.51.100.1 1
például egy ASA 5505-en, a korábban bemutatott módon csatlakoztatott interfészekkel (kívül az Ethernet0/0-hoz, belül az Ethernet0/1-hez, a DMZ pedig az Ethernet0-hez csatlakozik/2):
ASA Version 9.1(1)
!
interface Ethernet0/0
description Connected to Outside Segment
switchport access vlan 2
!
interface Ethernet0/1
description Connected to Inside Segment
switchport access vlan 1
!
interface Ethernet0/2
description Connected to DMZ Segment
switchport access vlan 3
!
interface Vlan2
nameif outside
security-level 0
ip address 198.51.100.100 255.255.255.0
!
interface Vlan1
nameif inside
security-level 100
ip address 192.168.0.1 255.255.255.0
!
interface Vlan3
nameif dmz
security-level 50
ip address 192.168.1.1 255.255.255.0
!
object network inside-subnet
subnet 192.168.0.0 255.255.255.0
object network dmz-subnet
subnet 192.168.1.0 255.255.255.0
object network webserver
host 192.168.1.100
object network webserver-external-ip
host 198.51.100.101
object network dns-server
host 192.168.0.53
!
access-list outside_acl extended permit tcp any object webserver eq www
access-list dmz_acl extended permit udp any object dns-server eq domain
access-list dmz_acl extended deny ip any object inside-subnet
access-list dmz_acl extended permit ip any any
!
object network inside-subnet
nat (inside,outside) dynamic interface
object network dmz-subnet
nat (dmz,outside) dynamic interface
object network webserver
nat (dmz,outside) static webserver-external-ip service tcp www www
access-group outside_acl in interface outside
access-group dmz_acl in interface dmz
!
route outside 0.0.0.0 0.0.0.0 198.51.100.1 1