EIGRP mit MD5 Verschlüsselung auf den WAN-Verbindungen

<DRUCK-Version>

Im Teil 10 dem ersten EIGRP-Labor Teil haben wir unser Basisnetzwerk unter folgendem Design erarbeitet.
Layer3-IPv4 Netzwerk

Ziel dieses Labores ist es, alle Verbindungen zwischen den Routern zu Verschlüsseln um ein Eindringen von Informationen zu verhindern.
Dazu nutzen wir die Authentisierung mit MD5 Verschlüsselung. Der Schlüssel soll unbegrenzt Gültig sein, also auch nach einem Reset des Routers - wenn der Router noch keine Verbindung zum NTP-Server hat.

Die Schlüsselvergabe soll entsprechend folgender Skizze erfolgen.
MD5-Keys

Die Schlüssel sollen entsprechend ihrer Farbe in der Grafik erfolgen.
Eine Gültigkeitsdauer soll nicht angegeben werden, so das die Schlüssel auch nach einem Reboot der Router ohne gesetzte Uhrzeit laufen.

Konfiguration des Schlüssels auf dem Router Lissabon:
LISSABON#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
LISSABON(config)#key chain GREEN
LISSABON(config-keychain)#key 1
LISSABON(config-keychain-key)#key-string 0 GREEN
LISSABON(config-keychain-key)#end
LISSABON# 

Konfiguration der Schlüssel auf dem Router Madrid:
MADRID>enable
MADRID#
MADRID#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
MADRID(config)#
MADRID(config)#
MADRID(config)#key chain GREEN
MADRID(config-keychain)#key 1   
MADRID(config-keychain-key)#key-string GREEN
MADRID(config-keychain-key)#exit
MADRID(config-keychain)#exit
MADRID(config)#key chain YELLOW
MADRID(config-keychain)#key 1   
MADRID(config-keychain-key)#key-string YELLOW
MADRID(config-keychain-key)#exit
MADRID(config-keychain)#exit
MADRID(config)#key chain RED
MADRID(config-keychain)#key 1   
MADRID(config-keychain-key)#key-string RED
MADRID(config-keychain-key)#exit
MADRID(config-keychain)#exit
MADRID(config)#key chain BLUE
MADRID(config-keychain)#key 1   
MADRID(config-keychain-key)#key-string BLUE
MADRID(config-keychain-key)#end
MADRID#

Konfiguration des Schlüssels auf dem Router Rabat:
RABAT>enable
RABAT#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
RABAT(config)#key chain BLUE
RABAT(config-keychain)#key 1   
RABAT(config-keychain-key)#key-string BLUE
RABAT(config-keychain-key)#end
RABAT#

Konfiguration der Schlüssel auf dem Router Amsterdam:
AMSTERDAM>enable
AMSTERDAM#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
AMSTERDAM(config)#key chain GREEN
AMSTERDAM(config-keychain)#key 1   
AMSTERDAM(config-keychain-key)#key-string GREEN
AMSTERDAM(config-keychain-key)#exit
AMSTERDAM(config-keychain)#exit
AMSTERDAM(config)#key chain RED
AMSTERDAM(config-keychain)#key 1   
AMSTERDAM(config-keychain-key)#key-string RED
AMSTERDAM(config-keychain-key)#end
AMSTERDAM#

Konfiguration der Schlüssel auf dem Router Rom:
ROM>enable
ROM#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
ROM(config)#key chain YELLOW
ROM(config-keychain)#key 1   
ROM(config-keychain-key)#key-string YELLOW
ROM(config-keychain-key)#exit
ROM(config-keychain)#exit
ROM(config)#key chain BLUE
ROM(config-keychain)#key 1   
ROM(config-keychain-key)#key-string BLUE
ROM(config-keychain-key)#end
ROM#

Konfiguration der Schlüssel auf dem Router Berlin:
BERLIN>enable
BERLIN#
BERLIN#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
BERLIN(config)#
BERLIN(config)#key chain GREEN
BERLIN(config-keychain)#key 1   
BERLIN(config-keychain-key)#key-string GREEN
BERLIN(config-keychain-key)#exit
BERLIN(config-keychain)#exit
BERLIN(config)#key chain RED
BERLIN(config-keychain)#key 1   
BERLIN(config-keychain-key)#key-string RED
BERLIN(config-keychain-key)#exit
BERLIN(config-keychain)#exit
BERLIN(config)#key chain YELLOW
BERLIN(config-keychain)#key 1   
BERLIN(config-keychain-key)#key-string YELLOW
BERLIN(config-keychain-key)#exit
BERLIN(config-keychain)#exit
BERLIN(config)#key chain BLUE
BERLIN(config-keychain)#key 1   
BERLIN(config-keychain-key)#key-string BLUE
BERLIN(config-keychain-key)#end
BERLIN#

Konfiguration des Schlüssels auf dem Router Kopenhagen:
KOPENHAGEN>enable
KOPENHAGEN#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
KOPENHAGEN(config)#key chain RED
KOPENHAGEN(config-keychain)#key 1   
KOPENHAGEN(config-keychain-key)#key-string RED
KOPENHAGEN(config-keychain-key)#end
KOPENHAGEN#

Konfiguration des Schlüssels auf dem Router Warschau:
WARSCHAU>enable
WARSCHAU#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
WARSCHAU(config)#key chain YELLOW
WARSCHAU(config-keychain)#key 1   
WARSCHAU(config-keychain-key)#key-string YELLOW
WARSCHAU(config-keychain-key)#end
WARSCHAU#

Nach dem wir auf allen Routern die Schlüssel angelegt haben, werden wir jetzt die Verbindungen verschlüsseln.
Als erstes ist der Link zwischen Lissabon und Madrid mit dem Schlüssel Grün dran.
Starten wir auf dem Router in Lissabon:
LISSABON#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
LISSABON(config)#interface fastEthernet 0/0
LISSABON(config-if)#ip authentication mode eigrp 1 md5
*Apr  5 12:35:44.451: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.2 (FastEthernet0/0) is down: authentication mode changed
LISSABON(config-if)#ip authentication key-chain eigrp 1 GREEN
LISSABON(config-if)#end
LISSABON#

Die Fehlermeldung beim Konfigurieren zeigt uns, das die bisher unverschlüsselte EIGRP-Beziehung zwischen Lissabon und Madrid nun nicht mehr existiert. Sehen wir mal auf dem Router in Lissabon nach, was noch in der Routingtabelle steht und wie die EIGRP-Adjacency aus schaut.

LISSABON#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

     192.168.255.0/30 is subnetted, 1 subnets
C       192.168.255.0 is directly connected, FastEthernet0/0

In der Routingtabelle stehen keine Routen mehr drinnen, klar wir haben auch nur den Router in Lissabon auf Verschlüsselung mit MD5 gestellt.
Sieht den unser Lissabon Router überhaupt noch einen Nachbarn?

LISSABON#show ip eigrp neighbors detail
IP-EIGRP neighbors for process 1

Ganz klare Antwort: NÖ!
Verwendet der EIGRP-Routingprozeß 1 denn wirklich MD5 mit unserem Schlüssel "Grün"?!?

LISSABON#show ip eigrp interfaces detail
IP-EIGRP interfaces for process 1

                        Xmit Queue   Mean   Pacing Time   Multicast    Pending
Interface        Peers  Un/Reliable  SRTT   Un/Reliable   Flow Timer   Routes
Fa0/0              0        0/0         0       0/1           50           0
  Hello interval is 5 sec
  Next xmit serial <none>
  Un/reliable mcasts: 0/1  Un/reliable ucasts: 3/4
  Mcast exceptions: 2  CR packets: 1  ACKs suppressed: 0
  Retransmissions sent: 3  Out-of-sequence rcvd: 0
  Authentication mode is md5,  key-chain is "GREEN"
  Use multicast
LISSABON#

Na dann werden wir unseren Router in Madrid mal konfigurieren.
Verschlüsseln wir also die Verbindung nach Lissabon mit MD5 und Key Green.
 
MADRID>enable
MADRID#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
MADRID(config)#interface fastEthernet 4/0
MADRID(config-if)#ip authentication mode eigrp 1 md5
MADRID(config-if)#ip authentication key-chain eigrp 1 GREEN
MADRID(config-if)#
*Apr  5 13:04:08.087: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.1 (FastEthernet4/0) is up: new adjacency
MADRID(config-if)#end
MADRID#

Man kann schön erkennen, wir die EIGRP-Adjacency zwischen den beiden Routern wieder aufgebaut wird.
Können sich denn die Nachbarn auch wieder sehen?
Prüfen wir es mal nach.

MADRID#show ip eigrp neighbors detail
IP-EIGRP neighbors for process 1
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
0   192.168.255.1           Fa4/0             12 00:00:19  167  1002  0  10
   Version 12.4/1.2, Retrans: 1, Retries: 0
3   192.168.255.14          AT3/0.1           13 00:31:56   63   850  0  10
   Version 12.4/1.2, Retrans: 3, Retries: 0, Prefixes: 4
2   192.168.255.10          Fa0/0             11 00:31:56 1022  5000  0  8
   Version 12.4/1.2, Retrans: 0, Retries: 0, Prefixes: 4
1   192.168.255.5           Fa4/1             14 00:31:57  208  1248  0  3
   Version 12.4/1.2, Retrans: 1, Retries: 0

Ja woll, die Verbindung zwischen den beiden Routern ist wieder aufgebaut.
Wird denn auch der richtige Schlüssel und Mechanismus angewendet?

MADRID#show ip eigrp interfaces detail
IP-EIGRP interfaces for process 1

                        Xmit Queue   Mean   Pacing Time   Multicast    Pending
Interface        Peers  Un/Reliable  SRTT   Un/Reliable   Flow Timer   Routes
Fa4/0              1        0/0       167       0/1           50           0
  Hello interval is 5 sec
  Next xmit serial <none>
  Un/reliable mcasts: 0/5  Un/reliable ucasts: 6/14
  Mcast exceptions: 4  CR packets: 4  ACKs suppressed: 0
  Retransmissions sent: 6  Out-of-sequence rcvd: 0
  Authentication mode is md5,  key-chain is "GREEN"
  Use multicast
<...snip...>
MADRID#

Sehen wir uns die Pakete zwischen den beiden Routern mal genauer an.
Am besten auf dem Router in Lissabon, da dieser nur eine EIGRP-Beziehung zum Router Madrid unterhält.
LISSABON#debug eigrp packets verbose
EIGRP Packets debugging is on
    (UPDATE, REQUEST, QUERY, REPLY, HELLO, IPXSAP, PROBE, ACK, STUB, SIAQUERY, SIAREPLY)
LISSABON#
*Apr  5 13:33:10.443: EIGRP: received packet with MD5 authentication, key id = 1
*Apr  5 13:33:10.447: EIGRP: Received HELLO on FastEthernet0/0 nbr 192.168.255.2
*Apr  5 13:33:10.451:   AS 1, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
*Apr  5 13:33:11.011: EIGRP: Sending HELLO on FastEthernet0/0
*Apr  5 13:33:11.015:   AS 1, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
<...snip...>
LISSABON#undebug all
All possible debugging has been turned off
LISSABON#

Okay, damit sind wir uns jetzt sicher, das die Router den richtigen Mechanismus und das richtige Keyword verwenden.
Denkt immer daran, das beim Konfigurieren der Verschlüsselung die EIGRP-Adjacency zusammenbricht - also die Routingtabelle geflushed wird und ihr unter Umständen eure SSH/Telnet-Session einbüßt.

Legen wir also auf dem Router in Rabat los und konfigurieren die Verschlüsselung nach Madrid.
RABAT#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
RABAT(config)#
RABAT(config)#interface FastEthernet0/0
RABAT(config-if)#ip authentication mode eigrp 1 md5
RABAT(config-if)#ip authentication key-chain eigrp 1 BLUE
RABAT(config-if)#end
*Apr  5 13:54:24.995: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.6 (FastEthernet0/0) is down: authentication mode changed

Jetzt konfigurieren wir in Madrid alle noch nicht verschlüsselten Verbindungen, also die Verbindungen nach Rabat, Amsterdam und Rom.
MADRID#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
MADRID(config)#
MADRID(config)#interface FastEthernet4/1
MADRID(config-if)#ip authentication mode eigrp 1 md5
MADRID(config-if)#ip authentication key-chain eigrp 1 BLUE
MADRID(config-if)#exit
MADRID(config)#interface FastEthernet0/0
MADRID(config-if)#ip authentication mode eigrp 1 md5
MADRID(config-if)#ip authentication key-chain eigrp 1 RED
MADRID(config-if)#exit
MADRID(config)#interface ATM3/0.1
MADRID(config-subif)#ip authentication mode eigrp 1 md5
MADRID(config-subif)#ip authentication key-chain eigrp 1 YELLOW
MADRID(config-subif)#end
MADRID#

Der nächste Router ist der Router in Amsterdam.
Konfigurieren wir dort die Interface FastEthernet 1/0 und 1/1.
AMSTERDAM>enable
AMSTERDAM#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
AMSTERDAM(config)#interface FastEthernet1/1
AMSTERDAM(config-if)#ip authentication mode eigrp 1 md5
AMSTERDAM(config-if)#ip authentication key-chain eigrp 1 GREEN
AMSTERDAM(config-if)#exit
AMSTERDAM(config)#interface FastEthernet1/0
AMSTERDAM(config-if)#ip authentication mode eigrp 1 md5
AMSTERDAM(config-if)#ip authentication key-chain eigrp 1 RED
AMSTERDAM(config-if)#exit
*Apr  5 14:14:23.455: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.18 (FastEthernet1/1) is down: authentication mode changed
*Apr  5 14:14:27.047: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.9 (FastEthernet1/0) is up: new adjacency
AMSTERDAM(config)#

Und nun konfigurieren wir der Router in Rom.
ROM#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
ROM(config)#interface ATM6/0.1
ROM(config-subif)#ip authentication mode eigrp 1 md5
ROM(config-subif)#ip authentication key-chain eigrp 1 BLUE
ROM(config-subif)#exit
ROM(config)#interface ATM3/0.1
ROM(config-subif)#ip authentication mode eigrp 1 md5
ROM(config-subif)#ip authentication key-chain eigrp 1 YELLOW
ROM(config-subif)#end
ROM#

Der Router auf unserer Liste ist der Router in Berlin.
Hier konfigurieren wir im hintereinander weg die Interface.
BERLIN>enable
BERLIN#
BERLIN#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
BERLIN(config)#
BERLIN(config)#interface FastEthernet4/1
BERLIN(config-if)#ip authentication mode eigrp 1 md5
BERLIN(config-if)#ip authentication key-chain eigrp 1 GREEN
BERLIN(config-if)#exit
BERLIN(config)#interface ATM6/0.1
BERLIN(config-subif)#ip authentication mode eigrp 1 md5
BERLIN(config-subif)#ip authentication key-chain eigrp 1 BLUE
BERLIN(config-subif)#exit
BERLIN(config)#interface FastEthernet0/0
BERLIN(config-if)#ip authentication mode eigrp 1 md5
BERLIN(config-if)#ip authentication key-chain eigrp 1 YELLOW
BERLIN(config-if)#exit
BERLIN(config)#interface FastEthernet4/0
BERLIN(config-if)#ip authentication mode eigrp 1 md5
BERLIN(config-if)#ip authentication key-chain eigrp 1 RED
BERLIN(config-if)#end
BERLIN#
*Apr  5 14:23:09.559: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.30 (FastEthernet0/0) is down: authentication mode changed
*Apr  5 14:23:09.987: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.26 (FastEthernet4/0) is down: authentication mode changed
*Apr  5 14:23:10.211: %SYS-5-CONFIG_I: Configured from console by console
*Apr  5 14:23:10.819: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.21 (ATM6/0.1) is up: new adjacency
*Apr  5 14:23:11.455: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.17 (FastEthernet4/1) is up: new adjacency

Auch auf dem Router in Berlin sind die Verbindungen zu den EIGRP-Prozessen nach Amsterdam und Rom wieder verfügbar.
Dafür sind uns die Adjacencys zu den Routern Kopenhagen und Warschau verloren gegangen.
Konfigurieren wir den Router in Kopenhagen um das zu beheben.
KOPENHAGEN>enable
KOPENHAGEN#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
KOPENHAGEN(config)#interface FastEthernet0/0
KOPENHAGEN(config-if)#ip authentication mode eigrp 1 md5
KOPENHAGEN(config-if)#ip authentication key-chain eigrp 1 RED
KOPENHAGEN(config-if)#end
KOPENHAGEN#
KOPENHAGEN#
*Apr  5 14:29:42.671: %SYS-5-CONFIG_I: Configured from console by console
*Apr  5 14:29:43.351: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.25 (FastEthernet0/0) is up: new adjacency 

Der letzte Router, der noch nicht mit Verschlüsselung arbeitet, ist nun drann - Warschau.
WARSCHAU>enable
WARSCHAU#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
WARSCHAU(config)#interface FastEthernet0/0
WARSCHAU(config-if)#ip authentication mode eigrp 1 md5
WARSCHAU(config-if)#ip authentication key-chain eigrp 1 YELLOW
WARSCHAU(config-if)#exit
WARSCHAU(config)#end
WARSCHAU#
*Apr  5 14:32:15.003: %SYS-5-CONFIG_I: Configured from console by console
*Apr  5 14:32:15.131: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.255.29 (FastEthernet0/0) is up: new adjacency
WARSCHAU# 

Damit sind alle Verbindungen gesichert und die Zielstellung für diesen Workshop erreicht.
Wer seine Konfiguration vergleichen möchte, kann hier die Konfigurationen download/ansehen.
Diese Konfigurationen sind die Basis für den nächsten EIGRP-Workshopteil.

Lissabon-confg
Rabat-confg
Madrid-confg
Amsterdam-confg
Rom-confg
Berlin-confg
Kopenhagen-confg
Warschau-confg

Ich hoffe es hat euch Spaß gemacht,
Eric