Cisco ASA statisk Nat-konfiguration
lektionens innehåll
i tidigare lektioner förklarade jag hur du kan använda dynamisk NAT eller PAT så att dina värdar eller servrar på insidan av ditt nätverk kan komma åt omvärlden. Det här är bra men det är bara för utgående trafik eller i “Asa-terminologi”…trafik från en högre säkerhetsnivå går till en lägre säkerhetsnivå.
vad händer om en extern värd på Internet vill nå en server på vår insida eller DMZ? Detta är omöjligt med endast dynamisk NAT eller PAT. När vi vill uppnå detta måste vi göra två saker:
- konfigurera statisk NAT så att den interna servern kan nås via en extern offentlig IP-adress.
- konfigurera en åtkomstlista så att trafiken är tillåten.
för att visa statisk NAT kommer jag att använda följande topologi:
ovan har vi vår Asa-brandvägg med två gränssnitt; en för DMZ och en annan för omvärlden. Föreställ dig att R1 är en webbserver på DMZ medan R2 är någon värd på Internet som vill nå vår webbserver. Låt oss konfigurera vår brandvägg så att detta är möjligt…
statisk Nat-konfiguration
först skapar vi ett nätverksobjekt som definierar vår “webbserver” i DMZ och konfigurerar också till vilken IP-adress den ska översättas. Denna konfiguration är för ASA version 8.3 och senare:
ASA1(config)# object network WEB_SERVERASA1(config-network-object)# host 192.168.1.1ASA1(config-network-object)# nat (DMZ,OUTSIDE) static 192.168.2.200
konfigurationen ovan berättar för ASA att när en extern enhet ansluter till IP-adress 192.168.2.200 att den ska översättas till IP-adress 192.168.1.1. Detta tar hand om NAT men vi måste fortfarande skapa en åtkomstlista eller trafiken kommer att tappas:
ASA1(config)# access-list OUTSIDE_TO_DMZ extended permit tcp any host 192.168.1.1
access-listan ovan tillåter någon källa IP-adress för att ansluta till IP-adress 192.168.1.1. När du använder ASA version 8.3 eller senare måste du ange den “riktiga” IP-adressen, inte den “nat-översatta” adressen. Låt oss aktivera denna åtkomstlista:
ASA1(config)# access-group OUTSIDE_TO_DMZ in interface OUTSIDE
detta möjliggör åtkomstlistan på det yttre gränssnittet. Låt oss telnet från R2 till R1 på TCP-port 80 för att se om det fungerar:
R2#telnet 192.168.2.200Trying 192.168.2.200 ... Open
bra, vi kan ansluta från R2 till R1, låt oss ta en titt på ASA för att verifiera några saker:
ASA1# show xlate1 in use, 1 most usedFlags: D - DNS, e - extended, I - identity, i - dynamic, r - portmap, s - static, T - twice, N - net-to-netNAT from DMZ:192.168.1.1 to OUTSIDE:192.168.2.200 flags s idle 0:08:44 timeout 0:00:00
ASA1# show access-listaccess-list cached ACL log flows: total 0, denied 0 (deny-flow-max 4096) alert-interval 300access-list OUTSIDE_TO_DMZ; 1 elements; name hash: 0xe96c1ef3access-list OUTSIDE_TO_DMZ line 1 extended permit tcp any host 192.168.1.1 eq www (hitcnt=6) 0x408b914e
ovan kan du se den statiska nat-posten och även träffen på åtkomstlistan. Allt fungerar som det ska vara.
statisk Nat för hela undernätet
det föregående exemplet var bra om du bara har några servrar eftersom du kan skapa ett par statiska nat-översättningar och göras med det. Det finns dock ett annat alternativ, det är också möjligt att översätta ett helt delnät till en hel pool av IP-adresser. Låt mig ge dig ett exempel på vad jag pratar om:
topologin ovan är exakt samma som föregående exempel men jag har lagt till R3 till DMZ. Föreställ dig nu att vår ISP gav oss en pool av IP-adresser, låt oss säga 10.10.10.0 /24. Vi kan använda denna pool för att översätta alla servrar i DMZ, låt mig visa dig hur: