-
TECHNISCHES
GEBIET DER ERFINDUNG
-
Die
Erfindung bezieht sich allgemein auf die Handhabung von Sicherheitsnetzwerkelementen,
welche ein Paketfiltern durchführen.
Insbesondere bezieht sich die Erfindung auf ein Verfahren und auf
Anordnungen zum Vorsehen einer Konfiguration einer Firewall (firewall)
und zum Aufteilen der Verwaltungsarbeit auf mehrere Verwalter.
-
HINTERGRUND
DER ERFINDUNG
-
Die
US-A-6 158 010 offenbart ein System zum Aufrechterhalten der Sicherheit
in einem verbreiteten Computernetzwerk.
-
Eine
Firewall ist ein Gateway (gateway), welche zur selben Zeit wie eine
Verbindungseinrichtung und eine Trenneinrichtung zwischen Netzwerken
in dem Sinn arbeitet, dass die Firewall den Verkehr in der Bahn hält, der
durch sie hindurch von einem Netzwerk zum anderen gelangt und Verbindungen
und Pakete einschränkt,
die durch den Verwalter des Systems als unerwünscht festgelegt worden sind.
In körperlicher
Hinsicht ist eine Firewall eine Maschine mit einer geeigneten Software,
welche die ihr zugewiesenen Aufgaben erfüllt. Sie kann ein Router (router),
ein Personalcomputer (PC), eine spezielle Vorrichtung oder was auch
immer sein, das für
solche Zwecke verwendet werden kann. Eine Firewall wird normalerweise
zum Schützen
eines internen Netzwerks einer Organisation und zum Verbinden des
internen Netzwerks mit einem öffentlichen Netzwerk,
wie zum Beispiel dem Internet, verwendet. Auf Datenpaketniveau filtert
eine Firewall Datenpakete, die in das interne Netzwerk eintreten
und/oder dieses verlassen. Die Regeln, nach denen die Datenpakete
gefiltert werden, sind in Zugangsregeln festgelegt. Zusätzlich zum
Filtern zum Datenpaketen kann eine Firewall Datenpakete sichern,
die beispielsweise zwischen einigen Kommunikationseinheiten übertragen
werden. In diesem Fall arbeitet die Firewall sowohl als eine Firewall
als auch als ein Sicherheitsgateway, wie zum Beispiel ein VPN (virtuelles
privates Netzwerk (Virtual Private Network))-Gateway.
-
Filtervorschriften
für Firewalls
sind offenbart in Hazelhurst et al.: "Algorithmen zum Verbessern der Verlässlichkeit
von Firewall- und Filterregelverzeichnissen (Algorithms for improving
the dependability of firewall and filter rule lists)", Proceedings International Conference
on Dependable Systems and Networks, DNS 2000, New York, Seiten 576–585, XP000988689,
ISBN: 0-7695-0708-5.
-
1 zeigt ein Beispiel mit
einem ersten, internen Netzwerk 12, einem zweiten, internen
Netzwerk 14 und einem öffentlichen
Netzwerk 10. Das öffentliche
Netzwerk kann beispielsweise das Internet sein. Die internen Netzwerke 12, 14 sind
im Einzelnen über
Firewalls 16 und 18 mit dem öffentlichen Netzwerk 10 verbunden.
Die Firewall 16, 18 kann wie ein einziger Netzwerkknoten
(Server) oder wie eine Anhäufung
von Knoten implementiert sein. In 1 ist
die Firewall 18 eine Firewallanhäufung, welche Knoten 19a, 19b und 19c aufweist.
Der Begriff Sicherheitsnetzwerkelement wird in dieser Beschreibung
in Bezug auf einen Sicherheitsnetzwerkknoten oder auf eine Anhäufung von
Sicherheitsnetzwerkknoten, wie zum Beispiel Firewalls oder Router, verwendet,
wo ein Filtern von Datenpaketen durchgeführt wird, und welcher wenigstens
zwei Netzwerke miteinander verbindet. Ein Sicherheitsnetzwerkelement
kann beispielsweise ein einfacher Firewallknoten zum Filtern von
Paketen oder ein Firewallknoten, welcher mit der VPN-Funktionsweise
ausgestattet ist, oder eine Anhäufung
solcher Knoten sein.
-
Häufig sind
Zugangsregeln einer Firewall in Form einer Tabelle oder Aufstellung
(Regelbasis) von Regeln ausgedrückt,
die Datenpaketcharakteristika und diesbezügliche Maßnahmen aufweist. Die Regelbasis
ist ein zentraler Teil einer Sicherheitsstrategie einer Firewall.
Die Datenpaketcharakteristika in den Regeln sind Parameterwerte,
die von Kopfteilfeldern eines Datenpakets erhalten werden und beispielsweise
eine Sender-IP (Internetprotokoll)-Adresse, eine Ziel-IP-Adresse und Service-
(oder Protokoll-) oder andere Werte sein können. Die Maßnahme liefert
Information darüber,
wie ein Datenpaket zu handhaben ist, welches mit den in der jeweiligen
Regel festgelegten Datenpaketcharakteristika übereinstimmt (d.h. welches
der Regel entspricht). Dies bedeutet, dass bei einem Datenpaket,
welches die in einer Regel angezeigte Kopfteilinformation hat, die
in der Regel angezeigte Maßnahme
durchgeführt
wird. Bei einer Firewall ist diese Maßnahme üblicherweise "Verwerfen" oder "Zulassen" (oder "Ablehnen/Akzeptieren"), was bedeutet,
dass das Datenpaket entsprechend verworfen wird oder weitergeführt werden
kann. Die Regeln einer Regelbasis werden in einer bestimmten Reihenfolge überprüft, bis
eine Entscheidung getroffen wird, wie das Datenpaket zu verarbeiten
ist. Die Reihenfolge der Regeln in der Regelbasis legt üblicherweise
die Reihenfolge fest, in der die Kopfteilfelder eines Datenpakets
mit den Regeln verglichen werden, das heißt, die Regeln werden eine
nach der anderen vom Beginn der Regelbasis überprüft. Wenn eine Regel gefunden
wird, mit welcher die Charakteristika eines Datenpakets übereinstimmen,
wird die Maßnahme
vorgenommen, welche auf diese Regel bezogen ist, und häufig ist
ein Fortsetzen der Überprüfung der
Regeln nicht erforder lich. Jedoch könnte die in der Regel festgelegte
Maßnahme "Fortsetzen", in welchem Fall
das Überprüfen der
Regelbasis von der nächsten
Regel her fortgesetzt wird, oder "Überspringen" sein, in welchem
Fall das Überprüfen der
Regelbasis von der Regel her fortgesetzt wird, welche in der "Überspringen"-Maßnahme
spezifiziert ist. Die Maßnahme
der Firewall kann auch "Ablehnen" sein, welche derjenigen
der "Verwerfen"-Maßnahme ähnlich ist.
Der Unterschied besteht darin, dass die "Verwerfen"-Maßnahme
zu einem einfachen Verwerfen des Datenpakets führt, und beim "Ablehnen" der Sender des Datenpakets
von dem Verwerfen des Datenpakets unterrichtet wird.
-
Um
sicherzustellen, dass die Firewall in der gewünschten Weise arbeitet, ist
die Firewall von einem professionellen Verwalter ordnungsgemäß zu konfigurieren
und zu handhaben. Das Interface zum Handhaben der Firewall ermöglicht dem
Sicherheitsverwalter üblicherweise,
verschiedene unterschiedliche Arten von Regeln festzulegen. Zum
Beispiel können
Regeln für
einzelne Rechner, Rechnergruppen, Netzwerke oder IP (Internetprotokoll)-Adressbereiche
festgelegt werden. Außerdem
beeinflusst die Reihenfolge der Regeln in der Regelbasis den Betrieb
der Firewall. Falls zwei oder mehr Regeln vorliegen, mit denen ein
einzelnes Datenpaket übereinstimmen
würde,
bedeutet dies, dass diejenige, welche in der Regelbasis als erste
aufgeführt
ist, in Betracht gezogen wird. Daher ist es erforderlich, die Regeln
einer Regelbasis als Ganzes zu überprüfen, wenn
der Betrieb einer Firewall analysiert wird. Die Größe der Regelbasis
kann jedoch sehr beträchtlich
sein, insbesondere wenn das Netzwerk, welches durch die Firewall
zu schützen
ist, groß ist
(und heterogen in Bezug auf die Schutzerfordernisse). Auch kann
die Struktur der Regelbasis komplex sein, und die tatsächlichen
Auswirkungen der Regeln können
nicht immer klar sein. Daher ist die Handhabung einer Firewall eine
komplexe, verwaltungsmäßige Aufgabe,
bei der leicht Fehler gemacht werden können.
-
Außerdem ist
die in einer Firewall verwendete Regelbasis aufgrund geänderter
Sicherheitserfordernisse immer wieder auf den neuesten Stand zu
bringen. Selbst eine kleine Änderung
in der Regelbasis kann eine große
Auswirkung auf das Gesamtergebnis haben, und daher ist auch das
Aktualisieren von einem professionellen Verwalter durchzuführen. Bei
Firmen mit mehreren Firewalls und Sitzen ist es erforderlich, die
Verantwortung und die Arbeitsbelastung beim Handhaben und Konfigurieren
der Firewalls aufzuteilen. Jedoch können nicht sämtlichen
Verwaltern notwendigerweise dieselben Rechte beim Verwalten der
Firewalls gegeben werden. Es kann das Erfordernis bestehen, einige
allgemeine Regeln bei der Firewallorganisation umfassend durchzusetzen
und dem lokalen Verwalter Einschränkungen aufzuerlegen, ohne
die Fähigkeit
der lokalen Verwalter, zulässige Änderungen
vorzunehmen, ungebührlich
zu beschränken.
-
Regelbasis-Vorlagen
sind ein möglicher
Weg, die Struktur der Regelbasis zu überwachen und nicht-redigierbare
Regeln für
Regelbasen festzusetzen. Beispielsweise kann ausschließlich ein übergeordneter
Anwender (ein spezieller Verwalter, dessen Handhabungsrechte in
keiner Weise beschränkt
sind) die Vorlagen aufbereiten, woraufhin ein normaler Verwalter
lediglich Regelbasen redigieren kann, und eine Regelbasis ist auf
eine Vorlage aufgebaut, die aus Regeln wie eine normale Regelbasis
besteht. Zusätzlich
kann die Vorlage spezielle Einsetzpunkte aufweisen, die die Punkte
sind, wo der normale Verwalter die Regelbasis redigieren kann. Eine
einfache, beispielhafte Vorlage ist nachfolgend gezeigt:
-
-
Die
beispielhafte, oben erwähnte
Vorlage bedeutet, dass die erste und die letzte Regel in der Regelbasis
feststehende Regeln #1 und #3 sind. Ein normaler Verwalter wäre in der
Lage, in dem Einsetzpunkt nach Regel #1 Regeln hinzuzufügen, aber
er/sie kann nicht die Regeln #1 und #3 redigieren, woraufhin eine
Regelbasis, die über
die obige Vorlage hinausgeht, beispielsweise wie die folgende aussehen
könnte:
-
-
Bei
diesem Beispiel hat der normale Verwalter Regeln #2.1 und #2.2 hinzugefügt, woraufhin
die HTTP (HyperText Übertragungsprotokoll
(HyperText Transfer Protocol))-Datenpakete vom Sender A zum Ziel
C und jedwede Datenpakete vom Sender A zum Ziel D weitergehen können. Aber
der normale Verwalter kann beispielsweise den HTTP-Verkehr von B
zu C nicht unterbinden, welcher in Regel #1 ermöglicht ist. Auf diese Weise
kann der übergeordnete
Anwender die Handhabungsrechte eines normalen Verwalters durch Festlegen
geeigneter Vorlage-Regelbasen beschränken. Der Nachteil der Verwendung
von Vorlagen besteht darin, dass das Festlegen geeigneter, genügend beschränkter, aber
nicht zu sehr beschränkter
Vorlagen äußerst schwierig
sein kann.
-
ACLs
(Zugangsüberwachungslisten)
sind eine weitere theoretische Möglichkeit
zum Beschränken
von Handhabungsrechten normaler Verwalter. Eine ACL könnte für jede Regel
festgelegt sein, da jedoch die Reihenfolge der Regeln eine zentrale
Rolle in Bezug auf die Gesamtwirkung einer Regelbasis spielt, kann
dies nicht einmal möglich
sein.
-
Eine
Sicherheitsstrategie kann auch NAT (Netzwerkadressenumsetzung (network
address translation))-Regeln enthalten. NAT ist die Umsetzung einer
Internetprotokolladresse (IP Adresse), welche innerhalb eines Netzwerks
verwendet wird, auf eine andere IP Adresse, welche innerhalb eines
anderen Netzwerks bekannt ist. Üblicherweise
nimmt eine Firma ihre internen Netzwerkadressen in eine oder mehrere öffentliche
IP Adressen auf und nimmt die öffentlichen
IP Adressen auf eingehenden Paketen nicht zurück in interne IP Adressen.
NAT behält
auch die Anzahl öffentlicher
IP Adressen bei, welche eine Firma benötigt, und es ermöglicht einer
Firma die Verwendung einer einzigen (oder einer beschränkten Anzahl
von) IP Adresse zum Verbinden mehrerer Computer mit öffentlichen
Netzwerken. NAT-Regeln
werden in einer Firewall häufig
verarbeitet, nachdem eine entsprechende Zugangsregel gefunden worden
ist, welche das Datenpaket zulässt.
Falls das Datenpaket nicht zugelassen wird, sind natürlich keine
zu verarbeitenden NAT-Regeln erforderlich. Das entsprechende System
von NAT-Regeln gleicht den Zugangsregeln, die Wirkung der NAT-Regeln
besteht aber darin, die Sender- und/oder Zieladressen der zu verarbeitenden
Datenpakete zu ändern.
-
Bei
Zugangsregeln sind die Sender- und Zieladressen immer wie Adressen
ausgedrückt,
die sich in dem Kopfteil des zu verarbeitenden Datenpakets befinden.
Falls ein Ziel-NAT für
das Datenpaket festgelegt ist (Netzwerkadressenumsetzung für die Zieladresse),
ist die Zieladresse in dem Datenpaket-Kopfteil nicht die tatsächliche
Adresse des Ziels. Da die Zieladressen nicht immer die wahren Adressen
darstellen, besteht die Gefahr, bei den Auswirkungen einer Regel
beim Festlegen einer Regelbasis durcheinander zu geraten. Unten
ist ein Beispiel einer Ziel-NAT-Regel angegeben. Die Regel wird
angewandt, wenn die Sender- und Zieladressen in dem Kopfteil des
auf dem HTTP-Service zu verarbeitenden Datenpakets mit der NAT-Regel übereinstimmen,
woraufhin die ursprüngliche
Zieladresse C des zu verarbeitenden Datenpakets auf E entsprechend
der NAT-Regel umgesetzt wird.
-
-
Falls
eine Sender-NAT (Netzwerkadressenumsetzung für die Sendeadresse) für ein Datenpaket
festgelegt ist, wird die Senderadresse des Datenpakets geändert. Die
Senderadresse ist in den Zugangsregeln immer die wahre Senderadresse,
dies verursacht also keine vergleichbare Verwirrung wie bei der
Ziel-NAT. Die Verwendung von NAT-Regeln macht ein Analysieren der
Gesamtwirkung der Regelbasen sogar noch schwieriger.
-
Ferner
machen es NAT-Regeln möglich,
sich zufällig
oder absichtlich über
die Wirkung feststehender Vorlageregeln hinwegzusetzen. Beispielhaft
kann die folgende Regelbasis mit Vorlageregeln #1 und #3 und den
Regeln #2.1 und #2.2 eines normalen Anwenders betrachtet werden:
-
-
Der
normale Verwalter kann zum Beispiel eine Ziel-NAT-Regel zufügen, bei
der die Zieladresse für
die zu verarbeitenden Datenpakete geändert ist wie:
-
-
Falls
nunmehr ein HTTP-Datenpaket von B bestimmt für C verarbeitet wird, wird
es zunächst
mit Regel #1 der Regelbasis verglichen, mit welcher es wegen des
Ziels nicht zusammenpasst. Als nächstes
wird es daher mit Regel #2.1 der Regelbasis verglichen, mit welcher
eine Übereinstimmung
besteht, da der Sender und das Ziel und der Service übereinstimmen.
Gemäß dieser
Regel (Regel #2.1 der Regelbasis) wird das Paket zum Weitergehen
zugelassen. Dann wird die zugehörige
NAT-Regel auf das Datenpaket angewandt, welche die Zieladresse des
Datenpakets auf E ändert.
So wird das HTTP-Datenpaket auf diese Weise von B zu E zugelassen,
was in deutlicher Kollision mit der Vorlageregel #1 der Regelbasis
steht. Daher kann die Verwendung allein von Vorlagen nicht das garantierte
Ergebnis der Gesamtwirkung der Regeln ergeben.
-
Es
besteht daher das Bedürfnis
für ein
Verfahren zum Durchsetzen und/oder Prüfen der Gesamtwirkung von Regeln
in einer Regelbasis.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Der
Erfindung liegt die Aufgabe zugrunde, die Handhabungsregelbasen
von Firewalls und anderen Netzwerkknoten leichter und zuverlässiger zu
machen. Zusätzlich
besteht ein Ziel der Erfindung darin, die Flexibilität und Wirksamkeit
beim Aufteilen der Verantwortung und Arbeitsbelastung beim Handhaben
und Konfigurieren von Netzwerkknoten zwischen mehreren Verwaltern
zu erhöhen.
-
Die
Aufgaben der Erfindung werden erfindungsgemäß wie in den beigefügten unabhängigen Patentansprüchen offenbart
gelöst.
Bevorzugte Ausführungsformen
der Erfindung sind in den abhängigen
Ansprüchen
offenbart. Die in einem abhängigen
Anspruch beschriebenen Merkmale können außerdem mit Merkmalen verbunden
werden, die in einem anderen abhängigen
Anspruch beschrieben sind, um weitere Ausführungsformen der Erfindung
anzugeben.
-
Gemäß der Erfindung
wird eine Gültigkeitsregelbasis
zum Festlegen von Grenzen bei den Gesamtwirkungen einer verarbeitenden
Regelbasis verwendet, welche beispielsweise eine Zugangsregelbasis
für eine Firewall
oder eine Leitwegtabelle eines Routers sein kann. Die verarbeitende
Regelbasis ist Teil der Konfiguration eines Netzwerkknotens, wie
beispielsweise eine Firewall. (Die Konfiguration kann ferner einige
andere Festlegungen für
den Netzwerkknoten beinhalten, diese sind jedoch bei der Betrachtung
dieser Erfindung nicht relevant.) Ferner werden die Aufgaben der
Erfindung durch Auswerten jeder Regel der Gültigkeitsregelbasis gegenüber der
verarbeitenden Regelbasis und durch Annehmen lediglich einer verarbeitenden
Regelbasis gelöst,
welche sämtliche
Gültigkeitsprüfungen,
die in den Gültigkeitsregeln
festgelegt sind, bestanden hat.
-
Die
Erfindung schafft ein Verfahren zum Herstellen einer Konfiguration
eines Netzwerkknotens, wobei die Konfiguration eine verarbeitende
Regelbasis aufweist, die Regeln enthält, welche beim dem Netzwerkknoten
zum Filtern von Datenpaketen zu verwenden sind, wobei die Regeln
einen oder mehrere Kennwerte zum Erkennen eines Datenpakets und
eine Maßnahme
aufweisen. Das Verfahren umfasst den Schritt Gültigmachen der Konfiguration
des Netzwerkknotens durch Ermitteln, ob die verarbeitende Regelbasis
die in einer Gültigkeitsregelbasis
festgelegten Erfordernisse erfüllt.
Eine Gültigkeitsregelbasis
weist wenigstens eine Gültigkeitsregel
mit einem oder mehreren Kennwerten und wenigstens eine zugehörige, erforderliche
Maßnahme auf.
-
Entsprechend
einem Aspekt der Erfindung wird der Bestimmungsschritt ausgeführt durch
Finden der Maßnahme(n),
die in der verarbeitenden Regelbasis für den Kennwert/die Kennwerte
einer Gültigkeitsregel festgelegt
sind, und Vergleichen der so erhaltenen Maßnahmen mit der erforderlichen
Maßnahme/den
erforderlichen Maßnahmen
in der Gültigkeitsregel.
Die Gültigkeitsregel
wird gebilligt, falls die Maßnahme(n)
der erforderlichen Maßnahme/den
erforderlichen Maßnahmen
in der Gültigkeitsregel
entsprechen, und die Gültigkeitsregel
wird versagt, wenn die Maßnahme(n)
mit der erforderlichen Maßnahme
in der Gültigkeitsregel
nicht übereinstimmen.
Falls die verarbeitende Regelbasis keine Maßnahme für die Kennwerte einer Gültigkeitsregel festlegt,
scheitert das Gültigmachen
ebenso, da die in der Gültigkeitsregel
erforderliche Maßnahme
nicht erfüllt ist.
Jede Gültigkeitsregel
wird in dem Gültigkeitsprozess
wie eine unabhängige
Eingabe behandelt, und das Gültigmachen
wird gebilligt, sofern sämtliche
Gültigkeitsregeln
gebilligt sind.
-
Gemäß einem
anderen Aspekt der Erfindung wird die Konfiguration als eine Antwort
auf eine festgelegte Maßnahme
gültig
gemacht, die beispielsweise ein Steuerbefehl durch einen Anwender
sein kann, um das Gültigmachen,
Anfahren des Netzwerkknotens, Hochladen einer neuen oder geänderten
Konfiguration an dem Netzwerkknoten oder Schützen einer Konfiguration durchzuführen.
-
Die
Konfiguration kann zurückgewiesen
werden, und/oder eine Fehlermeldung kann erzeugt werden, falls die
in einer Gültigkeitsregelbasis
festgelegten Erfordernisse nicht erfüllt sind. Zusätzlich oder
alternativ dazu kann eine Regel der verarbeitenden Regelbasis, welche
einer Gültigkeitsregel
nicht entspricht, oder eine Gültigkeitsregel,
welche versagt worden ist, beispielsweise an einem Computerbildschirm
ausgegeben werden.
-
Zum
Verteilen von Verwaltungsaufgaben kann es mehreren Verwaltern gestattet
sein, eine verarbeitende Regelbasis zu ändern oder aufzubauen, während es
lediglich einem übergeordneten
Benutzer gestattet ist, eine Gültigkeitsregelbasis
abzuändern
oder aufzubauen. Zum Annehmen einer verarbeitenden Regelbasis hat
diese die Gültigkeitsregelbasis
zu passieren, und somit kann der übergeordnete Anwender den Handhabungsmöglichkeiten
der Verwalter Grenzen setzen. Die Verwalter können beispielsweise gezwungen
sein, eine Regelbasisvorlage zum Erzeugen von Regelbasen zu verwenden,
und eine Gültigkeitsregelbasis
kann der Vorlage beigefügt
und jedes Mal dann überprüft werden,
wenn eine oben auf der Vorlage erzeugte Regelbasis geschützt oder
in Benutzung genommen wird.
-
Alternativ
dazu kann es derselben Verwaltereinheit gestattet sein, eine verarbeitende
Regelbasis und eine Gültigkeitsregelbasis
abzuändern
oder aufzubauen. In diesem Fall kann ein Verwalter beispielsweise
eine Gültigkeitsregelbasis
erzeugen, um zu überprüfen, dass
eine verarbeitende Regelbasis (welche häufig groß und komplex ist) einige kritische
Erfordernisse erfüllt
und wie beabsichtigt arbeitet. Auf diese Weise ist das Auffinden
menschlicher Fehler, welche beim Festlegen oder Ändern einer Konfiguration gemacht
werden, leichter möglich.
-
Gemäß noch weiterer
Aspekte der Erfindung wird ein Modell für eine verarbeitende Regelbasis,
welche der verarbeitenden Regelbasis entspricht und die tatsächlich verarbeitenden
Regelbasisregeln anzeigt, erzeugt und in dem Bestimmungsschritt
verwendet. In gleicher Weise wird ein Modell für eine Gültigkeitsregelbasis, welche
der Gültigkeitsregelbasis
entspricht und die wirksamen Gültigkeitsregelbasisregeln
anzeigt, erzeugt und in dem Bestimmungsschritt verwendet.
-
Gemäß noch weiterer
Aspekte der Erfindung wird das Erzeugen eines Regelbasismodells
(eines verarbeitenden oder eines Gültigkeitsregelbasismodells)
durchgeführt,
indem Regeln der Regelbasis in Gruppen von Regeln angeordnet werden,
wobei die Regeln in einer Gruppe einen gemeinsamen Kennwert haben,
während
eine Spur der Reihenfolge der Regeln in der Regelbasis gehalten
wird. Eine Gruppe entspricht beispielsweise einer Service- oder
Portzahl, mehreren Service- oder Portzahlen. Falls in zwei oder
mehr Regeln der Regelbasis überlappende
Kennwertkombinationen existieren, bleibt die erste der zwei oder
mehreren Regeln in der Reihenfolge der Regeln unverändert aufrechterhalten,
und solche überlappenden
Kennwerte werden aus anderen der zwei oder mehr Regeln zum Bestimmen
der wirksamen Kennwerte in jeder Regel beseitigt. Dies bedeutet,
dass der Einfluss der Reihenfolge der Regeln beseitigt wird. Außerdem sind
die Wirkungen möglicher
NAT (Netzwerkadressumsetzung)-Regeln in dem verarbeitenden Regelbasismodell
vereinigt, in dem Adressen und/oder Portzahlen von Regeln in der
verarbeitenden Regelbasis gegen tatsächliche Adressen und/oder Portzahlen
getauscht werden.
-
Wie
zuvor erläutert,
gibt die Verwendung von Regelbasisvorlagen keine genügende Ausdruckskraft zum
Festlegen der Grenzen, was der normale Verwalter in Bezug auf die
verarbeitende Regelbasis tun kann. Die Erfindung ermöglicht es
einem übergeordneten
Benutzer, Gültigkeitsregeln
zum Festlegen der Grenzen zu verwenden, was ein normaler Verwalter
in der verarbeitenden Regelbasis ändern kann. Mit anderen Worten legen
die Gültigkeitsregeln
gewisse Kriterien fest, die die verarbeitende Regelbasis als Ganzes
erfüllen
muss, beispielsweise um Datenpakete mit bestimmter Sender/Ziel/Service-Kombination
zu verwerfen oder zuzulassen. Diese Gültigkeitsregeln können beispielsweise
einer Regelbasisvorlage hinzugefügt
und überprüft werden,
wenn eine (eine Regelbasis bildende) Konfiguration an einem Netzwerkknoten,
beispielsweise an einer Firewall, geladen wird. Wenn es in der verarbeitenden
Regelbasis Regeln gibt, die die Gültigkeitsregeln verletzen,
wird die Konfiguration an der Firewall nicht geladen und eine Fehlermeldung
erzeugt. Selbstverständlich können die
Gültigkeitsregeln
auch ohne eine Regelbasisvorlage verwendet werden, und die Gültigkeitsregeln können auch
durch die Verwalter selbst festgelegt sein.
-
Eine
Gültigkeitsregelbasis
gemäß der Erfindung
kann eine oder mehrere Gültigkeitsregeln
enthalten. Zusätzlich
ist es möglich,
eine verarbeitende Regelbasis gegenüber mehr als einer Gültigkeitsregelbasis
zu überprüfen. Getrennte
Gültigkeitsregelbasen
können
beispielsweise für
unterschiedliche Services festgelegt sein. Auf diese Weise können die
Gültigkeitsregelbasen
klein gehalten werden, und daher können ihre Wirkungen (Erfordernisse)
leicht aus den Gültigkeitsregeln,
die sie enthalten, ersehen werden. Die Kombination von Gültigkeitsregelbasen
setzt den Gesamtwirkungen Grenzen, was die verarbeitenden und/oder
NAT-Regeln, welche
bei dem Netzwerkknoten zur Anwendung kommen, gestattet ist zu tun
oder was diese zu tun haben. Außerdem
kann die zum Gültigmachen
zu verwendende Gültigkeitsregelbasis
vor dem Gebrauch ausgewertet werden.
-
Diese
und andere Merkmale der Erfindung sowie die sich dadurch ergebenden
Vorteile werden nachfolgend anhand der in den beigefügten Zeichnungen
dargestellten Ausführungsformen
erläutert.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
Es
zeigen:
-
1 zwei über Firewalls gemäß dem Stand
der Technik mit einem öffentlichen
Netzwerk verbundene, lokale Netzwerke;
-
2A ein Flussdiagramm, welches
die Prozesskonfiguration eines erfindungsgemäßen Netzwerkknotens veranschaulicht;
-
2B ein Flussdiagramm, welches
das Gültigmachen
einer verarbeitenden Regelbasis gemäß der Erfindung veranschaulicht;
-
3 ein Flussdiagramm, welches
das Aufstellen eines Regelbasismodells gemäß der Erfindung veranschaulicht;
-
4 und 5 beispielhafte, verarbeitende Regelbasen;
-
6 eine beispielhafte NAT-Regelbasis;
-
7 und 8 die Bildung eines verarbeitenden Regelbasismodells
für die
verarbeitende Regelbasis gemäß 5;
-
9 und 10 die Bildung eines NAT-Regelbasismodells
für die
NAT-Regelbasis gemäß 6;
-
11 das verarbeitende Regelbasismodell
gemäß 8 unter Berücksichtigung
der Wirkung der beispielhaften NAT-Regeln;
-
12 eine beispielhafte Gültigkeitsregelbasis;
-
13 ein beispielhaftes Gültigkeitsregelbasismodell;
und
-
14 ein vereinfachtes Blockdiagramm,
in welchem die Anordnung gemäß der Erfindung
veranschaulicht ist.
-
DETAILLIERTE
BESCHREIBUNG
-
Das
Verfahren der Erfindung kann in Verbindung mit dem Konfigurieren
jedweden Netzwerkknotens verwendet werden, welcher Datenpakete auf
der Basis einer Regelbasis filtert. Solch ein Netzwerkknoten kann beispielsweise
eine Firewall, eine Sicherheitsgateway, ein VPN-Gateway oder ein
Router sein. In körperlicher Hinsicht
ist der Netzwerkknoten ein Gerät
mit einer geeigneten Software zum Durchführen der Aufgaben, für die es
bestimmt ist. Es kann ein Router, ein Personalcomputer (PC), eine
spezielle Vorrichtung oder was auch immer sein, das für derartige
Zwecke verwendet werden kann. In der nachfolgenden Beschreibung
wird als Beispiel eines geeigneten Netzwerkknotens eine Firewall
verwendet.
-
2A ist ein Flussdiagramm,
welches eine Prozesskonfiguration eines Netzwerkknotens gemäß der Erfindung
veranschaulicht. Im Schritt 210 wird die Gültigkeit
einer verarbeitenden Regelbasis, welche Teil einer Konfiguration
eines Netzwerkknotens ist, gegenüber
Erfordernissen einer Gültigkeitsregelbasis
nachgewiesen. Das Gültigkeitsverfahren
kann wann auch immer durchgeführt
werden, zum Beispiel wenn ein Anwender oder Verwalter dies möchte, wenn
eine neue oder abgeänderte
Konfiguration geschützt
werden soll oder auf den Netzwerkknoten geladen werden soll oder
wenn der Netzwerkknoten hochgefahren wird. Falls sämtliche Erfordernisse
der Gültigkeitsregelbasis
erfüllt
sind (Schritt 211), wird die verarbeitende Regelbasis im
Schritt 212 zugelassen, und falls die Erfordernisse nicht
erfüllt
sind, wird die verarbeitende Regelbasis im Schritt 213 zurückgewiesen.
-
2B ist ein Flussdiagramm,
welches das Gültigmachen
einer verarbeitenden Regelbasis gemäß der Erfindung veranschaulicht.
Im Schritt 201 werden Kennwerte einer Gültigkeitsregel aufgenommen,
und die Maßnahme(n),
welche für
diese in der verarbeitenden Regelbasis festgelegt sind, werden aufgefunden.
Derart erhaltene Maßnahme(n)
werden mit der erforderlichen Maßnahme in der Gültigkeitsregel
verglichen (Schritt 202). Falls die Maßnahme(n) der verarbeitenden
Regelbasis nicht der geforderten Maßnahme(n) entsprechen, wird
die Gültigkeitsregel
abgewiesen, und daher scheitert das Gültigmachen im Schritt 203.
Dies beendet das Gültigkeitsverfahren,
es ist jedoch in Abhängigkeit
von der Implementierung möglich,
die Handhabung weiterer Gültigkeitsregeln
der Gültigkeitsregelbasis
auch danach fortzusetzen. Aufgrund des Scheiterns des Gültigmachens
wird die verarbeitende Regelbasis im Schritt 207 zurückgewiesen.
Alternativ oder zusätzlich
dazu kann eine Fehlermeldung für
einen Anwender erzeugt werden, oder es können eine verarbeitende Regelbasisregel/-regeln,
welche nicht mit der Gültigkeitsregel
in Übereinstimmung
sind, zum Beispiel an einem Computerbildschirm ausgegeben werden,
um den Anwender darüber
zu informieren, wo das Problem liegt. Es ist auch möglich, die
nicht konformen Regeln in einer verarbeitenden Regelbasisdatei herauszustellen
oder die gescheiterte Gültigkeitsregel
auszugeben.
-
Falls
die Maßnahme(n)
der verarbeitenden Regelbasis mit der/den erforderten Maßnahme(n)
im Schritt 202 übereinstimmen,
wird die Gültigkeitsregel
gebilligt (Schritt 204). Falls in der Gültigkeitsregelbasis mehrere
Regeln sind, werden die Schritte 201 und 202 für diese
wiederholt (Schritt 205). Wenn sämtliche Gültigkeitsregeln der Gültigkeitsregelbasis
bearbeitet worden sind (und alle von diesen gebilligt worden sind),
wird der Gültigkeitsprozess
im Schritt 206 gebilligt.
-
In
dem Gültigkeitsprozess
der Erfindung und den 2A und 2B wird ein Regelbasismodell
gemäß einem
Aspekt der Erfindung verwendet. 3 ist
ein Flussdiagramm, welches die Bildung solch eines Regelbasismodells
veranschaulicht. Zunächst
werden Regeln der Regelbasis im Schritt 300 in Gruppen
von Regeln zum Beispiel auf der Basis von Services geordnet (die
durch Portzahlen gekennzeichnet sind). Die Reihenfolge der Gruppen
kann beispielsweise willkürlich
sein, oder die Reihenfolge kann alternativ dazu auch entsprechend
den Portzahlen festgelegt oder geordnet sein. Eine Regel kann in
mehr als einer Gruppe abgelegt sein, da eine Regel mehr als einen
Service betreffen kann. Beispielsweise umfasst ICMP eine Echoanforderung
und Echoerwiderungsservices, und eine ICMP betreffende Regel ist
in einer Echoanforderungsgruppe und Echoerwiderungsgruppe abzulegen.
Die Gruppierung kann durch Anwendung einer Baumstruktur vervollständigt werden,
in welcher die Services die Äste
und die Regeln die Blätter
bilden.
-
Überlappende
Kennwertkombinationen werden dann aus den Regeln im Schritt 301 beseitigt.
Dies bedeutet ein Entfernen des Einflusses der Reihenfolge der Regeln
in der Regelbasis aus dem Modell. Falls beispielsweise Sender- und
Zieladressenbereiche einer ersten Regel einer Servicegruppe in einer
der nachfolgenden Regeln der Servicegruppe enthalten sind, werden
die entsprechenden Adressenbereiche aus den nachfolgenden Regeln
zum Bestimmen des wirksamen Adressenbereichs für jede Regel in dem Modell
entfernt. Dies wird getrennt für
jeden Service durchgeführt,
und nach diesem Prozess enthalten die Regeln des verarbeitenden
Regelbasismodells lediglich die tatsächlichen Adressenbereiche,
mit denen sie übereinstimmen.
-
Im
Schritt 302 werden die Wirkungen der NAT-Regeln in das
Modell eingeschlossen. Zu diesem Zweck kann ein NAT-Regelbasismodell
für die
NAT-Regeln auf die in den Schritten 300 und 301 beschriebene
Weise festgelegt werden. Die Regeln in dem Regelbasismodell, welche
in den NAT-Regeln modifiziert festgelegt sind, werden entsprechend
abgewandelt. Andere Regeln bleiben unverändert. Auf diese Weise werden
die wirksamen Regeln in der Regelbasis auf dem Regelbasismodell
ausgewertet. Es ist festzustellen, dass die NAT-Regeln in einigen Implementationen vor
den verarbeitenden Regeln angewendet werden können. In solch einem Fall ermöglichen
Kombinationseffekte der NAT-Regeln ein Gültigmachen der verarbeitenden
Regeln ohne den Einfluss von NAT. Dies ist jedoch für einen
Fachmann einfach und wird hier nicht weiter betrachtet.
-
Nachfolgend
wird die Erfindung genauer in Verbindung mit Beispielen erläutert. Die
dargestellten Beispiele sind aus Gründen der Klarheit einfach,
können
jedoch leicht auf komplexere Zusammenhänge ausgedehnt werden.
-
4 veranschaulicht eine beispielhafte,
verarbeitende Regelbasis 400, wo die Regeln eine Sender- und
Zieladresse, Service- und Maßnahmenfelder
aufweisen. (Die Sender- und Zieladresse und der Service bilden die
Kennwerte in den Regeln.) Die bearbeitende Regelbasis 400 kann
von einer bestimmten Vorlageregelbasis zuwege gebracht werden, welche
von einem übergeordneten
Anwender gehandhabt wird. Alternativ dazu kann die Regelbasis vom
Arbeitsspeicher (scratch) festgelegt werden.
-
Die
verarbeitende Regelbasis 400 ermöglicht, dass ein HTTP-Verkehr
von einem Sender B zu einem Ziel C vorangeht (Regel #401). Ein HTTP-Verkehr
von einem Sender A zu einem Ziel C wird zurückgewiesen (#402). Regel #403
verwirft sämtliche
andere Datenpakete von irgendeinem Sender zu irgendeinem Ziel. Eine allgemeine
Auswirkung der Zugangsregelbasis 400, welche die Regeln
#401, #402 und #403 aufweist, besteht darin, dass Pakete von einem
anderen Sender als B oder zu einem anderen Ziel als C oder auf einem
anderen Service als HTTP nicht zugelassen werden.
-
Nun
kann das Szenarium angenommen werden, bei welchem die verarbeitende
Regelbasis 400 gegenüber
der nachfolgenden, beispielhaften Gültigkeitsregelbasis, welche
eine Regel enthält,
ausgewertet wird:
-
-
Um
die Gültigkeitsprüfung zu überstehen,
ist es erforderlich, dass die verarbeitende Regelbasis mit jeder
Regel der Gültigkeitsregelbasis
in Übereinstimmung
steht. Die Maßnahme
oder Maßnahmen,
welche in der verarbeitenden Regelbasis für die Kennzeichenfelder der
Gültigkeitsregel
festgelegt sind, werden ausgewertet und mit der erforderlichen Maßnahme in
der Gültigkeitsregel
verglichen. Falls die Maßnahme(n),
welche von der verarbeitenden Regelbasis erhalten werden, das Erfordernis
bzw. die Erfordernisse der erforderlichen Maßnahme in der Gültigkeitsregel
erfüllen,
wird die Gültigkeit
gebilligt. In diesem Fall legt die Regel #402 die Maßnahme "Ablehnen" für die Kennfeldwerte
der Gültigkeitsregel
fest. Somit entspricht die von der verarbeitenden Regelbasis erhaltene
Maßnahme
der geforderten Maßnahme
der Gültigkeitsregel,
und die verarbeitende Regelbasis 400 besteht den Gültigkeitsprozess.
(Hier wird angenommen, dass A und B mehr als eine Adresse enthalten
können,
sich jedoch nicht überlappen.)
-
In
einem zweiten, beispielhaften Szenarium wird die verarbeitende Regelbasis 400 gegenüber einer anderen,
beispielhaften Gültigkeitsregelbasis
(untenstehend) mit zwei Regeln ausgewertet:
-
-
Zunächst werden
die Maßnahmen
ausgewertet, welche in der verarbeitenden Regelbasis für die Kennfeldwerte
der Gültigkeitsregel
#1 festgelegt sind. Entsprechend der Regel #401 lautet die Maßnahme "Zulassen", welche die Erfordernisfestlegung
in der Gültigkeitsregel
erfüllt,
so dass der Prozess zur Gültigkeitsregel
#2 weitergeht. Regel #402 erfüllt
das Erfordernis der Gültigkeitsregel
#2 für
den Teil des Senders A und des Ziels C. Eine Regel jedoch erfüllt das
Erfordernis der Gültigkeitsregel
nicht vollständig,
so dass der Prozess zur nächsten
Regel in der verarbeitenden Regelbasis zum Gültigmachen des Restes der Gültigkeitsregel weitergeht
(andere Senderadressen als A, andere Senderadressen als C und andere
Services als HTTP). Die Regel #403 erfüllt den Rest der Erfordernisse
der Gültigkeitsregel
#2, und somit stehen die von der verarbeitenden Regelbasis erhaltenen
Maßnahmen
in Übereinstimmung
mit den erforderlichen Maßnahmen
der Gültigkeitsregeln,
und die verarbeitende Regelbasis 400 besteht den Gültigkeitsprozess.
-
In
einem dritten, beispielhaften Szenarium wird die verarbeitende Regelbasis 400 gegenüber noch
einer weiteren, beispielhaften Gültigkeitsregelbasis
(untenstehend) mit zwei Regeln ausgewertet:
-
-
Auch
jetzt wird zunächst
die Maßnahme
ausgewertet, welche in der verarbeitenden Regelbasis für die Kennfeldwerte
der Gültigkeitsregel
#1 festgelegt ist. Entsprechend der Regel #401 lautet die Maßnahme "Zulassen", welche nicht die "Ablehnen"-Erfordernisfestlegung
in der Gültigkeitsregel
erfüllt,
und daher besteht die verarbeitende Regelbasis 400 nicht
den Gültigkeitsprozess.
Um das Problem dem Verwalter anzuzeigen, kann die Regel #401 dem
Verwalter herausgestellt oder anderweitig mitgeteilt werden.
-
In
dieser Situation ist es nicht erforderlich, zur Gültigkeitsregel
#2 weiterzugehen. Dies ist jedoch möglich und kann erfolgen, falls
alle möglichen
Kollisionen mit der Gültigkeitsregel basis
offengelegt werden sollen. In diesem Fall ist immerhin das Erfordernis
der Gültigkeitsregel
#2 erfüllt,
und keine weiteren Mitteilungen für den Verwalter würden aus
einem fortgesetzten Verarbeiten der Gültigkeitsregelbasis resultieren.
-
5 veranschaulicht eine weitere,
beispielhafte, verarbeitende Regelbasis 500, welche ein
vereinfachtes Beispiel einer verarbeitenden Regelbasis mit überlappenden,
mehrdeutigen und manchmal auch widersprüchlichen Definitionen, wie
zum Beispiel der Regel #501 und der Regel #503, darstellt, welche
selbst bei professionellen Verwaltern aufgrund unterschiedlicher
Konfigurationsmöglichkeiten
und besonders dann leicht auftritt, wenn mehr als ein Verwalter
unabhängig
voneinander die Regelbasis verändern.
Natürlich
wäre eine Regelbasis
aus der tatsächlichen
Praxis beträchtlich
größer als
das Beispiel hier, jedoch sind die Prinzipien dieselben, wie sie
hier gezeigt sind. Die verarbeitende Regelbasis 300 verwirft
Datenpakete vom Sender A zum Ziel E auf dem ICMP- und HTTP-Service
entsprechend den Regeln #501 und #502. Regel #503 lässt einen
ICMP von A nach B, C oder E zu (jedoch ist ein ICMP von A nach E
niemals gestattet, da die Regel #501 dies verwirft). Regel #504
lässt einen
HTTP von A nach C zu, und Regeln #505 und #506 gestatten jedweden Verkehr
im Einzelnen von A nach D oder E und nach C oder F.
-
6 veranschaulicht eine beispielhafte
NAT-Regelbasis 600 gemäß einer
Ausführungsform
der Erfindung. Wie oben angegeben, werden die NAT-Regeln bearbeitet,
nachdem eine zusammenpassende, verarbeitende Regel für ein Datenpaket
gefunden worden ist. Falls beispielsweise ein HTTP-Datenpaket von
A nach C entsprechend einer verarbeitenden Regelbasis zugelassen
wird, wird dann Regel #601 der NAT-Regelbasis auf das Datenpaket
angewandt, und die ursprüngliche
Zieladresse des zu bearbeitenden Datenpakets wird von C auf E geändert. In ähnlicher
Weise wird für
ICMP-Pakete von A nach B das Ziel auf F geändert, und für ICMP-Pakete
von anderen als A (irgendeiner-A) nach B bei dem ICMP-Ziel gemäß den Regeln
#602 und #603 auf E geändert.
NAT kann auch Portzahlen oder Services betreffen, da ein Service
durch eine Portzahl in einem Datenpaket festgelegt wird, aber die
Handhabung von Portzahlen ist in diesem Beispiel aus Gründen der
Klarheit nicht gezeigt.
-
7 und 8 veranschaulichen das Aufstellen eines
Regelbasismodells für
eine beispielhafte, verarbeitende Regelbasis gemäß 5. In 7 wird
die verarbeitende Regelbasis 500 gemäß 5 in Gruppen von Regeln auf der Basis
der in den Regeln definierten Services geordnet. Einige der Services
können
mehr als einen Service, wie "jeden" Service enthalten,
was alle möglichen
Services einschließt,
so zum Beispiel HTTP- und ICMP-Services und einen Klingel (ping)-Service,
welcher zum Beispiel Echoanforderungs- und Echoerwide rungsservices
einschließt.
Derartige Services aufweisende Regeln werden zu mehreren Servicegruppen
in dem verarbeitenden Regelbasismodell gesetzt.
-
Das
verarbeitende Regelbasismodell kann alternativ dazu auch auf andere
Weise erzeugt werden, wie beispielsweise auf der Basis der Senderadresse,
Zieladresse oder irgendeines anderen, möglichen Kennwertes der Regelbasis.
Das verarbeitende Regelbasismodell kann auch wie eine Baumstruktur
gedacht werden, bei welcher verschiedene Services Äste und
für einen
Service festgelegte Regeln in den Ästen Blätter bilden.
-
Bei
dem verarbeitenden Regelbasismodell 700 sind sämtliche
den HTTP-Service betreffende Regeln (Regeln #502, #504, #505, #506)
zusammen in einer HTTP-Gruppe angeordnet worden, sämtliche
den ICMP-Service betreffende Regeln (Regeln #502, #504, #505, #506)
sind zusammen in einer ICMP-Gruppe angeordnet worden, und alle Services
(jede) betreffenden Regeln sind in einer eigenen Gruppe angeordnet
worden (Regeln #505 und #506). Der "Jeder"-Service weist auch den HTTP- und ICMP-Service
auf und daher sind die Regeln #505 und #506 auch in die HTTP- und
ICMP-Gruppen gesetzt worden.
-
In 8 sind die Adressbereiche
in den Regeln des verarbeitenden Regelbasismodells gemäß 7 derart modifiziert, dass
jede Regel lediglich die Adressbereiche einschließt, mit
denen sie zusammenpasst. Das bedeutet, dass die Regeln von oben
nach unten (und Service auf Service) bearbeitet werden, und dass, falls
Sender- und Zieladressbereiche einer ersten Regel in einer der nachfolgenden
Regeln enthalten sind, die entsprechenden Adressbereiche aus den
nachfolgenden Regeln entfernt werden. Somit legt beispielsweise Regel
#805 die Maßnahme
(Zulassen) nur für
die Datenpakete vom Sender A zum Ziel D beim HTTP-Service fest, aber
nicht für
Pakete von einem Sender A zum Ziel E beim HTTP-Service, wie dies
in der entsprechenden Regel #505 in dem verarbeitenden Regelbasismodell 700 festgelegt
ist, da Regel #502 schon die Maßnahme (Verwerfen)
für HTTP
von A nach E festlegt, und ein solches Datenpaket daher niemals
mit Regel #505 zusammenpassen würde.
-
In
der ICMP-Gruppe ist Regel #501 die erste Regel, diese bleibt daher
unverändert.
Die Zieldefinition der nächsten
Regel #503 bei der ICMP-Gruppe überlappt
sich mit der ersten Regel, da das Ziel E in beiden Regeln festgelegt
ist. Daher wird Regel #503 in Regel #803 abgeändert, wodurch ICMP von A nach
B oder C als zugelassen festgelegt werden kann. In ähnlicher
Weise werden die Ziele E und C aus den nachfolgenden, modifizierten
Regeln #805 und #806 entfernt. Der Definitionsprozess der Adressbereiche
wird in der gleichen Weise fortgesetzt, bis sämtliche Regeln des verarbeitenden
Regelbasismodells mit früheren Regeln
des verarbeitenden Regelbasismodells verglichen worden sind und
sämtliche überlappende
Definitionen für
die Adressen entfernt worden sind.
-
9 und 10 veranschaulichen den Aufbau eines
Regelbasismodells für
die beispielhafte NAT-Regelbasis gemäß 6. Die NAT-Regelbasis wird auf der Basis
der Services und überlappenden
Bereiche in derselben Weise geordnet und geändert, wie die verarbeitende
Regelbasis in den 7 und 8 angeordnet und geändert ist.
Nunmehr bildet Regel #601 die einzige Regel für den HTTP-Service, und daher
bleibt sie unverändert.
Regel #602 bleibt ebenfalls unverändert, aber von Regel #603
ist der schon in Regel #602 enthaltene Sender A zu entfernen. So
wird Regel #602 in Regel #1003 abgeändert, wobei der Sender in "Jeder-A" (jede andere Adresse als A) geändert wird.
Das Prinzip der Handhabung des Ports NAT (hier nicht gezeigt) in
dem NAT-Regelbasismodell ist dasselbe wie bei der Adresse NAT, und
daher ist es für
den Fachmann einfach, Portzahlumsetzungen bei einer Implementierung
in Betracht zu ziehen.
-
11 veranschaulicht das verarbeitende
Regelbasismodell gemäß 8, wobei der Einfluss der NAT-Regeln
von dem NAT-Regelbasismodell gemäß 10 in Betracht gezogen wird.
Die Regeln des verarbeitenden Regelbasismodells werden gemäß dem NAT-Basisregelmodell
modifiziert. Das verarbeitende Regelbasismodell gemäß 11 wird hier ein NAT-bezogenes,
verarbeitendes Regelbasismodell genannt.
-
Das
NAT-bezogene, verarbeitende Regelbasismodell 1100 wird
gebildet, indem die in dem NAT-Regelbasismodell festgelegten Modifikationen
an den Regeln in dem verarbeitenden Regelbasismodell vorgenommen
werden, mit dem die NAT-Regeln übereinstimmen.
Das Herausfinden, welche Regeln geändert werden müssen, kann
beispielsweise vorgenommen werden, indem von der ersten Regel für den HTTP-Service (Regel
#601) in dem NAT-Regelbasismodell 1000 ausgegangen
und diese mit der ersten Regel für
den HTTP-Service (Regel #502) in dem verarbeitenden Regelbasismodell 700 verglichen
wird. Diese Regeln passen nicht zusammen, und daher bleibt die Regel
#502 unverändert.
Als nächstes
wird die NAT-Regel #601 mit der Regel #504 in dem verarbeitenden
Regelbasismodell verglichen. Nunmehr stimmen die Regeln überein, und
somit wird die Zieladresse der verarbeitenden Regel #504 von C in
E entsprechend der Ziel-NAT-Regel #601 (sich ergebende Regel #1104)
geändert.
Sämtliche
Regeln des verarbeitenden Regelbasismodells 800 werden
in ähnlicher
Weise behandelt. Aufgrund des Ports NAT kann sich der Service einer
Regel ändern.
In diesem Fall ist die Regel in dem verarbeitenden Regelbasismodell
in die Gruppe zu bringen, welche durch die neue Portzahl gekennzeichnet
ist. In dieser Phase ist es nicht länger erforderlich, die Reihenfolge
der Regeln in den Gruppen in Betracht zu ziehen, und daher ist das
Verschieben einer Regel von einer Gruppe in eine andere einfach.
-
12 veranschaulicht eine
beispielhafte Gültigkeitsregelbasis 1200,
welche strukturmäßig einer
verarbeitenden oder NAT-Regelbasis ähnlich ist, wie sie zuvor schon
erläutert
worden ist. Die Gültigkeitsregeln der
Gültigkeitsregelbasis
enthalten einen oder mehrere Kennwerte und eine erforderliche Maßnahme.
Die erforderliche Maßnahme
legt fest, welche Maßnahmen
in der Regelbasis gültig
sind, welche für
ein durch zugehörige
Kennwerte festgelegtes Datenpaket gültig gemacht werden soll. Zum
Beispiel kann nur die erforderliche Maßnahme eine spezielle, zuzulassende
Maßnahme
festlegen oder eine Liste zugelassener Maßnahmen abgeben. Alternativ
dazu kann festgelegt sein, dass jede Maßnahme zugelassen ist. Tatsächlich besteht
kein Erfordernis, die Regelbasis gegenüber einer Gültigkeitsregel gültig zu
machen, welche sämtliche
Maßnahmen als
zugelassen festlegt, da jede Art von Regelbasis solch eine Gültigkeitsregel
passiert. Somit kann eine Gültigkeitsregelbasis
gemäß der Erfindung
sowohl einschränkende
als auch zwingende Regeln aufweisen.
-
Regel
#1201 des Gültigkeitsregelbasismodells 1200 legt
fest, dass die Maßnahme
in der Regelbasis für
HTTP von A nach E "Verwerfen" ist, Regel #1202
legt fest, dass die Maßnahme
in der Regelbasis für
HTTP von B nach C "Zulassen" ist, und Regel #1203
legt fest, dass die Maßnahme
in der Regelbasis für
ICMP von A nach E "Ablehnen" oder "Verwerfen" ist. Wenn nun in
Betracht gezogen wird, dass die Gültigkeitsregelbasis durch einen übergeordneten
Anwender gebildet worden ist, und es einem Verwalter gestattet ist,
eine Regelbasis zu modifizieren, dann muss der Verwalter Definitionen
in den Gültigkeitsregeln
#1201 und #1202 streng folgen und entweder "Ablehnen" oder "Verwerfen" für
ICMP von A nach E wählen.
Zusätzlich
dazu gibt es keine Beschränkungen
für Verwaltermaßnahmen
in diesem Fall. Es ist jedoch klar, dass jede Art von Beschränkung oder
Sicherheitsüberprüfung mittels
einer Gültigkeitsregelbasis
festgelegt werden kann. Auch kann ein Verwalter Gültigkeitsregeln
festlegen, um zu überprüfen, dass
die Konfiguration (einschließlich
einer Regelbasis und möglicherweise
einer NAT-Regelbasis), die er/sie festgelegt hat, die Erfordernisse
erfüllt
und in der Weise arbeitet, in der sie arbeiten soll. Auf diese Weise
kann der Grad an menschlichen Fehlern beim Einrichten einer Konfiguration
verringert sein.
-
13 veranschaulicht ein beispielhaftes
Gültigkeitsregelbasismodell 1300,
welches von der Gültigkeitsregelbasis 1200 gemäß 12 abgeleitet ist. Das Gültigkeitsregelbasismodell
wird in derselben Weise wie das verarbeitende Regelbasismodell und
die NAT-Regelbasismodelle zuvor erzeugt und wird daher hier nicht
weiter erläutert.
Der Grund für
das Erzeugen auch eines Modells der Gültigkeitsregelbasis besteht
darin, das Gültigmachen
einer Regelbasis zu erleichtern. Falls jedoch die Gültigkeitsregelbasis
bereits definiert ist, so dass es nicht erforderlich ist, das Modell
zu erzeugen, kann dieser Schritt übersprungen werden.
-
Nach
dem Erzeugen des verarbeitenden Regelbasismodells und des Gültigkeitsregelbasismodells kann
der Gültigkeitsprozess
der verarbeitenden Regeln durchgeführt werden, indem die Regeln
der Gültigkeitsregelbasis
oder des Gültigkeitsregelbasismodells
mit den Regeln des verarbeitenden Regelbasismodells verglichen werden.
Bei dem Gültigkeitsprozess
sollte beachtet werden, dass, wenn das verarbeitende Regelbasismodell
gültig
gemacht wird, sämtliche
Gültigkeitsregeln
der verwendeten Gültigkeitsregelbasis
gültig
sein müssen.
Im Prinzip werden die Gültigkeitsregeln
eine nach der anderen genommen, und die Maßnahme wird bestimmt, welche
die Regelbasis für
Daten hat, die in den Kennzeichenfeldern der Gültigkeitsregel festgelegt sind.
Dann wird überprüft, ob diese
Maßnahme
das in der Gültigkeitsregel
festgelegte Erfordernis erfüllt
(mit der erforderlichen, in der Gültigkeitsregel festgelegten
Maßnahme übereinstimmt).
Keiner Regel ist es in dem verarbeitenden Regelbasismodell gestattet,
in Kollision mit den Gültigkeitsregeln
zu stehen, oder sonst scheitert die verarbeitende Regelbasis beim
Gültigmachen.
-
Zusätzlich sollte
beachtet werden, dass eine Regel des verarbeitenden Regelbasismodells
eine Gültigkeitsregel
nur teilweise erfüllen
kann. Beispielsweise kann eine Gültigkeitsregel
erfordern, dass ein HTTP von A, B oder C nach E zurückgewiesen
oder verworfen wird, und in dem verarbeitenden Regelbasismodell gibt
es eine erste Regel, welche "Jede"-Pakete von A nach
E verwirft, und eine zweite Regel, welche HTTP von B oder C zu "Jede"-Adresse zurückweist. In diesem Fall ist
die Gültigkeitsregel
durch die Kombination der ersten und zweiten Regel erfüllt. Daher
kann es erforderlich sein, die Wirkung der Regeln in dem verarbeitenden
Regelbasismodell zusammenzunehmen, um zu überprüfen, dass eine Gültigkeitsregel,
wie erforderlich, vollständig
erfüllt
ist.
-
Wenn
beispielsweise das verarbeitende Regelbasismodell 1100 durch
Verwendung des Gültigkeitsregelbasismodells 1300 gültig gemacht
wird, wird die erste HTTP-Servicegruppe betrachtet. Die Maßnahme, welche
in dem Regelbasismodell für
den Sender und das Ziel der Gültigkeitsregel
#1301 festgelegt ist, wird bestimmt zu "Verwerfen" oder "Zulassen" (Regeln #502 und #1104). Dies ist nicht
in Übereinstimmung
mit der Erfordernisfestsetzung in Gültigkeitsregel #1301, und deshalb
scheitert der Gültigkeitsprozess
und dementsprechend der gesamte Gültigkeitsprozess an dieser
Gültigkeitsregel.
Die verarbeitende Regelbasis würde also
an der Gültigkeitsregel
#1302 scheitern, da #1302 erfordert, dass HTTP von B nach C zugelassen
wird, jedoch legt die verarbeitende Regelbasis nicht jede Maßnahme für diese
Sender/Ziel-Kombination fest, und daher kann die für diese
festgelegte Maßnahme
nicht aufgespalten werden. Immerhin würde die verarbeitende Regelbasis
die Gültigkeitsregel
#1303 passieren.
-
Der
Gültigkeitsprozess
kann beendet werden, wenn die erste Kollision auftritt, oder der
Gültigkeitsprozess
kann alternativ dazu fortgesetzt werden. Die Regel, welche nicht
in Übereinstimmung
mit der Gültigkeitsregel
ist, kann dem Anwender hervorgehoben werden, so dass das Auffinden
des Problems leichter ist. Wenn beispielsweise wenigstens eine gültig zu
machende Regel in Kollision mit wenigstens einer Regel des Gültigkeitsregelbasismodells
steht, wird die in Kollision stehende Regel herausgestellt, um den
Benutzer zu informieren. Falls ferner auf der anderen Seite eine
Regel der Gültigkeitsregelbasis
ein bestimmtes Erfordernis festlegt und irgendeine Regel des verarbeitenden
Regelbasismodells ein Erfordernis einer Regel der Gültigkeitsregelbasis
nicht erfüllt,
wird die Regel der Gültigkeitsregelbasis,
welche das Erfordernis festlegt, herausgestellt, um den Benutzer
zu informieren. Zusätzlich
kann auch eine Fehlermeldung erzeugt werden, falls es zu irgendeinem
Widerspruch in dem Gültigkeitsprozess
kommt.
-
14 ist ein vereinfachtes
Blockdiagramm, welches eine Anordnung 1400 gemäß der Erfindung
veranschaulicht, wo die zuvor beschriebenen Verfahren zum Einsatz
kommen können.
Durch die Figur ist nicht beabsichtigt, den Einsatz der Erfindung
in irgendeiner Weise zu beschränken,
vielmehr soll durch die Figur lediglich eine mögliche Implementierung in einer
vereinfachten Form veranschaulicht werden. Eine verarbeitende Regelbasis 1401 wird
gemäß der Erfindung
in einer Gültigkeitseinrichtung 1406 mittels
Gültigkeitsregelbasen 1402, 1403 und 1404 gültig gemacht.
Zuvor werden die Gültigkeitsregelbasismodelle
für die
verarbeitende Regelbasis und die Gültigkeitsregelbasen in der
Regelbasiserzeugungseinrichtung 1405 erzeugt. Es ist jedoch möglich, dass
die Gültigkeitsregelbasen
für die
Gültigkeitseinrichtung
gleich in Modellform verfügbar
sind und daher nicht getrennt für
jeden Gültigkeitsprozess
gebildet werden müssen.
-
Die
Erfindung wurde zuvor mit Bezug auf die vorerwähnten Ausführungsformen erläutert, und
mehrere Vorteile der Erfindung sind aufgezeigt worden. Es ist klar,
dass die Erfindung nicht auf diese Ausführungsformen beschränkt ist,
sondern alle möglichen
Ausführungsformen
innerhalb des Umfangs des Erfindungsgedankens und der nachfolgenden
Patentansprüche
enthält.