In grösseren Netzwerken sollte aus Performance- und Sicherheitsüberlegungen mit VLAN’s gearbeitet werden. Für einen ersten Überblick zu VLAN’s bietet sich der Blog Schulnetz.info von Edi Pfisterer an. Später wird man sich mit der Anleitung des eigenen Switches auseinandersetzen müssen, die dann aber oft viel technischer verfasst ist.
Hier habe ich bereits ein paar Befehle zusammengefasst, die ich immer mal wieder benötige. Neu kann unser Switch nun auch mit ACL’s umgehen. VLAN’s ohne ACL’s bringen (nur) mehr Performance, weil Broadcastverkehr eingeschränkt wird.
(Broadcasts sind Datenpakete, die ins ganze Netzwerk gesendet werden, weil nicht bekannt ist, an welcher Adresse sich der Empfänger befindet. Je mehr solcher Broadcasts durch das Netzwerk übermittelt werden, desto weniger “Platz” hat es auf der verwendeten Leitung für “Nutzverkehr”, das Netzwerk wird also langsamer).
Wenn Datenverkehr von VLAN zu VLAN übermittelt werden muss, spricht man von Routing. Häufig wird Routing benötigt, um z.B. auf das VLAN mit den Servern zu kommen. Mit eingestelltem Routing bringen VLAN’s also nur weniger Broadcastverkehr, aber keinen Sicherheitsgewinn. Dafür werden ACL’s benötigt, in denen angegeben werden kann, was genau von einem VLAN in das andere darf. Unser neuer Switch kann nun auch mit ACL’s umgehen. So gibt es Zugangspunkte in unserem Netzwerk, die aus Sicherheitsüberlegungen nicht von allen VLAN’s aus zugänglich sein sollten (wie z.B. die Hyper-V-Hosts oder die Verwaltungswebseiten von Servern und Storage, …). Trotzdem wäre es praktisch, wenn ich zur Verwaltung Zugang von meinem Rechner aus hätte und nicht einen Verwaltungsrechner nur für diesen Zweck einsetzen müsste.
Die folgenden Dinge treffen für unseren HP Switch zu. Bei anderen Herstellern muss man zu deren Dokumentation greifen.
Eine ACL (Access Control List) besteht aus einer oder mehreren ACE(s) (Access Control Entry). HP unterscheidet zwischen “standard ACLs” und “extended ACLs”. Bei den “standard ACLs” werden nur die “source addresses” (SA) betrachtet, also sind nur Regeln möglich, die den Verkehr VON xy regeln. Besser geeignet für meine Vorhaben sind die “extended ACLs”, die den Verkehr VON xy NACH uv regeln können.

(config)# ip access-list extended <name-str>
Mit diesem Befehl kann man eine extended ACL bearbeiten oder neu erstellen, falls es noch keine ACL mit diesem Namen gibt. Falls der <name-str> Leerzeichen enthält, muss man den Namen in einfache oder doppelte Anführungszeichen setzen. Die Namen dürfen aus 64 Zeichen (alphanumeric) bestehen.
(config-ext-nacl)# deny ip any host 192.168.1.15
Erstellt eine ACE die den Verkehr von allen Netzwerken zum Host 192.168.1.15 verhindert.

Um eine neue ACE in eine bereits bestehende Liste einzufügen, kann man einfach die gewünschte Zahl voranstellen, also z.B. 15 deny ip any host 192.168.1.15.
# show access-list
Zeigt eine Übersicht über die eingetragenen ACLs.
# show access-list config
Zeigt Konfigurationsdetails der eingetragenen ACLs an.
#show access-list vlan <vid>
Zeigt die ACLs an, die dem angegebenen VLAN zugeordnet sind.
# vlan <vid> ip access-group <identifier> <in out>
Ordnet eine ACL einem VLAN zu. Wenn man “no” dem Befehl voranstellt, wird die Zuordnung wieder gelöscht. <identifier> muss mit dem Namen (oder der Nummer) der ACL ersetzt werden.

Implicit Deny
Wenn eine ACL einem Port oder einem VLAN zugeordnet ist, werden alle nicht explizit erlaubten Fälle abgelehnt.

Konkret
Viel einfacher wäre es gewesen, alle Verwaltungsadressen in ein eigenes VLAN zu stecken, aber wie so oft ist man schlauer, wenn alles schon gemacht ist und eine Änderung aufwendig wird. Unsere Server sind im gleichen Subnetz/VLAN wie die Hyper-V-Hosts und die Verwaltungswebseiten von Storage/Hyper-V-Hosts. Also müssen alle Clients aus ihren VLANS Zugang zum Server-VLAN haben, aber nicht zu den einzelnen dieser Ausnahmen. Dies kann mit den ACLs erreicht werden.
Die ACL kann so angelegt werden:
ip access-list extended „Server out“
deny ip any host 192.168.13.25
deny ip any host 192.168.13.28
deny ip any host 192.168.13.35
deny ip any host 192.168.13.36
deny ip any host 192.168.13.50
deny ip any host 192.168.13.51
permit ip any any
exit
Nun muss die ACL noch dem entsprechenden Server VLAN zugewiesen werden
vlan 207 ip access-group “Server out” out