Problem mit NAT bei CISCO Pix 501
Hallo,
ich habe ien Problem mit meiner Cisco Pix 501 die sich hinter einer FritzBox befindet.
Die Konstellation ist folgendermassen
Internet---Outside/FritzBox----Inside/FritzBox-----Outside/Pix------Inside/Pix---------------LAN-----------------------Webserver (192.168.0.2)
PPPoE 10.0.0.1/24 10.0.0.3/24 192.168.0.100/24 192.168.0.0/24 |---Exchange Server (192.168.0.9)
|---FTP Server(192.168.0.2)
Problem ist dass ich keinen Zugriff auf die Server im LAN bekomme. In der FritzBox habe ich das Outside Interface der Pix als "Exposed Host" eingestellt wo sämtliche Port weitergeleitet werden. Auf der Pix habe ich dann NAT etc eingerichtet. Ich bekomme jedoch nur Zugriff auf einen Server wenn ich auf der FritzBox die genatete IP Adresse ds Servers eintrage, die ich per Static eingetragen habe.
Anbei meine PIX Config
PIX Version 6.3(5)
interface ethernet0 auto
interface ethernet1 100full
nameif ethernet0 outside security0
nameif ethernet1 inside security100
enable password oTzqJ9YZa9HnHsjt encrypted
passwd 2KFQerervE.2KYOU encrypted
hostname pix501
domain-name test.net
fixup protocol dns maximum-length 512
fixup protocol ftp 21
fixup protocol h323 h225 1720
fixup protocol h323 ras 1718-1719
fixup protocol http 80
fixup protocol rsh 514
fixup protocol rtsp 554
fixup protocol sip 5060
fixup protocol sip udp 5060
fixup protocol skinny 2000
fixup protocol smtp 25
fixup protocol sqlnet 1521
fixup protocol tftp 69
names
object-group service server tcp
port-object eq www
port-object eq ftp
access-list inbound permit icmp any any
access-list inbound permit tcp any host 10.0.0.11 eq 443
access-list inbound permit tcp any host 10.0.0.10 object-group server
pager lines 24
mtu outside 1500
mtu inside 1500
ip address outside 10.0.0.3 255.255.255.0
ip address inside 192.168.0.100 255.255.255.0
ip audit info action alarm
ip audit attack action alarm
pdm location 192.168.0.0 255.255.255.0 inside
pdm history enable
arp timeout 14400
global (outside) 1 10.0.0.101-10.0.0.254
nat (inside) 1 192.168.0.0 255.255.255.0 0 0
static (inside,outside) 10.0.0.10 192.168.0.2 netmask 255.255.255.255 0 0
static (inside,outside) 10.0.0.11 192.168.0.9 netmask 255.255.255.255 0 0
access-group inbound in interface outside
route outside 0.0.0.0 0.0.0.0 10.0.0.1 1
timeout xlate 3:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc 0:10:00 h225 1:00:00
timeout h323 0:05:00 mgcp 0:05:00 sip 0:30:00 sip_media 0:02:00
timeout sip-disconnect 0:02:00 sip-invite 0:03:00
timeout uauth 0:05:00 absolute
aaa-server TACACS+ protocol tacacs+
aaa-server TACACS+ max-failed-attempts 3
aaa-server TACACS+ deadtime 10
aaa-server RADIUS protocol radius
aaa-server RADIUS max-failed-attempts 3
aaa-server RADIUS deadtime 10
aaa-server LOCAL protocol local
aaa authentication ssh console LOCAL
aaa authorization command LOCAL
http server enable
http 192.168.0.0 255.255.255.0 inside
no snmp-server location
no snmp-server contact
snmp-server community public
no snmp-server enable traps
tftp-server inside 192.168.0.2 pix501.cfg
floodguard enable
telnet timeout 5
ssh 192.168.0.0 255.255.255.0 inside
ssh timeout 15
console timeout 0
username cisco password muahhasdsd encrypted privilege 15
terminal width 80
Cryptochecksum:c1726b06bbd476dfaba368ecf6a1ca14
: end
Ich gehe mal davon aus dass ich in der NAT Regel was falsch habe bzw. unter Global. Denn wen nich jetzt auf der FritzBox die 10.0.0.10 als Exposed Host eintrage, habeich zugriff auf den FTP und Webserver im LAN. Wenn ich es auf die 10.0.0.11 umstelle, kann ich per SSL auf den Exchange zugreiffen. Aber wie schaffe ich es dass ich es immer nur über eine IP machen kann?
ich habe ien Problem mit meiner Cisco Pix 501 die sich hinter einer FritzBox befindet.
Die Konstellation ist folgendermassen
Internet---Outside/FritzBox----Inside/FritzBox-----Outside/Pix------Inside/Pix---------------LAN-----------------------Webserver (192.168.0.2)
PPPoE 10.0.0.1/24 10.0.0.3/24 192.168.0.100/24 192.168.0.0/24 |---Exchange Server (192.168.0.9)
|---FTP Server(192.168.0.2)
Problem ist dass ich keinen Zugriff auf die Server im LAN bekomme. In der FritzBox habe ich das Outside Interface der Pix als "Exposed Host" eingestellt wo sämtliche Port weitergeleitet werden. Auf der Pix habe ich dann NAT etc eingerichtet. Ich bekomme jedoch nur Zugriff auf einen Server wenn ich auf der FritzBox die genatete IP Adresse ds Servers eintrage, die ich per Static eingetragen habe.
Anbei meine PIX Config
PIX Version 6.3(5)
interface ethernet0 auto
interface ethernet1 100full
nameif ethernet0 outside security0
nameif ethernet1 inside security100
enable password oTzqJ9YZa9HnHsjt encrypted
passwd 2KFQerervE.2KYOU encrypted
hostname pix501
domain-name test.net
fixup protocol dns maximum-length 512
fixup protocol ftp 21
fixup protocol h323 h225 1720
fixup protocol h323 ras 1718-1719
fixup protocol http 80
fixup protocol rsh 514
fixup protocol rtsp 554
fixup protocol sip 5060
fixup protocol sip udp 5060
fixup protocol skinny 2000
fixup protocol smtp 25
fixup protocol sqlnet 1521
fixup protocol tftp 69
names
object-group service server tcp
port-object eq www
port-object eq ftp
access-list inbound permit icmp any any
access-list inbound permit tcp any host 10.0.0.11 eq 443
access-list inbound permit tcp any host 10.0.0.10 object-group server
pager lines 24
mtu outside 1500
mtu inside 1500
ip address outside 10.0.0.3 255.255.255.0
ip address inside 192.168.0.100 255.255.255.0
ip audit info action alarm
ip audit attack action alarm
pdm location 192.168.0.0 255.255.255.0 inside
pdm history enable
arp timeout 14400
global (outside) 1 10.0.0.101-10.0.0.254
nat (inside) 1 192.168.0.0 255.255.255.0 0 0
static (inside,outside) 10.0.0.10 192.168.0.2 netmask 255.255.255.255 0 0
static (inside,outside) 10.0.0.11 192.168.0.9 netmask 255.255.255.255 0 0
access-group inbound in interface outside
route outside 0.0.0.0 0.0.0.0 10.0.0.1 1
timeout xlate 3:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc 0:10:00 h225 1:00:00
timeout h323 0:05:00 mgcp 0:05:00 sip 0:30:00 sip_media 0:02:00
timeout sip-disconnect 0:02:00 sip-invite 0:03:00
timeout uauth 0:05:00 absolute
aaa-server TACACS+ protocol tacacs+
aaa-server TACACS+ max-failed-attempts 3
aaa-server TACACS+ deadtime 10
aaa-server RADIUS protocol radius
aaa-server RADIUS max-failed-attempts 3
aaa-server RADIUS deadtime 10
aaa-server LOCAL protocol local
aaa authentication ssh console LOCAL
aaa authorization command LOCAL
http server enable
http 192.168.0.0 255.255.255.0 inside
no snmp-server location
no snmp-server contact
snmp-server community public
no snmp-server enable traps
tftp-server inside 192.168.0.2 pix501.cfg
floodguard enable
telnet timeout 5
ssh 192.168.0.0 255.255.255.0 inside
ssh timeout 15
console timeout 0
username cisco password muahhasdsd encrypted privilege 15
terminal width 80
Cryptochecksum:c1726b06bbd476dfaba368ecf6a1ca14
: end
Ich gehe mal davon aus dass ich in der NAT Regel was falsch habe bzw. unter Global. Denn wen nich jetzt auf der FritzBox die 10.0.0.10 als Exposed Host eintrage, habeich zugriff auf den FTP und Webserver im LAN. Wenn ich es auf die 10.0.0.11 umstelle, kann ich per SSL auf den Exchange zugreiffen. Aber wie schaffe ich es dass ich es immer nur über eine IP machen kann?
Please also mark the comments that contributed to the solution of the article
Content-Key: 124695
Url: https://administrator.de/contentid/124695
Printed on: April 19, 2024 at 20:04 o'clock
15 Comments
Latest comment
Das wäre die erste Frage.... die zu beantworten wäre, denn die PIX kann selber PPPoE und man könnte die FB so nur als dummes Modem laufen lassen.
Oder wenn man keine ganze FB dafür verschwenden will dann besser dies hier:
http://www.pollin.de/shop/detail.php?pg=OA==&a=NTM4ODgyOTk=&w=O ...
Das erspart dir die Frickelei mit der eigentlich sinnlos vor der PIX liegenden FB !
OK aber bleiben wir mal bei dem Szenario....
Hast du mit einem Wireshark mal nachgeprüft ob die FB in der Exposed hosts Einstellung überhaupt die Pakete forwardet. Vermutlich macht sie das nicht, denn exposed hosts bedeutet immer das das nur Ports sind die sonst nicht benutzt werden.
Wenn du Webtraffic nimmst, dann denkt die FB häufig das ist für sie selber (Websetup) und blockt diese Pakete.
Also erstmal einen Wireshark Sniffer zwischen FB und PIX klemmen und checken ob die FB sich korrekt verhält.
Ferner musst du Zugriffe mit allen externen IP Adressen aufs Inside Interface zulassen was man in der Konfig nicht sieht. Denn wenn du von außen (Internet) zugreifst hast du als IP Adresse eine irgendwie geartete öffentliche IP die die PIX durchlassen muss und das sieht man nicht in deiner Konfig.
Wenn du das mit einem Client im 10.0.0.0er Netz testest ist es klar das es klappt, denn der hat eine Source Adresse aus diesem Netz !
Nicht aber ein Client der von außen (Internet) auf die 10.0.0.0er Adresse zugreift !
Oder wenn man keine ganze FB dafür verschwenden will dann besser dies hier:
http://www.pollin.de/shop/detail.php?pg=OA==&a=NTM4ODgyOTk=&w=O ...
Das erspart dir die Frickelei mit der eigentlich sinnlos vor der PIX liegenden FB !
OK aber bleiben wir mal bei dem Szenario....
Hast du mit einem Wireshark mal nachgeprüft ob die FB in der Exposed hosts Einstellung überhaupt die Pakete forwardet. Vermutlich macht sie das nicht, denn exposed hosts bedeutet immer das das nur Ports sind die sonst nicht benutzt werden.
Wenn du Webtraffic nimmst, dann denkt die FB häufig das ist für sie selber (Websetup) und blockt diese Pakete.
Also erstmal einen Wireshark Sniffer zwischen FB und PIX klemmen und checken ob die FB sich korrekt verhält.
Ferner musst du Zugriffe mit allen externen IP Adressen aufs Inside Interface zulassen was man in der Konfig nicht sieht. Denn wenn du von außen (Internet) zugreifst hast du als IP Adresse eine irgendwie geartete öffentliche IP die die PIX durchlassen muss und das sieht man nicht in deiner Konfig.
Wenn du das mit einem Client im 10.0.0.0er Netz testest ist es klar das es klappt, denn der hat eine Source Adresse aus diesem Netz !
Nicht aber ein Client der von außen (Internet) auf die 10.0.0.0er Adresse zugreift !
Hallo,
wenn ich die ACL richtig intepreitiere gibtst du damit ja vor das
10.0.0.11 alles darf was equal 443 ist
während
10.0.0.10 alles darf was equal object-group server beinhaltet.
Da immer noch implicites deny any any folgt verbietest du folglich das
die beiden IP Adressen auch das andere dürfen.
Oder habe ich deine Frage falsch interpretiert?
brammer
wenn ich die ACL richtig intepreitiere gibtst du damit ja vor das
10.0.0.11 alles darf was equal 443 ist
während
10.0.0.10 alles darf was equal object-group server beinhaltet.
Da immer noch implicites deny any any folgt verbietest du folglich das
die beiden IP Adressen auch das andere dürfen.
Oder habe ich deine Frage falsch interpretiert?
brammer
Hallo,
falsch!
Das "deny any any" gehört da rein und zwar schreibt deine Pix das da rein!
deswegen impizites deny!
am ende jeder acl steht dieses implizites deny, damit alles was nicht erlaubt ist, verboten ist !
Vielleicht hätte ich oben schreiben müssen du erlaubst beide IP nicht alles was die andere darf!
brammer
falsch!
Das "deny any any" gehört da rein und zwar schreibt deine Pix das da rein!
deswegen impizites deny!
am ende jeder acl steht dieses implizites deny, damit alles was nicht erlaubt ist, verboten ist !
Vielleicht hätte ich oben schreiben müssen du erlaubst beide IP nicht alles was die andere darf!
brammer
Zitat von @flugfaust:
Stimmt. Sorry. Hatte die alte Config gepostet. Die Deny any any
gehört nicht rein. Der Rest ist aber aktuell
Stimmt. Sorry. Hatte die alte Config gepostet. Die Deny any any
gehört nicht rein. Der Rest ist aber aktuell
Nur nochmal genau nachgefragt:
Aus dem Internet willst du einen Webserver im 192.168.0.0 /24 er Netz (hinter der PIX) errreichen ausschliesslich via HTTPS (TCP 443) , richtig ?
Forwardest du in der FB nur 443 auf die 10.0.0.10 funktioniert es NICHT.
Forwardest du in der FB alles auf die 10.0.0.10 (exposed host) funktioniert es.
Ist das so richtig ??
Aus dem Internet willst du einen Webserver im 192.168.0.0 /24 er Netz (hinter der PIX) errreichen ausschliesslich via HTTPS (TCP 443) , richtig ?
Forwardest du in der FB nur 443 auf die 10.0.0.10 funktioniert es NICHT.
Forwardest du in der FB alles auf die 10.0.0.10 (exposed host) funktioniert es.
Ist das so richtig ??
So hier kommt die Lösung !
Der Schlüssel ist eine Access Liste auf dem Outside Interface der PIX die TCP 80 Connections von außen zulässt:
Hier ist der Testaufbau:
Hier die passende PIX Konfig dazu: (Default Config Statements übersichtshalber entfernt !)
pix501#
PIX Version 6.3(5)
interface ethernet0 auto
interface ethernet1 100full
nameif ethernet0 outside security0
nameif ethernet1 inside security100
hostname pix501
domain-name test.local
access-list 101 permit tcp any host 10.0.1.10 eq www
ip address outside dhcp setroute
ip address inside 192.168.0.254 255.255.255.0
global (outside) 10 interface
nat (inside) 10 0.0.0.0 0.0.0.0 0 0
static (inside,outside) 10.0.1.10 192.168.0.100 netmask 255.255.255.255 0 0
access-group 101 in interface outside
http 192.168.0.100 255.255.255.255 inside
dhcpd address 192.168.0.100-192.168.0.109 inside
dhcpd dns 192.168.7.254
dhcpd lease 3600
dhcpd ping_timeout 750
dhcpd enable inside
(Die PIX macht DHCP im lokalen Segment und bekommt ihre Outside IP per DHCP vom davorliegenden Router !)
Erklärung:
Das Kommando "static (inside,outside) 10.0.1.10 192.168.0.100 netmask 255.255.255.255 0 0" setzt die IP des lokalen Webservers statisch fest auf die outside IP 10.0.1.10 des Zwischennetzes. Die PIX "merkt" sich diese IP als virtuelle outside IP für den Webserver. D.h. alle Connections auf diese IP werden dann auch wieder intern auf die 192.168.0.100 (Webserver) umgesetzt !
Normalerweise verbietet die PIX eingehende Verbindungen auf Interfaces mit einem höheren Security Level, was aber mit einer Access Liste entsprechend erlaubt werden kann.
Die Access Liste "access-list 101 permit tcp any host 10.0.1.10 eq www" erlaubt von allen Netzen den Zugang auf die IP 10.0.1.10 mit dem Port TCP 80 also Web Zugang, HTTP und mit dem Kommando "access-group 101 in interface outside" wird diese ACL auf das Outside Interface gelegt.
Ein Quercheck mit einem Client im 10.0.1.0er Netz der einen Zugriff per Browser auf die 10.0.1.10 macht landet dann problemlos auf dem lokalen Webserver 192.168.0.100 !
Nun ist nur noch ein Port Forwarding auf den NAT Router davor einzutragen also TCP Port 80 ->> 10.0.1.10 TCP 80 und das wars !
Ein finaler Check mit einem Client im 192.168.7.0er Netz, das hier das Internet simuliert landet dann ebenfalls auf dem Webserver....die Konfig ist also OK.
Wenn du nun z.B. einen weiteren lokalen HTTPS Webserver (z.B. lokal die 192.168.0.200 outside die 10.0.1.11) nach außen öffnen willst nach dem gleichen Muster sind folgende Punkte zu tun:
Das sollte es gewesen sein. Das klappt dann alles auch problemlos OHNE das gefährliche Spiel mit dem exposed host oder DMZ !
Der Schlüssel ist eine Access Liste auf dem Outside Interface der PIX die TCP 80 Connections von außen zulässt:
Hier ist der Testaufbau:
Hier die passende PIX Konfig dazu: (Default Config Statements übersichtshalber entfernt !)
pix501#
PIX Version 6.3(5)
interface ethernet0 auto
interface ethernet1 100full
nameif ethernet0 outside security0
nameif ethernet1 inside security100
hostname pix501
domain-name test.local
access-list 101 permit tcp any host 10.0.1.10 eq www
ip address outside dhcp setroute
ip address inside 192.168.0.254 255.255.255.0
global (outside) 10 interface
nat (inside) 10 0.0.0.0 0.0.0.0 0 0
static (inside,outside) 10.0.1.10 192.168.0.100 netmask 255.255.255.255 0 0
access-group 101 in interface outside
http 192.168.0.100 255.255.255.255 inside
dhcpd address 192.168.0.100-192.168.0.109 inside
dhcpd dns 192.168.7.254
dhcpd lease 3600
dhcpd ping_timeout 750
dhcpd enable inside
(Die PIX macht DHCP im lokalen Segment und bekommt ihre Outside IP per DHCP vom davorliegenden Router !)
Erklärung:
Das Kommando "static (inside,outside) 10.0.1.10 192.168.0.100 netmask 255.255.255.255 0 0" setzt die IP des lokalen Webservers statisch fest auf die outside IP 10.0.1.10 des Zwischennetzes. Die PIX "merkt" sich diese IP als virtuelle outside IP für den Webserver. D.h. alle Connections auf diese IP werden dann auch wieder intern auf die 192.168.0.100 (Webserver) umgesetzt !
Normalerweise verbietet die PIX eingehende Verbindungen auf Interfaces mit einem höheren Security Level, was aber mit einer Access Liste entsprechend erlaubt werden kann.
Die Access Liste "access-list 101 permit tcp any host 10.0.1.10 eq www" erlaubt von allen Netzen den Zugang auf die IP 10.0.1.10 mit dem Port TCP 80 also Web Zugang, HTTP und mit dem Kommando "access-group 101 in interface outside" wird diese ACL auf das Outside Interface gelegt.
Ein Quercheck mit einem Client im 10.0.1.0er Netz der einen Zugriff per Browser auf die 10.0.1.10 macht landet dann problemlos auf dem lokalen Webserver 192.168.0.100 !
Nun ist nur noch ein Port Forwarding auf den NAT Router davor einzutragen also TCP Port 80 ->> 10.0.1.10 TCP 80 und das wars !
Ein finaler Check mit einem Client im 192.168.7.0er Netz, das hier das Internet simuliert landet dann ebenfalls auf dem Webserver....die Konfig ist also OK.
Wenn du nun z.B. einen weiteren lokalen HTTPS Webserver (z.B. lokal die 192.168.0.200 outside die 10.0.1.11) nach außen öffnen willst nach dem gleichen Muster sind folgende Punkte zu tun:
- Zweites statisches NAT Statement in der PIX setzen "static (inside,outside) 10.0.1.11 192.168.0.200 netmask 255.255.255.255 0 0"
- Access Liste 101 erweitern mit "access-list 101 permit tcp any host 10.0.1.11 eq 443"
- Port Forwarding im Router davor einstellen: TCP 443 --> 10.0.1.11 TCP 443
Das sollte es gewesen sein. Das klappt dann alles auch problemlos OHNE das gefährliche Spiel mit dem exposed host oder DMZ !
Für unterschiedliche Hosts nimmt die PIX immer dedizierte IPs aus dem outside IP netz. Deshalb fällt diese Lösung leider weg wenn du unterschiedliche Hosts im inside Netzwerk erreichen willst.
Ein exposed Host wirkt ja nur auf eine IP.
Ein Nachteil ist das ja nicht, denn du musst nur ein paar Forwarding Statements mehr in der FB eintragen.
Damit gewinnst du zudem zusätzliche Sicherheit und musst nicht den gefährlichen Schrotschuß "exposed Host" verwenden der dir alle Ports ungeschützt forwardet !
Ein exposed Host wirkt ja nur auf eine IP.
Ein Nachteil ist das ja nicht, denn du musst nur ein paar Forwarding Statements mehr in der FB eintragen.
Damit gewinnst du zudem zusätzliche Sicherheit und musst nicht den gefährlichen Schrotschuß "exposed Host" verwenden der dir alle Ports ungeschützt forwardet !
Wenns das denn war...
How can I mark a post as solved?
How can I mark a post as solved?