Montag, 14. Dezember 2009

DE - dynamisches Routeleanking oder "Inter VRF routing"

Dynamisches Route Leaking oder Routing Protokolle fürs Routing zwischen der globales Routingtabelle (GRT) und VRFs

Hallo zusammen,

das letzte mal gab es ein Beispiel, wie man statisch das Routing zwischen 2 VRFs einrichtet und dachte, daß es doch garnicht so schwer sein kann, dies auch dynamisch zu realisieren ... das war reichlich naiv ;)
Nach massig herumprobieren und mit dem Rat von ein paar anderen habe ich ein kleines Lab zusammengebaut, wo Routen zwischen der GRT und einem VRF dynamisch ausgetauscht werden.
Soweit ich es sagen kann, gibt es keine Möglichkeit Routen auf normalem Wege zu redistributen, wenn ein Routingprozess der globale ist. Wenn man es dennoch versucht, bekommt man eine kryptische Fehlermeldung wie diese:
VRF -> GRT [code]%OSPF process 1 is attached to Default-IP-Routing-Table[/code]
GRT -> VRF [code]OSPF process 22 already exists and is attached to Default-IP-Routing-Table[/code]

Dies müssen wir einfach "austricksen" und dafür brauchen wir einige Tunnelinterfaces und ein paar Loopbacks

So sieht mein Netzplan aus:


Der globale Client und der VRF_Client werden wieder durch missbrauchte Router dargestellt, die lediglich eine IP haben und eine Default Router auf das ausgehende Interface+Next Hop IP.

grt_host
[code]interface FastEthernet0/0
ip address 10.10.10.10 255.255.255.0
ip route 0.0.0.0 0.0.0.0 10.10.10.1 FastEthernet0/0[/code]

vrf_host
[code]interface FastEthernet0/1
ip address 20.20.20.20 255.255.255.0
ip route 0.0.0.0 0.0.0.0 20.20.20.1 FastEthernet0/1[/code]

Nun brauchen wir ein paar Grundkonfigurationen für den VRF Router:

ein vrf erstellen:
ip vrf zif
rd 1:1
route-target both 1:1


Interface config zum grt_host:
interface FastEthernet0/0
ip address 10.10.10.1 255.255.255.0
speed 100
full-duplex


Interface config zum vrf_host:
interface FastEthernet0/1
ip vrf forwarding zif
ip address 20.20.20.1 255.255.255.0
speed 100
full-duplex


Das alles ist kein Hexenwerk ... bis jetzt ;)

Das erste was wir uns überlegen müssen: wie tricksen wir die Grenzen des Designs aus?

Die erste Zutat sind "Tunnel-Interfaces", die andere sind "Loopbacks".

Unterm Strich brauchen wir:
ein Tunnel-Interface pro VRF,
ein Tunnel-Interface für die GRT
ein Loopback pro VRF und
ein Loopback für die GRT.

Wenn wir mehrere VRFs mit der GRT verknüpfen wollen, brauchen wir entsprechend der obigen Liste das gleiche nochmal pro zusätlichem VRF.

Beide Loopbacks werden in der GRT gelassen:
VRF Router
interface Loopback111
ip address 111.111.111.111 255.255.255.255

interface Loopback222
ip address 222.222.222.222 255.255.255.255


Jetzt brauchen wir die dazugehörigen Tunnel-Interfaces.
Das für die GRT:
interface Tunnel102
ip address 100.100.100.1 255.255.255.0
tunnel source 111.111.111.111
tunnel destination 222.222.222.222

Und das für das VRF:
interface Tunnel201
ip vrf forwarding RED
ip address 100.100.100.2 255.255.255.0
tunnel source 222.222.222.222
tunnel destination 111.111.111.111


Was macht dieses Konstrukt? Wir zeigen mit dem dem Tunnel 201 auf die Loopback in der GRT, mit der Quelle in der GRT und packen das ganze dann ins VRF. Hört sich nicht nur komisch an, es ist komisch (und "fühlt sich komisch an), ABER es funktioniert ;)

Jetzt haben wir schicke Netzwerke, zwischen denen wir ein Routingprozess wie zB OSPF laufen lassen können.

Der globale Routingprozess:
router ospf 1
router-id 10.10.10.10
log-adjacency-changes
network 100.100.100.1 0.0.0.0 area 0
network 10.10.10.0 0.0.0.255 area 0


Der VRF Routingprozess:
router ospf 2 vrf zif
router-id 20.20.20.20
log-adjacency-changes
network 20.20.20.0 0.0.0.255 area 0
network 102.102.102.2 0.0.0.0 area 0


Die Routing Tabelle schaut danach wiefolgt aus::
global

VRF_Router#sh ip route
[...snip...]

Gateway of last resort is not set

102.0.0.0/24 is subnetted, 1 subnets
C 102.102.102.0 is directly connected, Tunnel102
200.200.200.0/32 is subnetted, 1 subnets
C 200.200.200.200 is directly connected, Loopback200
100.0.0.0/32 is subnetted, 1 subnets
C 100.100.100.100 is directly connected, Loopback100
20.0.0.0/24 is subnetted, 1 subnets
O 20.20.20.0 [110/11112] via 102.102.102.2, 00:24:29, Tunnel102
10.0.0.0/24 is subnetted, 1 subnets
C 10.10.10.0 is directly connected, FastEthernet0/0

vrf

Router#sh ip route vrf zif

Routing Table: zif
[...snip...]

Gateway of last resort is not set

102.0.0.0/24 is subnetted, 1 subnets
C 102.102.102.0 is directly connected, Tunnel201
20.0.0.0/24 is subnetted, 1 subnets
C 20.20.20.0 is directly connected, FastEthernet0/1
10.0.0.0/24 is subnetted, 1 subnets
O 10.10.10.0 [110/11112] via 102.102.102.1, 00:26:19, Tunnel201




Und das wars auch schon!
Nun ist es möglich vom grt_host direkt den vrf_host zu pingen und umgekehrt.

Bei Fragen nutzt einfach die Kommentarfunktion

Bis dann,
Zif

Donnerstag, 26. November 2009

DE - IOS HTTP Server "hacking" Vorsorge

So nachdem ich heute 4 Firmen angerufen hab und denen mitgeteilt hab das die Konfiguration Murks ist, poste ich die ganze Geschichte auch noch in deutsch.

Vor kurzem bin ich über eine Suchmaschine gestolpert mit der man auch was finden kann. Dabei ging es aber nicht um den Inhalt der Webseite sondern mehr das drum herum. So war es möglich nach dem Webserver und deren Version zu suchen.

Gesagt getan auf meine suche nach Cisco IOS Webservern erhielt ich über 67.000 Treffer. Ouch,. mal ehrlich 67k wieso müssen die Webinterfaces haben und vor allem warum müssen die via Publik IP Verfügbar sein.

Als ich so durch die liste surfte stellt ich fest das einige nicht mit der 401 sondern mit einer 200 als HTTP Statuscode antworteten. Einen von den Routern angeklickt und schon hat sich gezeigt. Prima die Systeme arbeiten ganz ohne Authentifizierung.

Ich hab die Suchkriterien angepasst und von 67.000 Routern brauchen mehr als 1200 Kein Passwort sind also ungeschützt.

Da es über die Weboberfläche möglich ist ein show cdp neigbor abzusetzen zeigte sich das hinter den Routern noch andere Cisco Komponenten hängen. Ich hoffe das die nicht so lausig konfiguriert sind wie der Router.

Um sicher zu sein, gilt daher entweder eine Access Liste auf den Webserver binden:

access-list 1 permit X.X.X.X ! x.x.x.x= your management network
ip http access-class 1

oder noch besser:

no ip http server


cheers
NWG

EN - IOS HTTP Server hacking prevention

OK I need to post this since this is really scary to me.

A few days ago I stumbled upon a quite cool search engine (no I will not post the URL) what was really interesting is that it did not search for the content of the website it was more interested in the server replies like Server Version HTTP status code.

Since Cisco routers and switches offer a web server for configuration I searched for Cisco IOS servers. The result was scary (it gets worse a bit later) more than 67.000 routers and switches operating the HTTP server are public available. Their may be reasons why routers should be available via HTTP from the Internet but 67000 router people you are kidding me.
I checked some of them and most look like real routers/ switches.

But while browsing the list I found a few routers responding with Cisco IOS Server AND HTTP 200 code. (most of the routers respond with 401 authorization required). I tried one of these and great I could log in and have a look at the configuration passwords etc.

I decided to redefine my search and the result was: from those 67.000 routers 1200 are not requiring authorization of any kind, great.

A quick show cdp neigh showed that most of them I've checked are connected to other Cisco devices. I hope that these devices aren't configured that poorly.

To get out of this list just bind an access list to you HTTP Server,


access-list 1 permit X.X.X.X ! x.x.x.x= your management network
ip http access-class 1


or even better do a

no ip http server


hope some of those guys owning these routers fix them (fast)


Cheers
NWG

Samstag, 21. November 2009

DE - "Router on a Stick" oder "Inter VLAN routing" mit ASA 5505

Da ich eben beim durchschauen der Google Auswertung unserer Seite festgestellt hab das mehrere Abfragen bzgl. ASA 5505 und Router on-a-stick kamen will ich hier ein kurze Antwort posten.

Die Frage ob es überhaupt geht, ist mit einem klaren Ja und Nein zu beantworten. Die ASA 5505 bietet in der Basis Lizenz 3 Vlans an und enthält keine Trunk Option. Das bedeutet in der Basis Lizenz geht ein Router on-a-stick nicht, da ja on-a-stick bedeutet, rein und raus am selben physikalischen Interface.
Hat man die erweiterte (Plus) Lizenz gekauft, hat man mehr Vlans und kann auch Trunks bauen. Dies erfolgt dann ähnlich der Konfiguration von Trunk Ports auf einem Switch:

Anlegen der entsprechenden Vlan Interfaces


interface vlan 10
nameif IF_outside
security-level 0
ip address 172.20.2.1 255.255.255.0
no shutdown

interface vlan 20
nameif IF_Core
security-level 100
ip address 172.20.3.1 255.255.255.0
no shutdown

interface vlan 30
nameif IF_MGMT
security-level 99
ip address 172.20.4.1 255.255.255.0
no shutdown

interface vlan 30
nameif IF_Marketing
security-level 20
ip address 172.20.5.1 255.255.255.0
no shutdown


Aufbauen des „Sticks" Interfaces

interface ethernet 0/0
description ### Stick Interfaces ###
switchport mode trunk
switchport trunk allowed vlan 10,20,30
no shutdown


Access-listen können wie gewohnt eingebunden werden und auch der Rest arbeitet genau wie erwartet. Am anderen Ende der Verbindung von Ethernet 0/0 sollte ein Switch dann den Trunk wieder aufteilen. Routing erfolg gemaess den richtlinien der ASA bzgl der Security-Level der einzelnen Vlans (vom hohen Level zum niedrigen ist default erlaubt, andersherum muss freigeschalten werden)

Vielleicht eine Anmerkung, die 5505 hat 8 Ports, daher ist eigentlich eine on-a-stick Konfiguration nur bedingt sinnvoll. Ich persönlich würde zumindest die WAN Seite von den Internen Ports trennen. Aber das ist nur meine Meinung.
Anmerkung 2, auf den anderen ASA 55x0 funktioniert das bauen von Router on-a-stick Konfigurationen fast genau wie bei einem Cisco Router.

Cheers NWG

EN - Layer 2 redundancy with routers

Yesterday I was playing around with dynamips and found a really cool solution to a problem that well not exists. But after thinking a while I found a situation at a customer location that could make use of my idea.

I'll describe the situation.
The customer has one core switch located in his main building and across his (large) campus a few distribution switches. All switches are layer 2 only so no routing stuff. Since the network small (a view servers and some hand full of workstations) the customer uses one class C subnet (eg 172.20.3.0 /24)
The problem is, the internet access is located near 2 edge switches but far from the main building. So the Edge Router is placed with one WAN interfaces and 2 LAN interfaces one connecting to each edge switch
This looks like this diagram:


So this leads to one obvious question, how do you provide on those LAN interfaces ONE gateway IP (remember no dynamic routing plain default gateway)
The solution is easy: build a bridge group and add a Bridged Virtual Interface (BVI)

How this is done? Just a second I'll show you.
Start with the usual fluff: name, domain, ntp whatever you need and want.

enable
configure terminal

hostname EdgeRouter
ip domain-name playingwithnetworks.com
no ip domain-lookup

line console 0
logging synchronous
password #sicher01
login

line vty 0 4
logging synchronous
password #sicher01
login
transport input telnet


OK you should add of course logging, ntp, ssh security and so on but this would be to much.

Now the next step becomes interesting.
Apply the bridging settings


bridge irb
! enables bridging with routing

bridge 1 protocol ieee
! tells the router what protocol to bridge on bridge group 1

bridge 1 route ip
! tells the router what protocol to route (not what routing protocol )

! configure your LAN interfaces
interface fastEthernet 0/0
description ### LAN Link to EdgeSwitch01 ###
bridge-group 1
! add interface to bridging group 1

! configure your LAN interfaces
interface fastEthernet 0/1
description ### LAN Link to EdgeSwitch02 ###
bridge-group 1
! add interface to bridging group 1

interface BVI 1
description ### routing interface of bridge group 1 ###
ip address 172.20.3.1 255.255.255.0
no shutdown


Next thing you need is to configure the interface to the ISP, this is usual stuff done about a hundred of times and set your default route.

interface Serial0/0
description ### ISP Uplink ###
ip address 172.20.4.2 255.255.255.252
no shutdown

ip route 0.0.0.0 0.0.0.0 Serial0/0 172.20.4.1

Well that's it !!

To verify that all is working, issue a show spanning-tree on your EdgeRouter

Bridge group 1 is executing the ieee compatible Spanning Tree protocol
(…)
Port 3 (FastEthernet0/0) of Bridge group 1 is forwarding
(...)
Port 4 (FastEthernet0/1) of Bridge group 1 is blocking
(…)

By now you know that what we've done is, we've turned the LAN side of our Router into a switch and let spanning tree do the path selection. We could have bought a switching module for our router or created a third single point of failure (1st is only one CoreSwitch, 2nd is only one Edge Router) and set up a physical switch between the edge switches and our router.

Montag, 16. November 2009

DE – SDM mit Dynamips Routern (IINS Vorbereitung)

Das wird ein kurzes Zwischenpost da das Thema an sich recht einfach ist.
Jeder der sich auf den IINS Test von Cisco vorbereitet weiß das der SDM zu den Dingen gehört die zwingend notwendig sind, um bei dem Test was zu erreichen. Wer aber (wie ich) nicht unbedingt so viel Geld in die Hand nehmen will für echte Routerhardware, der nutzt vermutlich Dyanmips, Dynagen bzw GNS3. Doch dann stellt sich die Frage, wie bekommt man den SDM auf einem virtuellen Router zu laufen , dem gehen wir hier nach.

Vorbereitung: In meinem Aufbau, musste ich eine VM meines dynaBuntu anlegen und diese mit dem Router LAB_R001 verbinden (das werden die meisten von euch nicht machen)

Schritt 1: Vorbereitung des Virtuellen Routers mit den üblichen Einstellungen wie Hostnamen Interface IPs etc.

Schritt 2: Einschalten des HTTP Servers des Routers mittels des Befehls

ip http server

Jetzt sollte die Konfiguration des Routers in etwa so aussehen (defaults und unwichtige Informationen wurden raus gelassen)


service password-encryption
!
hostname R_LAB_SDM_01
!
enable secret 5 $1$51xU$t3K/gEBYlwwTYeTEdCqTy/
!
ip domain name playingwithnetworks.com
interface FastEthernet0/0
description ### Link to LAB_R001 and HyperV ###
ip address 172.20.1.3 255.255.255.0
speed 100
full-duplex
!
interface FastEthernet0/1
no ip address
shutdown
duplex auto
speed auto
!
ip http server
!
line con 0
password 7 XYZXYZ
logging synchronous
login
line vty 0 4
password 7 YZXZY
logging synchronous
login
transport input telnet


Schritt 3: Eine Kopie des SDM besorgen – das macht sich am besten von der Cisco Seite, wofür aber ein CCO Account gebraucht wird

Zwischenschritt 4: Es ist sicherzustellen das der Router die VM oder den PC erreichen kann und umgekehrt, das funktioniert am besten mit einem Ping zwischen den Geräten..

Schritt 4: Installation des SDM

Welcome Window – klick next
License Agreement – anklicken “I accept the terms of agreement” & klick next
Install Options: - auswählen der Option : “This Computer” & klick next
Choose Destination Location – klick next (oder einen anderen Pfad wählen)
Ready to Install the Program – klick install

Sobald die Installation beendet ist findet sich auf dem Desktop der Workstation ein Icon mit dem Namen: “Cisco SDM” das bitte durch doppelklick starten. Nach Eingabe der guiltigen IP (bei mir 172.20.1.3) sollte folgendes Bild erscheinen (oder so ähnlich)



Das war es erst mal, danke für die Aufmerksamkeit :D

cheers NWG
PS Ein etwas ausführlichers Video zum Thema SDM auf GNS3 von Blindhog.net

EN - SDM on Dynamips Routers (IINS preparation)

This post will be quite short because the topic is pretty easy.
To prepare for the IINS exam you need to have a router with SDM support. If you (like me) don't want to spend the money on real hardware you'll use dynamips/dynagen/gns3.

So how can you run a dynamips router with SDM support. Well this is pretty straight forward
pre-step 1:
In my setup I've had to set up a new dynaBuntu VM and connect this VM to LAB_R001 (you'll probably not have to do this)
Step 1: prepare your router with the usually fluff: set up interfaces, users hostname etc ..
Step 2: add http and if desired https server capability to the router setup

ip http server


The configuration of your dynamips router could look like this (defaults have been skipped) one by now:


service password-encryption
!
hostname R_LAB_SDM_01
!
enable secret 5 $1$51xU$t3K/gEBYlwwTYeTEdCqTy/
!
ip domain name playingwithnetworks.com
interface FastEthernet0/0
description ### Link to LAB_R001 and HyperV ###
ip address 172.20.1.3 255.255.255.0
speed 100
full-duplex
!
interface FastEthernet0/1
no ip address
shutdown
duplex auto
speed auto
!
ip http server
!
line con 0
password 7 XYZXYZ
logging synchronous
login
line vty 0 4
password 7 YZXZY
logging synchronous
login
transport input telnet


Step 3: get you copy of the SDM from Cisco (CCO required)

pre-step 4: make sure your dynamips Router can ping your SDM host and vice versa
Step 4:: install the SDM on a PC (or VM)

Welcome Window – click next
License Agreement – select “I accept the terms of agreement” & click next
Install Options: - choose the option: “This Computer” & click next
Choose Destination Location – click next (or select an other location)
Ready to Install the Program – click Install

After the installation has finished you've got a new icon on your desktop called: “Cisco SDM”, double click the icon and enter the IP of your dynamips router. If you've followed this guide you should be able to login to your router via SDM and get something like this screenshot.


Cheers and Thanks for your attention.
NWG

PS a little more detailed movie about the SDM on GNS3 topic, just click to get to the blindhog Video

DE - HyperV dynamips Problem

So jetzt auch in Deutsch, hat etwas gedauert aber das Wochenende war anstrengend.

Was ist also passiert? Ich hab ein wenig an meinem LAB Setup herum gebastelt und DynaSlax gegen ein selbst gebautes Ubuntu Relase getauscht. Ich hab das Image auf dynaBuntu getauft, das Image ist ausschließlich ein Text Ubuntu mit Dynamips/ Dynagen sowie tcpdump und ssh ausgestattet, der Rest wurde raus geschmissen.

Das ganze läuft, wie in meinem letzten Blog Eintrag beschrieben, auf HyperV unter Windows Server 2k8. Vorgestern habe ich dann ein Szenario erstellt, bei dem die Router in dynaBuntu mit der echten Hardware meines Netzes kommunizieren können müsse.
Schon während des installieren des BGP Router Setups zeigte sich, dass ich von meiner ASA zwar alle Systeme entlang des Netzwerkpfades, inklusive der dynaBuntu Maschine erreichen kann (Home-SW002, Core01, LAB-R001), nur die BGP-Router nicht. Interessanterweise zeigte ein show cdp neighbors das der BGP Router LAB-R001 sah, aber umgekehrt nicht.
TCPdump auf der dynaBuntu Maschine zeigte das ARP Requests an den BGP-Router per Broadcast angenommen und beantwortet wurden, aber auf der LAB-R001 Seite des HyperV vSwitches nichts mehr ankam. Es sah so aus, als wäre eine Art Port-Security auf dem HyperV vSwitch aktiv.

Es dauerte noch eine Weile bis ich in den Einstellungen der VM die Option “ Enable spoofing of MAC addresses” fand.

Nachdem die VM ausgeschalteten war und die Einstellungen angepasst waren, sahen sich meine Systeme wie gewollt und die Routen verteilten sich wie erwartet im Netz.

Beste Grüße
NWG

Samstag, 14. November 2009

EN - HyperV dynamips problem

Well well well, I've posted some days ago my new lab setup. Today I ran into a strange problem. I replaced today dynaslax with my dynaBuntu a self build Ubuntu release. DynaBuntu focuses on dynamips / dynagen and only ssh is running else, no fluff stuff :D

Anyway I deployed a BGP router scenario that should interact with my real hardware firewall.
Strangely I could ping from my ASA all important Ips: Core01, LAB-R001 and the dynaBuntu instance but I could not ping the router in dynaBuntu (BGPRouter). I was even more surprised when my BGPRouter showed that he could build a CDP connection with LAB-R001.

Some times later I noticed that LAB-R001 could not resolve the IP of my BGPRouter. ARP requests were send and tcpdump showed that BGPRouter responded as expected. The next step showed the ARP response disappeared somewhere in the HyperV vSwitch. So I needed to find a way to allow this setup.

After a while I found the check box in the VM network settings that specified
“Enable spoofing of MAC addresses”, it looks like the HyperV vSwitch is running some kind of port-security settings.

Shutting down the VM, changing this setting and hurray I could ping my router and my routes where redistributed as desired.

Montag, 9. November 2009

DE - LAB Update

Ok es ist wieder eine Weile her, dass ich gepostet habe (passiert mir anscheinend öfter). Es gibt mehrere Grunde warum ich nicht gepostet hab. Zum einen habe ich mich seit August mit mehreren Trainings zum Thema CCNA und CCNA Security befasst. Mittlerweile habe ich den CCNA Test bestanden und bald kommt der CCNA Security dran. Danach geht es zum CCSP Training das ich hoffentlich auch irgendwann im Januar 2010 hinter mich gebracht hab.

Der zweite Grund ist, das ich mein Lab überarbeiten musste und zwar von Grund auf. Grund dafür ist das mein Lab bei weitem nicht den Anforderung entsprochen hat, die ich für meine Kunden brauchte und das ich damit keine CCNA Security Labs durchführen konnte.

Deshalb hier ein kurzer Überblick über mein jetziges LAB Setup:



Anbei eine Erklärung der wichtigsten Maschinen und Systeme:

Elysium:
- eine XP64 Arbeitsstation mit GNS3 und VMware Server 1.8
- die meisten kleinen Labs erarbeite ich hier (quick und dirty)
- bei großen Labs dient die Maschine auch als zusätzlicher Hypervisor
- beide Netzwerkkarten sind am Main und Lab Switch angebunden

Core01
- Win2k8 x64 (64 GB RAM 2x4 Core CPUs) – merkt man das ich stolz auf die Box bin
- alle VMs laufen via Hyper V
- beide Netzwerkkarten sind am Main und Lab Switch angebunden

VM Server:
Active Directory Server und AD Child Server
- um sich gegen AD Szenario zu authentifizieren
CA Server
- MS CA Server für PKI Szenarios zwischen den Routern
Nagios
- Nagios überwacht meine Labs und ein paar echte Maschinen
Radius
- Free Radius um Radius auth. zu simulieren
Tacacs
- TACACS+ um Tacacs auth. zu simulieren (noch nicht fertig eingerichtet)
SDM
- Die XP Maschine stellt den SMD für das CCNA Security Labs zur Verfügung
Workstation
- nur eine Testmaschine für VPN Clients et
MAIL
- Sendet Mails von Nagios
Cisco MARS
- eine virtuelle MARS Appliance (auch noch nicht ganz fertig)
Nicht aufgeführte Systeme:
Cisco ACS 4/5 (trial), CUCM 7/ 5

LAB-R001
- virtueller 7200 Router mit IOS 15.0.1.M
- komplett mit FE Anschlüssen ausgerüstet
- jeder FE Anschluss ist an ein LAB angebunden

LAB-SW01/SW02/SW03
- Cisco Lab Switches von Ebay
- Catalyst 2950 12.1.22-EA13

Home-SW02
- Netgear 8 Port Gigabit Switch

Router Labs
Jedes Router Lab läuft in einer eigenen Dynaslax VM die so viele Ressourcen wie nötig zugewiesen bekommen.

Ich würde mich über Anregungen Kommentare und Ideen zu meinem Labaufbau freuen.
Das war's fürs erste.

cheers NWG

DE- NEWS: Neue Bloggerin bei Playingwithnetworks

Hallo liebe Leser,

ich hab eine gute Freundin von Zif und mir dazu überreden können, bei uns hier mitzuposten und ihre Erfahrung im Netzwerkbereich allen mitzuteilen. Sie hat vor kurzen ihr CCNA Training absolviert und übt sich jetzt langsam in die Ciscowelt ein.

Ich bin wirklich gespannt was sie hier als erstes postet.

Cheers NWG

EN - NEWS: New Author

Hi guys,

I was able to convince a good friend of us (Zif and me) to post here her experience on network stuff. She is pretty new and had her first CCNA trainings some weeks ago.

I'm quite excited what her first post will be.

Cheers NWG

EN - Lab update

It has been a while since I made my last post. This was due to several reasons.
First of all I was doing some training for my CCNA and CCNA Sec certification. I've already passed the CCNA stuff and now I'm up to do the CCNA Sec test.
Later on I've planed to do the CCSP tests, hopefully I'll have them finished in January 2010.

The second reason was that I've restructured my lab from the scratch. This was necessary since the old setup did not reflect the environments I've had to face at my customers location and it was not possible to train for the CCNA Sec stuff. :D

So here is a quick overview of my current lab setup


I'll go through the picture and explain the most important machines:

Elysium:
- Is a XP64 workstation running GNS3 and VMWare Server 1.8
- most small labs and tests are done here
- for larger labs this box is used as additional hypervisor
- 2xNICs connected to my main and my lab switch

Core01
- Win2k8 x64 (64 GB RAM 2x4 Core CPUs) – I'm happy with this box :D
- Hyper V is running all VMS
- 2xNICs connected to my main and my lab switch

VM Servers:
Active Directory Server and AD Child Server
- for authentication tests with Active Directory
CA Server
- MS CA Server to do the PKI stuff for router to router authentication
Nagios
- Nagios is monitoring my lab networks and some of my real workstations
Radius
- Free Radius implementation for authentication testing
Tacacs
- TACACS+ for Tacacs testing (still in deployment)
SDM
- Well this XP Machine provides the SDM that is required for CCNA Sec
Workstation
- This is just a testing machine (VPN client and so on)
MAIL
- Reporting from Nagios
Cisco MARS
- a virtual MARS appliance (not really deployed yet)
Machines not listed:
Cisco ACS 4/5 (trial), CUCM 7/ 5

LAB-R001
- virtual 7200 running IOS 15.0.1.M
- stuffed with lots of FE interfaces
- each FE connects to a router lab

LAB-SW01/SW02/SW03
- Cisco lab switches from Ebay
- Catalyst 2950 12.1.22-EA13

Home-SW02
- Netgear 8 Port Gigabit Switch

Router Labs
Each router lab is a own VM running Dynaslax with as much resources allocated as needed

I would be thank full for any comments and other ideas about the lab setup. Even for questions :D

Thats it for now :D
cheers NWG

Freitag, 23. Oktober 2009

DE - "ASDM" Befehlseinschränkung

Ich hab eine ganze Weile nichts mehr gepostet und komme auch im Moment nicht wirklich dazu, daher mach ich mich mal ans übersetzen von älteren Artikeln, Es ist ja nicht so das wir hier nicht eigentlich Deutsch und Englisch anbieten wollten.

Die Anfrage um die es geht kam damals via Twitter und es war einfach grundlegend nur die Frage, Kann man Nutzern im ASDM rechte beschneiden, so das sie nur Teile der Konfiguration sehen können.. Kurz um: “Ja es geht”

Anbei hab ich eine Quick und Dirty Konfiguration zusammengeschustert die zeigt wie es geht. Ich hab das ganze auf realer Hardware getestet (ASA 5505 8.0.3 ASDM 6.2.1) mit echten VPN settings. Wie gesagt es geht und die Nutzer können nur die Settings im ASDM betrachten und nicht ändern.


PIX Version 8.0(3)
!
hostname PIX
domain-name playingwithnetworks.com
enable password 123 encrypted
!
interface Ethernet0
shutdown
no nameif
no security-level
no ip address
!
interface Ethernet1
nameif inside
security-level 100
ip address 192.168.188.2 255.255.255.0
!
!
!
dns server-group DefaultDNS
domain-name playingwithnetworks.com
pager lines 24
logging enable
logging buffered debugging
logging asdm errors
mtu inside 1500
icmp unreachable rate-limit 1 burst-size 1
asdm image flash:/asdm-621.bin
!
!
!

dynamic-access-policy-record DfltAccessPolicy

aaa authentication http console LOCAL
aaa authorization command LOCAL
! THIS IS IMPORTANT IF YOU MISS THIS COMMANDS THE THING WILL NOT WORK

http server enable
http 192.168.188.0 255.255.255.0 inside
!
!
!
username VPNSUPPORT password 123 encrypted priv 2
!
!
privilege show level 2 mode exec command running-config
privilege show level 2 mode exec command version
privilege show level 2 mode exec command interface
privilege show level 2 mode exec command logging
privilege show level 2 mode exec command aaa
privilege show level 2 mode exec command crypto
privilege show level 2 mode exec command vpn-sessiondb
privilege show level 2 mode exec command vpnclient
privilege show level 2 mode exec command vpn
privilege show level 2 mode exec command blocks
privilege show level 2 mode exec command webvpn
privilege show level 2 mode exec command compression
!
prompt hostname context


In der vorangegangene Konfiguration wird dem User VPNSUPPORT das Recht eingeräumt, VPN Informationen abzurufen, ohne sie ändern zu können.
Um andere Bereich freizugeben oder zu Sperren kann man einen Trick anwenden.


debug http enabled at level 250


Dann clickt man mit einem User auf die Bereiche die man sehen will und im Debug sieht man die URL die aufgerufen wird. Anhand dieser Information kann die CFG oben angepasst werden.


HTTP: processing GET URL '/admin/exec/show+ipv6+neighbor'


Im Beispiel kann Ipv6 für Level 2 User freigegeben werden.

HTH
Cheers NWG

Mittwoch, 1. Juli 2009

EN - dynamic routleaking or Inter VRF routing

dynamic route leaking or routing protcols between global routing table (GRT) and VRFs

Hey Everybody,

last time I showed some exampel config for static roue leaking and thought that dynamic routing between GRT and VRF can't be that hard ... how green.
After some hard trys and help from other people I will now show you, how to exchange routes between GRT and VRF-RT dynamicly.
There is no chance to do a normal redistrubution between routing processes if one is the global one.
If you try so, you'll get some cryptic message like
VRF -> GRT [code]%OSPF process 1 is attached to Default-IP-Routing-Table[/code]
GRT -> VRF [code]OSPF process 22 already exists and is attached to Default-IP-Routing-Table[/code]

How ever, now we need to get this tricked. Therefor we use tunnel interfaces and some loopbacks.

This is my tiny topology:


The global Client and the VRF_Client are again just some as host missused routers with one IP address and a default route pointing on the outgoing IF.
grt_host
[code]interface FastEthernet0/0
ip address 10.10.10.10 255.255.255.0
ip route 0.0.0.0 0.0.0.0 10.10.10.1 FastEthernet0/0[/code]

vrf_host
[code]interface FastEthernet0/1
ip address 20.20.20.20 255.255.255.0
ip route 0.0.0.0 0.0.0.0 20.20.20.1 FastEthernet0/1[/code]

Now are some basic config for the vrf_router needed:

Create a vrf:
ip vrf zif
rd 1:1
route-target both 1:1


Link to grt_host:
interface FastEthernet0/0
ip address 10.10.10.1 255.255.255.0
speed 100
full-duplex


Link to vrf_host:
interface FastEthernet0/1
ip vrf forwarding zif
ip address 20.20.20.1 255.255.255.0
speed 100
full-duplex


This all was no rocket science yet, until now ;)

First thing to figure out: how to outsmart the limitations of design?

One credential are "Tunnel-Interfaces", an other one "loopbacks".

In sum we need one tunnel-IF per VRF and GRT plus one loopback for each.

Both loopbacks are left in GRT:
VRF Router
interface Loopback111
ip address 111.111.111.111 255.255.255.255

interface Loopback222
ip address 222.222.222.222 255.255.255.255


Now we need the correspondent tunnel IFs.
The global one:
interface Tunnel102
ip address 100.100.100.1 255.255.255.0
tunnel source 111.111.111.111
tunnel destination 222.222.222.222

And the VRF one:
interface Tunnel201
ip vrf forwarding RED
ip address 100.100.100.2 255.255.255.0
tunnel source 222.222.222.222
tunnel destination 111.111.111.111


What this is doing: pointing with the tunnel 201 to a GRT loopback with a source in GRT putting itself in a VRF. It sounds, strange, it looks strange, it feels strange, BUT it works ;)

Now you have sweet networks which you can add to routing processes like OSPF.

The global routing process:
router ospf 1
router-id 10.10.10.10
log-adjacency-changes
network 100.100.100.1 0.0.0.0 area 0
network 10.10.10.0 0.0.0.255 area 0


The VRF routing process:
router ospf 2 vrf zif
router-id 20.20.20.20
log-adjacency-changes
network 20.20.20.0 0.0.0.255 area 0
network 102.102.102.2 0.0.0.0 area 0


The routintg tables looks like this:
global

VRF_Router#sh ip route
[...snip...]

Gateway of last resort is not set

102.0.0.0/24 is subnetted, 1 subnets
C 102.102.102.0 is directly connected, Tunnel102
200.200.200.0/32 is subnetted, 1 subnets
C 200.200.200.200 is directly connected, Loopback200
100.0.0.0/32 is subnetted, 1 subnets
C 100.100.100.100 is directly connected, Loopback100
20.0.0.0/24 is subnetted, 1 subnets
O 20.20.20.0 [110/11112] via 102.102.102.2, 00:24:29, Tunnel102
10.0.0.0/24 is subnetted, 1 subnets
C 10.10.10.0 is directly connected, FastEthernet0/0

vrf

Router#sh ip route vrf zif

Routing Table: zif
[...snip...]

Gateway of last resort is not set

102.0.0.0/24 is subnetted, 1 subnets
C 102.102.102.0 is directly connected, Tunnel201
20.0.0.0/24 is subnetted, 1 subnets
C 20.20.20.0 is directly connected, FastEthernet0/1
10.0.0.0/24 is subnetted, 1 subnets
O 10.10.10.0 [110/11112] via 102.102.102.1, 00:26:19, Tunnel201



And thats it! Now you are able to ping from you grt_host straight through the vrf_host.

For questions just use the comments.

so long,
Zif

EN - Upcomming: dynamic route leaking or routing protcols between global routing table (GRT) and VRFs

Hey everyone,

due to NWG asked me for this I started investigation about a way to do some dynamic redistribution between a VRF and the GRT. Everyone trying to solve this by a simple "redistribute" command in the routing process knows, thats that is not the way ;)

At the moment I am preparing the entry for this blog. At this point big thanks to "conspathas" from the dynamip forum for his time explaining this way.

See ya soon,
Zif

Update 09-07-10: due to heavy load @work there is a delay in publication, please stand by :)

Montag, 22. Juni 2009

EN - "ASDM" command restrictions

This one I just received via Twitter (Well i grabbed it from my search stream)
Can you restrict ASDM so that users can only view parts of the configuration.

Well "Yes you can"
I´ve created a quick and dirty configuration that should reflect this settings.
Update tested on real hardware with real VPN connections (ASA 5505 8.0.3 ASDM 6.2.1) Works quite well, users can´t reset or disconnect only view. Some commands added to view all VPN settings on ASDM.


PIX Version 8.0(3)
!
hostname PIX
domain-name playingwithnetworks.com
enable password 123 encrypted
!
interface Ethernet0
shutdown
no nameif
no security-level
no ip address
!
interface Ethernet1
nameif inside
security-level 100
ip address 192.168.188.2 255.255.255.0
!
!
!
dns server-group DefaultDNS
domain-name playingwithnetworks.com
pager lines 24
logging enable
logging buffered debugging
logging asdm errors
mtu inside 1500
icmp unreachable rate-limit 1 burst-size 1
asdm image flash:/asdm-621.bin
!
!
!

dynamic-access-policy-record DfltAccessPolicy

aaa authentication http console LOCAL
aaa authorization command LOCAL
! THIS IS IMPORTANT IF YOU MISS THIS COMMANDS THE THING WILL NOT WORK

http server enable
http 192.168.188.0 255.255.255.0 inside
!
!
!
username VPNSUPPORT password 123 encrypted priv 2
!
!
privilege show level 2 mode exec command running-config
privilege show level 2 mode exec command version
privilege show level 2 mode exec command interface
privilege show level 2 mode exec command logging
privilege show level 2 mode exec command aaa
privilege show level 2 mode exec command crypto
privilege show level 2 mode exec command vpn-sessiondb
privilege show level 2 mode exec command vpnclient
privilege show level 2 mode exec command vpn
privilege show level 2 mode exec command blocks
privilege show level 2 mode exec command webvpn
privilege show level 2 mode exec command compression
!
prompt hostname context


So this should be enough to show your user VPNSUPPORT information about the status of your VPN connection. If you need further information you could use the following trick: switch on debug:


debug http enabled at level 250


and then click with you low priv user to the location of the ASDM you need. You will get the output of what URL was requested and from this you can see what commands you need to enable
for example if you click on monitor interfaces you will get along with others the debug output:


HTTP: processing GET URL '/admin/exec/show+ipv6+neighbor'


With this information you can now enable show ip6 for level 2 if you need.

Hope that helps
NWG

Montag, 18. Mai 2009

EN/DE - Configuration Registers on Routers

Hey out there,

due to I stubled over some wrong set config registered in last time and had not all settings in mind, I found a nice cisco document revealing the secrets about the crytic hex values:

Use of the Configuration Register on All Cisco Routers

Have fun with it,
Zif

Hallo zusammen,

letztens bin ich bei einem Kunden über falsch gesetzte config registers gestolpert und da ich mir nicht sämtliche Werte merken kann, habe ich ein schickes Cisco-Dokument gefunden, welches die Bedeutung hinter den kryptischen Hex-Zahlen verrät:

Use of the Configuration Register on All Cisco Routers

Habt Spaß damit,
Zif

Donnerstag, 7. Mai 2009

DE - ASA 8.2 Release endlich herunterladbar

Hi,

Ich lade im Moment das ASA 8.2(1) Image herunter um es auf einer meiner Testboxen zu deployen. Der Download ist wie immer unter http://www.cisco.com/cgi-bin/tablebuild.pl/asa zu finden (CCO Account wird benötigt)
Ich halt euch auf dem laufenden wie das Upgrade lief.

Cheers NWG

EN - ASA 8.2 Release ready for download

Hi all,
I’m currently downloading ASA 8.2(1) Release to deploy it on one of my testing boxes. You can find the download from http://www.cisco.com/cgi-bin/tablebuild.pl/asa (CCO with Contract required)
I'll tell you how the upgrade went.

Cheers NWG

Mittwoch, 29. April 2009

EN - "Route Leaking" or Inter VRF routing

Heyho,

today I want to give a small guide, how to configure inter-VRF (VRF = VPN Routung and Forwarding) routing.
The Cisco documentation I found for this is more likely rocket science than a working guide.

The task was to implement static routes on one device routing between different VRFs.
I used following network map:

Both routers "VRF_1" and "VRF_2" are only hosts with only an IP and a default route pointing at the outgoin interface:
VRF1
interface FastEthernet0/1
description Link to VRF_Router
ip address 10.0.100.2 255.255.255.0
speed 100
full-duplex
!
ip route 0.0.0.0 0.0.0.0 FastEthernet0/0

VRF2
interface FastEthernet0/1
description Link to VRF_Router
ip address 10.0.200.2 255.255.255.0
speed 100
full-duplex
!
ip route 0.0.0.0 0.0.0.0 FastEthernet0/1


Now to the routing part:
At first you need an basic VRF lite config:
ip vrf vrf1
rd 1:1
route-target export 1:1
route-target import 1:1
!
ip vrf vrf2
rd 2:2
route-target export 2:2
route-target import 2:2

The two commands route-target export 2:2 and route-target import 2:2 can be summed up with the command "route-target both. In your config this will be automaticaly replaced with to commands shown.

In addition to this there is some IF configuration:
interface FastEthernet0/0
ip vrf forwarding vrf1
ip address 10.0.100.1 255.255.255.0
speed 100
full-duplex
!
interface FastEthernet0/1
ip vrf forwarding vrf2
ip address 10.0.200.1 255.255.255.0
speed 100
full-duplex


The command ip vrf forwarding [vrf_name] associates the IF into a VRF so the traffic is marked up.

Now you need to set up the routing. There for you only need a route for each VRF pointing on the IF and Next-Hop-IP of the targeted VRF.
ip route vrf vrf1 10.0.200.0 255.255.255.0 FastEthernet0/1 10.0.200.2

ip route vrf vrf2 10.0.100.0 255.255.255.0 FastEthernet0/0 10.0.100.2


And thats all. If you issue the command show ip route.
VRF_Router#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

VRF_Router#

You'll see an empty global routing table. If you add show ip route vrf [vrf_name]. As example only the output of one vrf:
VRF_Router#show ip route vrf vrf1

Routing Table: vrf1

[... snip ...]

Gateway of last resort is not set

10.0.0.0/24 is subnetted, 2 subnets
C 10.0.100.0 is directly connected, FastEthernet0/0
S 10.0.200.0 [1/0] via 10.0.200.2, FastEthernet0/1
VRF_Router#

Note that it says explictly which routing table it's showing you and you have one extra routing table for each VRF.




If there are any open questions left, just use the commenting funtion


Regrads,
Zif

Freitag, 24. April 2009

DE - Task 2.2.1 hinzufügen der VPN Edge Geräte

Entschuldigung, dass das letzte Post zum Thema so lang her ist, ich hoffe es stört nicht allzu sehr. Prinzipiell sind die Konfigs fertig nur das dokumentieren nervt furchtbar :)
Wir fangen mit unserem Netzwerk aus dem letzten Task an, das heißt wir haben 3 Router und eine PIX die untereinander OSPF sprechen (LINK).

Zuerst werden wir die VPN Endgeräte hinzufügen, so das wir später unser Sicherheitskonzept auf das ganze Netzwerk ausrollen können.

Die Router sind an sich sehr einfach konfiguriert und ich werde nicht tiefer darauf eingehen. Wir konfigurieren wie übliche, die Interfaces für externe und interne Kommunikation, OSPF und zum Schluss sollten wir einen blick auf die anderen Router werfen ob die Routen alle sauber übertragen werden.
Näheres zum Konfigurieren der Router lässt sich unter Task 2.1 finden.

VPN Edge Router 1 - R_VPN_1

version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R_VPN_1
!
boot-start-marker
boot-end-marker
!
no aaa new-model
no logging console
no logging monitor
!
memory-size iomem 5
ip cef
!
no ip domain lookup
ip domain name Task2.local
!
multilink bundle-name authenticated
!
archive
log config
hidekeys
!
interface Loopback0
description ### Loop 0 for MGMT ###
ip address 10.99.99.4 255.255.255.255
!
interface FastEthernet0/0
description ### Uplink ISP 1 ###
ip address 192.168.11.2 255.255.255.128
speed 100
full-duplex
!
interface FastEthernet0/1
description ### Uplink ISP 2 ###
ip address 192.168.22.2 255.255.255.128
speed 100
full-duplex
!
interface FastEthernet1/0
description ### Uplink to R_Outer_Core_1 ###
ip address 10.1.0.2 255.255.255.252
speed 100
full-duplex
!
interface FastEthernet2/0
description ### Uplink to R_Outer_Core_2 ###
ip address 10.1.0.10 255.255.255.252
speed auto
full-duplex
!
router ospf 100
log-adjacency-changes
redistribute connected subnets
redistribute static subnets
network 10.1.0.0 0.0.0.3 area 0
network 10.1.0.8 0.0.0.3 area 0
network 10.99.99.4 0.0.0.0 area 0
!
ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 192.168.11.1
ip route 0.0.0.0 0.0.0.0 192.168.22.1 10
!
ip http server
no ip http secure-server
!
control-plane
!
line con 0
line aux 0
line vty 0 4
!
ntp server 10.99.99.1 prefer

VPN Edge Router 2 - R_VPN_2

version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R_VPN_2
!
no logging console
no logging monitor
!
no aaa new-model
memory-size iomem 5
ip cef
!
no ip domain lookup
ip domain name Task2.local
!
multilink bundle-name authenticated
!
archive
log config
hidekeys
!
interface Loopback0
description ### Loop 0 for MGMT ###
ip address 10.99.99.5 255.255.255.255
!
interface FastEthernet0/0
description ### Uplink ISP 1 ###
ip address 192.168.11.3 255.255.255.128
speed 100
full-duplex
!
interface FastEthernet0/1
description ### Uplink to ISP 2 ###
ip address 192.168.22.3 255.255.255.128
speed 100
full-duplex
!
interface FastEthernet1/0
description ### Uplink to R_Outer_Core_1 ###
ip address 10.1.0.6 255.255.255.252
speed 100
full-duplex
!
interface FastEthernet2/0
description ### Uplink to R_Outer_Core_2 ###
ip address 10.1.0.14 255.255.255.252
speed 100
full-duplex
!
router ospf 100
log-adjacency-changes
redistribute connected subnets
redistribute static subnets
network 10.1.0.4 0.0.0.3 area 0
network 10.1.0.12 0.0.0.3 area 0
network 10.99.99.5 0.0.0.0 area 0
!
ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 192.168.11.1
ip route 0.0.0.0 0.0.0.0 192.168.22.1 10
!
!
no ip http server
no ip http secure-server
!
control-plane
!
line con 0
line aux 0
line vty 0 4
!
ntp server 10.99.99.1 prefer


Das war es im großen und ganzen, wir haben nun 5 Router und eine PIX, auf diesem Netzwerk Sicherheit zu implementieren ist etwas aufwändiger und bekommt daher einen eigenen Blogeintrag.

cheers
NWG

EN - Task 2.2.1 adding VPN Edge devices

Well it has been a while since the last task update and I hope you don´t mind to much.
So we start with our network from last time, this means 3 routers and a pix running OSPF. (LINK)

First of all we will add the two VPN Edge devices, so that we can build security concept for the complete network.
The Routers are set up quit easily and i won´t explain in detail what to do on those machines. We will do the usual stuff like setting up network interfaces for internal and external communication, add OSPF and have a look on the other routers to see if the routes are propagated as expected. Fore more information about see the Task 2.1 Post.

VPN Edge Router 1 - R_VPN_1

service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R_VPN_1
!
boot-start-marker
boot-end-marker
!
no aaa new-model
no logging console
no logging monitor
!
memory-size iomem 5
ip cef
!
no ip domain lookup
ip domain name Task2.local
!
multilink bundle-name authenticated
!
archive
log config
hidekeys
!
interface Loopback0
description ### Loop 0 for MGMT ###
ip address 10.99.99.4 255.255.255.255
!
interface FastEthernet0/0
description ### Uplink ISP 1 ###
ip address 192.168.11.2 255.255.255.128
speed 100
full-duplex
!
interface FastEthernet0/1
description ### Uplink ISP 2 ###
ip address 192.168.22.2 255.255.255.128
speed 100
full-duplex
!
interface FastEthernet1/0
description ### Uplink to R_Outer_Core_1 ###
ip address 10.1.0.2 255.255.255.252
speed 100
full-duplex
!
interface FastEthernet2/0
description ### Uplink to R_Outer_Core_2 ###
ip address 10.1.0.10 255.255.255.252
speed auto
full-duplex
!
router ospf 100
log-adjacency-changes
redistribute connected subnets
redistribute static subnets
network 10.1.0.0 0.0.0.3 area 0
network 10.1.0.8 0.0.0.3 area 0
network 10.99.99.4 0.0.0.0 area 0
!
ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 192.168.11.1
ip route 0.0.0.0 0.0.0.0 192.168.22.1 10
!
ip http server
no ip http secure-server
!
control-plane
!
line con 0
line aux 0
line vty 0 4
!
ntp server 10.99.99.1 prefer

VPN Edge Router 2 - R_VPN_2

service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R_VPN_2
!
no logging console
no logging monitor
!
no aaa new-model
memory-size iomem 5
ip cef
!
no ip domain lookup
ip domain name Task2.local
!
multilink bundle-name authenticated
!
archive
log config
hidekeys
!
interface Loopback0
description ### Loop 0 for MGMT ###
ip address 10.99.99.5 255.255.255.255
!
interface FastEthernet0/0
description ### Uplink ISP 1 ###
ip address 192.168.11.3 255.255.255.128
speed 100
full-duplex
!
interface FastEthernet0/1
description ### Uplink to ISP 2 ###
ip address 192.168.22.3 255.255.255.128
speed 100
full-duplex
!
interface FastEthernet1/0
description ### Uplink to R_Outer_Core_1 ###
ip address 10.1.0.6 255.255.255.252
speed 100
full-duplex
!
interface FastEthernet2/0
description ### Uplink to R_Outer_Core_2 ###
ip address 10.1.0.14 255.255.255.252
speed 100
full-duplex
!
router ospf 100
log-adjacency-changes
redistribute connected subnets
redistribute static subnets
network 10.1.0.4 0.0.0.3 area 0
network 10.1.0.12 0.0.0.3 area 0
network 10.99.99.5 0.0.0.0 area 0
!
ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 192.168.11.1
ip route 0.0.0.0 0.0.0.0 192.168.22.1 10
!
!
no ip http server
no ip http secure-server
!
control-plane
!
line con 0
line aux 0
line vty 0 4
!
ntp server 10.99.99.1 prefer

Well thats it for now. Since adding security to those devices is a larger task I´ll create a new blog post about this topic.

cheers NWG

EN/DE - Twitter

You may notice that I´ve added a new blogroll entry. I´ve started to twitter, lets see if I have enough time to do this. Have a look, If you like Link

Es mag vielleicht aufgefallen sein , Ich habe einen neuen Eintrag in die Blogroll aufgenommen. Es ist ein direkter Link zu meinem Tweet. Mal sehen ob ich noch ein bisschen Zeit finde um das ernst zu betreiben.

Cheers NWG

Donnerstag, 23. April 2009

DE - NEUES aus dem Netz- ASA 8.2 und das neue IPS für die ASA 5505

In den meisten englischen Blogs ist es seit 2 Tage ein großes Thema, die aktuellen Ankündigungen von Cisco zum Security Bereich. Zwei der wichtigsten Themen (aus meiner Sicht) sind

Die neuen Features des ASA 8.2 Releases
Eigentlich sollte die Version 8.2 bereits zum Download angeboten sein aber mein CCO Account weis noch nichts davon. Na mal sehen wann das Release kommt und ich ein wenig damit rumspielen kann. Leider ist das ASA only so das man es nicht in Pemu verwenden kann. Egal!
Das wichtigste Feature ist wohl der Botnet Filter, der die Kommunikation von bereits infizierten Geräten zu den Botnetzen unterbinden soll.
Außerdem klingt der TCP State Bypass ganz interessant, aber das muss ich dann in der echten Welt zeigen.

Das zweites Highlight ist das IPS für die ASA 5505
Vor einer weile hab ich schon einmal Gerüchte über ein IPS für die ASA 5505 gehört und nun ist offiziell für den Mai angekündigt. Persönlich finde ich die Idee großartig und hoffe das sie vom Markt angenommen wird (und das sie nicht zu teuer wird).


Cisco Q&A about the new features and the ASA 5505 IPS + more
ASA 8.2 Image Features

Thanks for the information to Jamey Heary at Networkworld

Cheers
NWG

Mittwoch, 22. April 2009

EN - NEWS from the Web - ASA 8.2 and IPS for ASA 5505

Well you may have heard from several other blogs and news sites that Cisco announced some new interesting features for the ASA Firewalls. Among some other the key things that are interesting for me (personal) are

ASA 8.2 main feature
Basing on the ASA Q+A this ASA Image should be available already but my CCO account shows nothing for the ASA to download. Hope that this image will be available soon for test deployment.
Some features that really are worth a second look.
First to mention is Botnet Filtering that by design should prevent traffic from a already infected machine to the Botnets.
Interesting sounds the TCP State bypass but this will need some hands on to check :)
Some drawback, ASA 8.2 is an ASA only image so no support in PEMU

ASA 5505 IPS
I´ve heard rumors about it and the empty slot was obvious for some add on. Well now you can have a look at the brand new Cisco ASA 5505 IPS module. I think this is a great feature for the ASA 5505, I know some customers that are looking for this feature and I hope that the market accepts the IPS.

Cisco Q&A about the new features and the ASA 5505 IPS + more
ASA 8.2 Image Features

Thanks for the information to Jamey Heary at Networkworld

Cheers
NWG

EN - cast away in ROMMON

Hey,

today I was cought up in rommon in a router configuration.
I had to config 3 2651 routers. One of them had a corrupt IOS file and booted to ROMMON only.

I feares I had to use a xmodem connection to get an new IOS loaded to the flash, but luckily there is a posibility to use TFTP in ROMMON. To get the following commands working, the IP connectivity must be working, eg Routing from/to the TFTP server.

Your prompt should look like: rommon 1 >
Now you have to assign all essential informations to it:
IP_ADDRESS=192.168.100.1
IP_SUBNET_MASK=255.255.255.0
DEFAULT_GATEWAY=192.168.100.2
TFTP_SERVER=192.168.100.2
TFTP_FILE=c2600-i-mz.123-26.bin
tftpdnld


The last command starts the transfer and if its finished enter reset.

Now the router is booting with its brand new IOS.

have fun,
Zif

Dienstag, 21. April 2009

DE – "Wiederherstellen" des Pre Shared Keys auf der ASA

Es soll ja vorkommen das man nach zu viel Arbeit noch etwas an der Konfig ändern will und dann einem Flüchtigkeitsfehler unterlaufen. Besonders gern passiert so was bei Copy+Paste Aktionen. Vor einiger ist es mir auch schon passiert, bei der Erstellung einer Tunnelgruppe bei der ich alle Parameter aus einer alten Tunnelgruppe kopierte habe ich den Pre Shared Key der alten Gruppe aus versehen überschrieben. Wie kann man diesen Key wieder herstellen, ein show run
zeigt nur ein * als pre shared key.
Aber so lässt sich der Key auch anzeigen:

copy startup flash:/startup_bck.cfg
more flash:/startup_bck.cfg

Nun einfach nur noch runter scrollen bis zu den Tunnel Gruppen und dann den Key wieder an die richtige Stelle kopieren.
Das ganze Funktioniert natürlich nur solange kein copy run start oder wr mem ausgeführt wurde.

Immer daran denken die Datei nach Verwendung wieder von Flash zu löschen

Cheers
NWG

EN - How to "recover" ASA Pre Shared Key

If you´ve ever done a configuration to late at night and did some copy+paste you might had the same problem I´ve had some days ago.
I was creating a new VPN tunnel and generally was copy and pasting the settings from an old tunnel. Accidentally I kicked out the pre shared key from the original tunnel (learned lesson: always check twice what you paste).
So how to fix this problem. This is not that simple since a show run will just give you a * as pre shared key.
Anyway do the following:


copy startup flash:/startup_bck.cfg
more flash:/startup_bck.cfg


scroll down to your tunnel groups and you will get the plain password. If you copy and past this password into your running tunnel group configuration your tunnel should be working in no time.
It is only possible to do this if you did not issue a copy run start or wr mem.

Remember to delete that file if you don´t need it anymore.

Cheers
NWG

Mittwoch, 15. April 2009

DE - VPN on a stick mit Cisco PIX und ASA

Vor einer Weile hat Zif ja die "Router on a stick" Konfiguration gepostet. Ich will die Gelegenheit nutzen, um etwas wesentlich Interessanteres darzustellen, die "VPN on a Stick" Konfiguration auf der Cisco ASA bzw. PIX.

Was bedeutet VPN on a Stick genau, nun es handelt sich dabei um die Konfiguration des VPN so das der VPN Nutzer sich durch das VPN Gateway auf das Internet zugreifen kann. Besonders ist daran, das der VPN Nutzer die Appliance nicht wirklich verlässt sonder direkt über das eingehende Interface wieder hinaus geht. In anderen fällen wird das ganze auch Hairpinning genannt.

Konfiguration.
Zuerst muss das erledigt werden was auf jeder ASA/PIX notwendig ist, also so etwas wie Interface Konfiguration usw.
Grundlegend ist das überall gleich aber unterscheidet sich doch zwischen ASA, PIX und ASA 5505, die Unterschiede werde ich hier posten, aber für genauere Unterschiede werft doch einen Blick auf CISCO.com.

ASA 5510 oder höher

interface ethernet 0/0
description ### Outside Interface ###
nameif outside
ip address 10.255.255.2 255.255.255.0
interface ethernet 0/1
description ### Inside Interface ###
nameif inside
ip address 192.168.0.1 255.255.255.0


ASA 5505

interface vlan 10
description ### Outside Interface ###
nameif outside
ip address 10.255.255.2 255.255.255.0
interface vlan 20
description ### Inside Interface ###
nameif inside
ip address 192.168.0.1 255.255.255.0


PIX

interface ethernet 0
description ### Outside Interface ###
nameif outside
ip address 10.255.255.2 255.255.255.0
no shutdown
interface ethernet 1
description ### Inside Interface ###
nameif inside
ip address 192.168.0.1 255.255.255.0
no shutdown

global (outside) 1 interface
nat (inside) 1 192.168.0.0 255.255.255.0
route outside 0.0.0.0 0.0.0.0 10.255.255.254
! 10.255.255.254 ist der nächste Hop, der Router des Providers

crypto ipsec transform-set ESP-AES256-MD5 esp-aes-256 esp-md5-hmac

crypto dynamic-map DynOutsideMap 100 set transform-set ESP-AES256-MD5
! Konfiguration für den dynamischen VPN Client
!
crypto map OutsideMap 65535 ipsec-isakmp dynamic DynOutsideMap
crypto map OutsideMap interface outside
! Konfiguration der Crypto Map die auf dem Outside Interface gebunden wird

crypto isakmp enable outside
crypto isakmp policy 100
authentication pre-share
encryption aes-256
hash sha
group 2
lifetime 86400


Das ist die Grundlage die fast überall benötigt wird. Als nächstes müssen die spezifischen VPN Parameter konfiguriert werden.


ip local pool POOL_VPN_Client 192.168.1.1-192.168.1.254 mask 255.255.255.0

group-policy GPOL_VPN_Client internal
group-policy GPOL_VPN_Client attributes
split-tunnel-policy tunnelall

tunnel-group GRP_VPN_Client type remote-access
tunnel-group GRP_VPN_Client general-attributes
default-group-policy GPOL_VPN_Client
address-pool POOL_VPN_Client
tunnel-group GRP_VPN_Client ipsec-attributes
pre-shared-key DoNotUseMe


So weit so gut, der Client sollte nun in der Lage sein eine Verbindung zur ASA oder PIX aufzubauen (noch keine wirkliche VPN Verbindung). Es bedarf natürlich noch einen User für die Verbindung. AAA wäre eine Lösung, aber für dieses Beispiel bleiben wir bei der LOCAL Lösung.

username VPNUser password none priv 1

Jetzt etwas interessantes, NAT.
Wir vermuten einfach mal das auf der ASA/ PIX NAT gemacht wird (wird es ja meistens), so muss nun eine NAT Ausnahme konfiguriert werden, damit der VPN Client die internen Hosts erreichen kann.



Object-group network OBJ_VPN_Client
network 192.168.1.0 255.255.255.0
Object-group network OBJ_LAN
network 192.168.0.0 255.255.255.0

access-list NO_nat_inside remark ### NAT exceptions ###
access-list NO_nat_inside permit ip object-group OBJ_LAN object-group OBJ_VPN_Client


So nun sind wir fast durch, noch das NAT Statement hinzufügen.


nat (outside) 1 192.168.1.0 255.255.255.0
! NAT auf dem Outside interface damit der VPN Nutzer eine öffentliche IP
! erhält
nat (inside) 0 access-list NO_nat_inside


Jetzt noch die Standard Regel "Kein Traffic zwischen Interfaces mit dem gleichen Sicherheitslevel" aufheben.

same-security-traffic permit intra-interface


Das war es also!

Ich hoffe es hat gefallen und danke für die Aufmerksamkeit :D

Vollständige PIX Konfiguration

Dienstag, 14. April 2009

EN - VPN on a stick with Cisco PIX and ASA

Well since Zif was doing the "Router on a stick" configuration, I'd like to share with you the much cooler "VPN on a Stick" configuration on the ASA/ PIX.

What does VPN on a stick mean. Well it means that if you connect to a VPN gateway your traffic will run across this gateway and will be forwarded into the Internet (if you try to connect to the Internet). Why is it named "on a stick" this is because you enter the VPN gateway (ASA/Pix) on the
outside interface an you leave it the same way without accessing the private LAN Sometimes it called hair pinning (if you enter an other VPN connection)

So what do we need? First of all an ASA/ PIX and second a VPN Client.

Configuration.
First we´ll have to do some fluff stuff like creating interfaces etc. This is depending on your hardware slightly different. I´ll post the differences here but for later configs please have a look at CISCO.com

ASA 5510 or higher

interface ethernet 0/0
description ### Outside Interface ###
nameif outside
ip address 10.255.255.2 255.255.255.0
interface ethernet 0/1
description ### Inside Interface ###
nameif inside
ip address 192.168.0.1 255.255.255.0


ASA 5505

interface vlan 10
description ### Outside Interface ###
nameif outside
ip address 10.255.255.2 255.255.255.0
interface vlan 20
description ### Inside Interface ###
nameif inside
ip address 192.168.0.1 255.255.255.0


PIX

interface ethernet 0
description ### Outside Interface ###
nameif outside
ip address 10.255.255.2 255.255.255.0
no shutdown
interface ethernet 1
description ### Inside Interface ###
nameif inside
ip address 192.168.0.1 255.255.255.0
no shutdown

global (outside) 1 interface
nat (inside) 1 192.168.0.0 255.255.255.0
route outside 0.0.0.0 0.0.0.0 10.255.255.254
! 10.255.255.254 is the next hop router from the ISP

crypto ipsec transform-set ESP-AES256-MD5 esp-aes-256 esp-md5-hmac

crypto dynamic-map DynOutsideMap 100 set transform-set ESP-AES256-MD5
! configuration for dynamic Clients like the Cisco VPN Client
!
crypto map OutsideMap 65535 ipsec-isakmp dynamic DynOutsideMap
crypto map OutsideMap interface outside
! configuration of the over all Crypto Map that is applied on the outside Interface

crypto isakmp enable outside
crypto isakmp policy 100
authentication pre-share
encryption aes-256
hash sha
group 2
lifetime 86400


Thats the basic part that you need nearly everywhere. Next step would be to configure the specific parameters for your VPN client.


ip local pool POOL_VPN_Client 192.168.1.1-192.168.1.254 mask 255.255.255.0

group-policy GPOL_VPN_Client internal
group-policy GPOL_VPN_Client attributes
split-tunnel-policy tunnelall

tunnel-group GRP_VPN_Client type remote-access
tunnel-group GRP_VPN_Client general-attributes
default-group-policy GPOL_VPN_Client
address-pool POOL_VPN_Client
tunnel-group GRP_VPN_Client ipsec-attributes
pre-shared-key DoNotUseMe


So far, so good, your client should now be able to connect to your ASA or Pix but well, nothing more.
You still need to add a User that is allowed to log in. You could use AAA but for this scenario we stick to LOCAL users.

username VPNUser password none priv 1

Now lets start with the interesting parts
Assuming that you do NAT on your ASA/ Pix you need to configure a NAT exception so that you can access your hosts on the inside interface from your VPN Client.

I tend to use objects groups quite a lot since they enable you to quick change a lot of ACLs. For this reason I´ll set up some object groups and use them later.


Object-group network OBJ_VPN_Client
network 192.168.1.0 255.255.255.0
Object-group network OBJ_LAN
network 192.168.0.0 255.255.255.0

access-list NO_nat_inside remark ### NAT exceptions ###
access-list NO_nat_inside permit ip object-group OBJ_LAN object-group OBJ_VPN_Client


So we are nearly through add a new NAT statement


nat (outside) 1 192.168.1.0 255.255.255.0
! NAT on interface outside so that your VPN User get your public IP
nat (inside) 0 access-list NO_nat_inside


Finlay disable the default rule "No traffic between interfaces with the same security level".

same-security-traffic permit intra-interface


Thats it!

Hope you enjoyed and thanks for your attention.

Full PIX configuration

Samstag, 11. April 2009

DE - Task 2.1 - Grundlegendes OSPF zwischen Routern und ASA

In diesem Kapitel erarbeiten wir die Startkonfiguration wie sie beim Kunden existiert, mit kleinen Abänderungen um dem Blogthema gerecht zu werden.
Das Startnetzwerk besteht aus 3 Routern und 1 PIX die den Internetzugriff realisiert.

Wie bereits erwähnt stimmt das Netzwerk nicht zu 100 % mit dem des Kunden überein. Wir verwenden für die Bereiche Inner Core Routing und Outer Core Routing Cisco 3660 Router mit einem 12.3.26 IOS. Beim Kunden befinden sich in beiden Bereiche nicht nur Cisco Router sondern auch Geräte anderer Hersteller und natürlich sind es nicht nur 3 Geräte. Alle 3660 Router haben in den vorhanden Slots je 2 zusätzliche Fastethernet Interfaces installiert.

Das zentrale Internet Gateway wird wie bereits erwähnt von einer PIX 525 gestellt, diese läuft mit der Version 7.2.4 der PIX Software.

Zwischen allen Geräten wurden Transfernetze angelegt die genau groß genug sind um 2 IPs zu enthalten, sprich es wird mit einer Netzmaske von 255.255.255.252 (/30) gearbeitet. Alle Verbindungen zwischen Inner Core und Outer Core liegen im Netzwerkbereich 10.0.0.0 255.255.0.0. Alle Verbindungen die den Core Bereich verlassen liegen im Netzbereich 10.1.0.0 255.255.0.0. Dies sind Verbindungen zu den später einzufügenden VPN-Edge Routern und der PIX.

Am Inner Core Router hängt außerdem noch das Netzwerk 172.16.0.0 /24, dieses Netzwerk beinhaltet die Management Server des Kunden, unter anderem den CISCO ACS (Version 4.2), einen MS Active Directory Server mit einer bereits installierten CA und einen weiteren Radius Server. Alle Server sind relevant für die spätere Anbindung der VPN Nutzer. Aber mehr davon in den nächsten Kapiteln.

Wir haben als 3 Cisco Router und eine PIX, wo fängt man am besten an? Natürlich mit den Standard Aufgaben die man bei jedem Gerät einpflegt. Nur als Info, ich werde in den folgenden Konfigs nur Änderungen von den Vorgaben von Cisco einpflegen.

2.1.1 Grundlagen Konfiguration für Hostname, Domainname NTP Settings und IP Interfaces auf Cisco Routern und PIX/ ASA Firewall

Router für den Inner Core Bereich - R_Inner_Core

! Hostname und Domain Konfiguration
! =================================
hostname R_Inner_Core
ip domain name Task2.local
!
! Kein DNS Lookup fuer Router
! ===========================
no ip domain lookup
!
! Interface Konfiguration
! =======================
interface Loopback0
description ### Loop 0 for MGMT ###
ip address 10.99.99.1 255.255.255.255
!
interface FastEthernet0/0
description ### Uplink R_Outer_Core_1 ###
ip address 10.0.0.1 255.255.255.252
full-duplex
speed 100
no shutdown
!
interface FastEthernet0/1
description ### Uplink R_Outer_Core_2 ###
ip address 10.0.0.5 255.255.255.252
full-duplex
speed 100
no shutdown
!
interface FastEthernet1/0
description ### Uplink to internet gateway PIX ###
ip address 10.0.0.13 255.255.255.252
full-duplex
speed 100
no shutdown
!
interface FastEthernet2/0
description ### Connection to Server Network ###
ip address 172.16.0.5 255.255.255.0
speed 100
full-duplex
no shutdown
!
! Konfiguration der NTP Einstellungen
! ===================================
ntp server 192.53.103.108 prefer
ntp server 192.53.103.104
! external NTP Server


Router für den Netzwerkbereich Outer Core Routing - R_Outer_Core_1 und R_Outer_Core_2

! Hostname und Domain Konfiguration
! =================================
hostname R_Outer_Core_1
ip domain name Task2.local
!
! Kein DNS Lookup fuer Router
! ===========================
no ip domain lookup
!
! Interface Konfiguration
! =======================
interface Loopback0
description ### Loop 0 for MGMT ###
ip address 10.99.99.2 255.255.255.255

!
interface FastEthernet1/0
description ### Link to R_Inner_Core ###
ip address 10.0.0.2 255.255.255.252
full-duplex
speed 100
no shutdown
!
interface FastEthernet2/0
description ### inter Link to R_Outer_Core_2 ###
ip address 10.0.0.9 255.255.255.252
full-duplex
speed 100
no shutdown
!
! Konfiguration der NTP Einstellungen
! ===================================
ntp server 10.99.99.1 prefer
! Hier fällt gleich auf das als NTP Quelle der Router R_Inner_Core verwendet
! wird. Damit werden die Zugriffe der Router auf das Internet minimiert


Als letztes kommt Router R_Outer_Core_2

! Hostname und Domain Konfiguration
! =================================
hostname R_Outer_Core_2
ip domain name Task2.local
!
! Kein DNS Lookup fuer Router
! ===========================
no ip domain lookup
!
! Interface Konfiguration
! =======================
interface Loopback0
description ### Loop 0 for MGMT ###
ip address 10.99.99.3 255.255.255.255
!
interface FastEthernet1/0
description ### Link to R_Inner_Core ###
ip address 10.0.0.6 255.255.255.252
speed 100
full-duplex
no shutdown
!
interface FastEthernet2/0
description ### inter Link to R_Outer_Core_1 ###
ip address 10.0.0.10 255.255.255.252
speed 100
full-duplex
no shutdown
!
! Konfiguration der NTP Einstellungen
! ===================================
ntp server 10.99.99.1 prefer


Als letztes wird die PIX das Internet Gateway konfiguriert - FW-GW-1


! Hostname und Domain Konfiguration
! =================================
hostname FW-GW-1
domain-name Task2.local
!
! Interface Konfiguration
! =======================
interface Ethernet0
description ### Central Breakout Point ###
speed 100
duplex full
nameif IF_Outside
security-level 0
ip address 192.168.33.2 255.255.255.240
no shutdown
!
interface Ethernet1
description ### Link to Core Router ###
speed 100
duplex full
nameif IF_Inside
security-level 100
ip address 10.0.0.14 255.255.255.252
no shutdown
!
! Default Route für unbekannten Traffic
! =====================================
route IF_Outside 0.0.0.0 0.0.0.0 192.168.33.1 1
! 192.168.33.1 ist der Nächste Hop, der Router des ISP


Ab jetzt sollte es möglich sein von jedem gerät die direkt verbundenen Geräte anzupingen.

Es fällt auf das auf der PIX noch kein NAT konfiguriert ist. Das werden wir später nachholen.

2.1.2 OSPF zwischen Cisco Routern und PIX/ ASA

Nachdem wir die grundlegende Konfiguration der Router und der PIX /ASA hinter uns haben, geht es nun weiter mit OSPF. Mehr Informationen über Grundlagen Konfigurationvon Routern werft einen Blick in ZIFs Blog Eintrag von vor einigen Tagen.

OSPF ist recht einfach zu konfigurieren!
Als erstes muss ein Routing Prozess definiert werden, in diesem wird festgelegt welche Routen der Router mitteilen soll und wenn alle richtig gemacht wurde, war es das schon.

R_Inner_Core

! Erzeugen des Routing Prozesses
router ospf 100
! definieren der Router ID
router-id 10.99.99.1
! Konfigurieren des Loggings
log-adjacency-changes
! Bestimmen was der Router bekannt geben soll
redistribute connected subnets
redistribute static subnets
! keine Routing Updates für Interface Loopback 0
passive-interface Loopback0
!
! Bestimmen welche Netzwerk an dem Router hängen. Wird ein Netzwerk hier nicht
! eingepflegt wird dort kein Routing ausgeführt.
!
network 10.0.0.0 0.0.0.3 area 0
network 10.0.0.4 0.0.0.3 area 0
network 10.0.0.13 0.0.0.3 area 0
! Auch das Loopback Interface (Netzwerk mit 32er Maske) wird bekannt gegeben
network 10.99.99.1 0.0.0.0 area 0
network 172.16.0.0 0.0.0.255 area 0



Fast das gleiche wird auf den anderen Routern R_Outer_Core_1 und R_Outer_Core_2 konfiguriert.

R_Outer_Core_1

router ospf 100
router-id 10.99.99.2
log-adjacency-changes
redistribute connected subnets
redistribute static subnets
passive-interface Loopback0
network 10.0.0.0 0.0.0.3 area 0
network 10.0.0.8 0.0.0.3 area 0
network 10.99.99.2 0.0.0.0 area 0


R_Outer_Core_2

router ospf 100
log-adjacency-changes
redistribute connected subnets
redistribute static subnets
passive-interface Loopback0
network 10.0.0.4 0.0.0.3 area 0
network 10.0.0.8 0.0.0.3 area 0
network 10.99.99.3 0.0.0.0 area 0


Als letztes wird die PIX/ ASA dem OSPF Netzwerk hinzugefügt.
FW-GW-1

! erzeugen des Routing Prozesses
router ospf 100
! Definieren der Router ID
! Hinweis: da auf der ASA / PIX keine Loopback Interfaces angelegt werden
! können, kann man hier den Hostnamen oder ein anderes Interface nehmen
router-id 10.0.0.14
network 10.0.0.12 255.255.255.252 area 0
log-adj-changes
redistribute static subnets
! hier wird eine Defaultroute in das OSPF Netzwerk eingepflegt so das das
! Internet über DIESE PIX / ASA erreicht werden kann.
default-information originate


Das war es auch schon mit der grundlegenden OSPF Konfiguration. Es sollte nun möglich sein von jedem Gerät jedes andere Gerät anzupingen.

Nach dem Aufruf des Befehls show ip route auf R_Inner_Core sollte die Ausgabe etwa dieses Format haben.

R_Inner_Core#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route

Gateway of last resort is 10.0.0.14 to network 0.0.0.0

172.16.0.0/24 is subnetted, 1 subnets
C 172.16.0.0 is directly connected, FastEthernet2/0
10.0.0.0/8 is variably subnetted, 7 subnets, 2 masks
O 10.0.0.8/30 [110/2] via 10.0.0.6, 00:01:18, FastEthernet0/1
[110/2] via 10.0.0.2, 00:01:18, FastEthernet0/0
C 10.0.0.12/30 is directly connected, FastEthernet1/0
O 10.99.99.2/32 [110/2] via 10.0.0.2, 00:01:18, FastEthernet0/0
O 10.99.99.3/32 [110/2] via 10.0.0.6, 00:01:18, FastEthernet0/1
C 10.0.0.0/30 is directly connected, FastEthernet0/0
C 10.99.99.1/32 is directly connected, Loopback0
C 10.0.0.4/30 is directly connected, FastEthernet0/1
O*E2 0.0.0.0/0 [110/1] via 10.0.0.14, 00:01:18, FastEthernet1/0


O*E2 0.0.0.0/0 [110/1] via 10.0.0.14, 00:01:18, FastEthernet1/0 ist die Interessanteste Route von allen. Sie besagt das jede unbekannte IP über die PIX erreicht werden kann. Es handelt sich hierbei um die vorhin angesprochende Default Route.


2.1.3 Anschliesen der Internetverbindung

Wenn OSPF läuft und alle Router die Route zum Internet kennen muss eigentlich nur noch NAT auf der ASA / PIX konfiguriert werden um den Router auch Internetzugriff zu ermöglichen.
NAT ist notwendig da unser Netzwerk mit privaten Adressen gestaltet ist und diese bekanntermassen nicht ins Internet geroutet werden. Wir benutzen an dieser Stelle eine Unterart des NAT nämlich PAT (Port Address Translation).

Nehmen wir an das unser Provider uns das Netzwerk 192.168.33.0 255.255.255.240 zur Verfügung gestellt hat und sein Router in dem Netz die 192.168.33.1 benutzt. Das bedeutet das unserem Netzwerk noch die IPs von 192.168.33.2- 192.168.33.14 zur Verfügung stehen.

Für das PAT werden wir die 192.168.33.3 benutzen, das sollte eigentlich reichen. Als zweiten Schritt müssen wir bestimmen welche Netze umgesetzt werden sollen. Natürlich alle Netzwerk die intern sind.


global (IF_Outside) 1 192.168.33.3
nat (IF_Inside) 1 0.0.0.0 0.0.0.0
! übersetze jede IP die über das Interface IF_Inside kommt
! in die Öffentliche Adresse + Port


Da wir noch keinen ISP Router konfiguriert haben, können wir NAT nur mit den Befehl show nat überprüfen.
Der Befehl sollte folgenden Output zurück geben:

show nat

NAT policies on Interface IF_Inside:
match ip IF_Inside any IF_Outside any
dynamic translation to pool 1 (192.168.33.3)


Gut das war´s. Mit dem nun funktionierenden Netzwerk, können wir später weiterarbeiten.

Netzwerk Diagramm:


Hier könnt ihr noch einmal die gesamte Konfiguration der Router herunterladen:
LINK: R_Inner_Core
LINK: R_Outer_Core_1
LINK: R_Outer_Core_2
LINK: FW-GW-1


Bald gibt es mehr. Wie immer sind Kommentare, Hinweise und natürlich Fragen sehr willkommen

Cheers NWG

Mittwoch, 8. April 2009

EN - Task 2.1 - Basic OSPF routing between router and ASA

This is the initial configuration from where we will start to deploy our scenario. We´ve got 3 router and one PIX, this pix is doing the uplink to the Internet.

As mentioned earlier this is a scheme that has been slightly changed to fit into this blog. Both inner and outer core routers are not only Cisco routers, as well as the used firewall is in the real world no ASA or PIX. Since we are focusing on Cisco this facts have been ignored and we stick to Cisco routers, PIXs and ASAs.
In this example the inner core routing network is represented by one 3660 router running IOS 12.3.26 The outer core routing network consist of 2x 3660 routers also running IOS 12.3.26. All 3660 got 2 additional Fast Ethernet Interfaces installed. Finally the firewall is a Cisco PIX 252 running 7.2.4.

Between the routers their are transfer networks, just big enough to hold 2 IP addresses, this means we use a 255.255.255.252 (/30)mask for those networks. All connections between inner and outer core as well as within the outer core are located in the network 10.0.0.0 255.255.0.0. Connections leaving the core network are usually 10.1.0.0 255.255.0.0 most times this is used for links to the edge devices like the PIX and later on to connect the VPN edge routers.

Attached to the inner core router is the network 172.16.0.0 /24 this network holds the customers servers like the Cisco ACS (version 4.2) an MS Active Directory Server (Server 2003)with a certification authority configured as well as a free radius server. All Servers will be used later for the VPN User configuration. But this will be important later.


So we´ve got 3 routers and a PIX. Where to start? Well we start with common tasks configuration of hostnames, domain names and interfaces. I´ll just post the changes I´ve made, no defaults included.


2.1.1 Basic Configuration including Hostname, Domainname, NTP Settings and IP Interfaces on Routers and PIX /ASA Firewalls

Router for the inner core area - R_Inner_Core

! Hostname and Domain configuration
! =================================
hostname R_Inner_Core
ip domain name Task2.local
!
! No hostname lookup for routers
! ==============================
no ip domain lookup
!
! Interface configuration
! =======================
interface Loopback0
description ### Loop 0 for MGMT ###
ip address 10.99.99.1 255.255.255.255
!
interface FastEthernet0/0
description ### Uplink R_Outer_Core_1 ###
ip address 10.0.0.1 255.255.255.252
full-duplex
speed 100
no shutdown
!
interface FastEthernet0/1
description ### Uplink R_Outer_Core_2 ###
ip address 10.0.0.5 255.255.255.252
full-duplex
speed 100
no shutdown
!
interface FastEthernet1/0
description ### Uplink to internet gateway PIX ###
ip address 10.0.0.13 255.255.255.252
full-duplex
speed 100
no shutdown
!
interface FastEthernet2/0
description ### Connection to Server Network ###
ip address 172.16.0.5 255.255.255.0
speed 100
full-duplex
no shutdown
!
! configuration for NTP settings
! ==============================
ntp server 192.53.103.108 prefer
ntp server 192.53.103.104
! external NTP Server


So first router done, to more to go.

Routers for the outer routing Network R_Outer_Core_1 and R_Outer_Core_2

! Hostename and domain configuration
! ==================================
hostname R_Outer_Core_1
ip domain name Task2.local
!
! No hostname lookup for routers
! ==============================
no ip domain lookup
!
! Interface configuration
interface Loopback0
description ### Loop 0 for MGMT ###
ip address 10.99.99.2 255.255.255.255

!
interface FastEthernet1/0
description ### Link to R_Inner_Core ###
ip address 10.0.0.2 255.255.255.252
full-duplex
speed 100
no shutdown
!
interface FastEthernet2/0
description ### inter Link to R_Outer_Core_2 ###
ip address 10.0.0.9 255.255.255.252
full-duplex
speed 100
no shutdown
!
! NTP Settings
! ============
ntp server 10.99.99.1 prefer
! You may note that the NTP server is the inner core router R_Inner_Core.
! This is to limit access to public resources.


Last router to be configured R_Outer_Core_2

! Hostname and domain name configuration
! ======================================
hostname R_Outer_Core_2
ip domain name Task2.local
!
! No hostname lookup for routers
! ==============================
no ip domain lookup
!
! Interface configuration
! =======================
interface Loopback0
description ### Loop 0 for MGMT ###
ip address 10.99.99.3 255.255.255.255
!
interface FastEthernet1/0
description ### Link to R_Inner_Core ###
ip address 10.0.0.6 255.255.255.252
speed 100
full-duplex
no shutdown
!
interface FastEthernet2/0
description ### inter Link to R_Outer_Core_1 ###
ip address 10.0.0.10 255.255.255.252
speed 100
full-duplex
no shutdown
!
! NTP Settings
! ============
ntp server 10.99.99.1 prefer


Last configured is the Internet Gateway in this scenario the PIX FW-GW-1


! Hostname and domain configuration
! =================================
hostname FW-GW-1
domain-name Task2.local
!
! Interface Configuration
! =======================
interface Ethernet0
description ### Central Breakout Point ###
speed 100
duplex full
nameif IF_Outside
security-level 0
ip address 192.168.33.2 255.255.255.240
no shutdown
!
interface Ethernet1
description ### Link to Core Router ###
speed 100
duplex full
nameif IF_Inside
security-level 100
ip address 10.0.0.14 255.255.255.252
no shutdown
!
! Default route for any unknown traffic
! =====================================
route IF_Outside 0.0.0.0 0.0.0.0 192.168.33.1 1
! 192.168.33.1 is the next hop to the ISP


By now you should be able to ping any directly connected device from each machine.

As you may notice the PIX is not doing NAT, this will be configured in a separate step later on in this section.


2.1.2 OSPF between Cisco Routers and PIX/ ASA

After we´ve finished the basic steps of configuring routers and PIX/ ASA Firewalls we will move to OSPF. For more information on setting up a basic router configuration have a look at ZIFs post some days ago.

OSPF is quite easy to configure.
First of you need to define a routing process, the routes you like to redistribute and if everything is fine you should have OSPF running in no time.
As earlier mentioned in this configs I´ll just post changes from the default configuration.

R_Inner_Core

! define your routing process
router ospf 100
! set your router ID
router-id 10.99.99.1
! configure logging
log-adjacency-changes
! define what you want to announce from this router
redistribute connected subnets
redistribute static subnets
! no routing updates on interface Loopback0
passive-interface Loopback0
!
! define networks attached to your router, if you do not add a network
! that is configured on one of your interfaces this interface will not be
! part of your OSPF (obvious!)
!
network 10.0.0.0 0.0.0.3 area 0
network 10.0.0.4 0.0.0.3 area 0
network 10.0.0.13 0.0.0.3 area 0
! announce even your loopback interface
network 10.99.99.1 0.0.0.0 area 0
network 172.16.0.0 0.0.0.255 area 0



The same is configured on router R_Outer_Core_1 and R_Outer_Core_2
R_Outer_Core_1

router ospf 100
router-id 10.99.99.2
log-adjacency-changes
redistribute connected subnets
redistribute static subnets
passive-interface Loopback0
network 10.0.0.0 0.0.0.3 area 0
network 10.0.0.8 0.0.0.3 area 0
network 10.99.99.2 0.0.0.0 area 0


R_Outer_Core_2

router ospf 100
log-adjacency-changes
redistribute connected subnets
redistribute static subnets
passive-interface Loopback0
network 10.0.0.4 0.0.0.3 area 0
network 10.0.0.8 0.0.0.3 area 0
network 10.99.99.3 0.0.0.0 area 0


Finally add your PIX /ASA to the OSPF network.
FW-GW-1

! create your routing process
router ospf 100
! define your router ID |
! NOTE: no loopback interfaces can be created on ASA and PIX
! you could use a hostname instead
router-id 10.0.0.14
network 10.0.0.12 255.255.255.252 area 0
log-adj-changes
redistribute static subnets
! Propagate a default route into the OSPF process so that every unknown IP
! can be reached via THIS pix /ASA
default-information originate


Well so much for basic OSPF. You should be able to ping every device in your network from every location.

If you issue a show ip route on R_Inner_Core the output should look like:

R_Inner_Core#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route

Gateway of last resort is 10.0.0.14 to network 0.0.0.0

172.16.0.0/24 is subnetted, 1 subnets
C 172.16.0.0 is directly connected, FastEthernet2/0
10.0.0.0/8 is variably subnetted, 7 subnets, 2 masks
O 10.0.0.8/30 [110/2] via 10.0.0.6, 00:01:18, FastEthernet0/1
[110/2] via 10.0.0.2, 00:01:18, FastEthernet0/0
C 10.0.0.12/30 is directly connected, FastEthernet1/0
O 10.99.99.2/32 [110/2] via 10.0.0.2, 00:01:18, FastEthernet0/0
O 10.99.99.3/32 [110/2] via 10.0.0.6, 00:01:18, FastEthernet0/1
C 10.0.0.0/30 is directly connected, FastEthernet0/0
C 10.99.99.1/32 is directly connected, Loopback0
C 10.0.0.4/30 is directly connected, FastEthernet0/1
O*E2 0.0.0.0/0 [110/1] via 10.0.0.14, 00:01:18, FastEthernet1/0


O*E2 0.0.0.0/0 [110/1] via 10.0.0.14, 00:01:18, FastEthernet1/0 is one of the more interesting routes. This is the default route announced into the OSPF area by our PIX/ASA. As a consequence all traffic to unknown IPs will be send to the PIX/ASA.


2.1.3 Bringing up the Internet gateway

With OSPF running and a default route pointing to the Internet propagated we just need some few adjustments on our PIX/ASA to allow Internet access.
First of all, since our network is running with private IPs, we need NAT to be configured. In this case PAT (port address translation) is the better term.

Assuming that our ISP offered us the network 192.168.33.0 255.255.255.240 and his router got the IP 192.168.33.1 we have left the IP range 192.168.33.2-192.168.33.14 for our use.

We will use the IP address 192.168.33.3 for the PAT configuration that should be enough for a while. Second step is to configure what source IP addresses will be NATed. Since this is the central breakout point the answer is obvious every IP!


global (IF_Outside) 1 192.168.33.3
nat (IF_Inside) 1 0.0.0.0 0.0.0.0
! translate every IP on the inside Interface into
! the public IP + specific port


Since we've not configured the ISP router we check if NAT is correct configured by using show nat
This should return something like:

show nat

NAT policies on Interface IF_Inside:
match ip IF_Inside any IF_Outside any
dynamic translation to pool 1 (192.168.33.3)


All done now! You should have a running network from where we can go ahead.

Network Diagramm:


Attached you can find the configuration of our Routers and PIX
LINK: R_Inner_Core
LINK: R_Outer_Core_1
LINK: R_Outer_Core_2
LINK: FW-GW-1


More to come in a few days, feel free to post corrections, suggestions and of course questions.

Cheers NWG