IP Accesslisten für TCP-Server Sockets

Es ist einstellbar, welche IP Clients auf die WinCC OA Manager (TCP Sockets) zugreifen dürfen. Dies kann für alle TCP Sockets eingestellt werden (Event, Data, Pmon, HTTP-Server, Dist, Treiber auf TCP Basis, ...). Die Einstellung erfolgt über eine IP Accessliste, die erlaubt, dass ein WinCC OA System nur von einer definierbaren Anzahl von Client-Rechner in einem Netzwerk kontaktiert werden darf. Ein Manager am Server, der einen TCP Socket-Zugriff von einem unerlaubten Client-Rechner erkennt, schließt die Verbindung.

Die Parametrierung der Liste der zugelassenen/nicht zugelassenen Client-Rechner erfolgt in der [general]-Sektion der Config-Datei (wenn die Beschränkung für das WinCC OA System gelten soll). In einer managerspezifischen Sektion können die Einträge aus der [general]-Sektion erweitert oder ersetzt werden.

Die Config-Einträge für die Definition der Listen sind "ip_allow" bzw. "ip_deny". Diese können beliebig oft in der Datei vorkommen und jeder Eintrag wird in eine interne Liste aufgenommen. Der Typ dieses Eintrages ist ein String, der einen Teilnehmer im Netzwerk bezeichnet. Die Notation kann auf verschiedene Weise erfolgen:

  • IP Adresse mit Punktnotation, z.B. "192.168.0.2"

  • Rechnername, z.B. "myPC.domain.org"

Beide Varianten können auch Wildcards (* bzw. ?) beinhalten, wobei ein Client dann nach der Regel wie es auch die CTRL-Funktion patternMatch() macht, geprüft wird. Zuerst wird immer die Punktnotation eines Clients gegen das angegebene Muster des Config-Eintrages geprüft, danach alle bekannten Domainnamen und Aliase des Clients:

  • Alle Rechner der Domain "etm.at" sollen definiert werden: "*.etm.at"

  • Alle Rechner des IP Bereiches "192.168.0" sollen definiert werden: "192.168.0.*"

Anmerkung:

Mehrere ip_allow - und ip_deny-Einträge müssen separat hinzugefügt werden. Die Einträge können mehrere Male vorkommen.

Die Überprüfung, ob ein Client erlaubt ist, erfolgt nach folgender Regel:

  • Ist der Client in der ip_allow Liste, dann ist der Zugriff erlaubt

  • ist der Client in der ip_deny Liste, dann ist der Zugriff verweigert

  • Ist der Client nicht in der ip_allow Liste, dann ist der Zugriff verweigert

Sind beide Listen leer, ist die IP Access außer Kraft gesetzt.

Werden ip_allow oder ip_deny in mehreren Sektionen der Config-Datei definiert, werden die Einträge von oben nach unten in beide Listen aufgenommen. Möchte man aber z.B. für "Pmon" oder für einen anderen Manager in einer managerspezifischen Sektion eine eigene ganz bestimmte Liste definieren, muss man mit dem speziellen Schlüsselwort "-empty list-", z.B. ip_allow = "-empty list-" bzw. ip_deny = "-empty list- die Listen der [general]-Sektion zuerst löschen (sonst wären gemachte Einträge der [general]-Sektion noch drinnen). Siehe das Beispiel unterhalb.

Anmerkung:

Die IP-Accessliste wird nicht verwendet, wenn der Multiplexing Proxy verwendet wird. Die IP-Liste wird für die WinCC OA-Managerverbindungen verwendet.

Beispiel

Im Anschluss finden Sie ein Beispiel für die Definition von IP Accesslisten in der Config-Datei.

Anmerkung:

ip_deny = "*" verweigert den Zugriff für alle, auch für den lokalen Rechner.

[general]
# forbid all from the domain "etm.at"
ip_deny = "*.etm.at"
[pmon]
# Only computers form the domain "etm.at" should be able to access the Pmon.
# By using the "-empty list-" entries below, the list of the [general]
# section is deleted first. Afterwards the access for the computers from the
# domain "etm.at" is granted via ip_allow = "*.etm.at" and the access is
# denied for others via ip_deny = "*"
ip_allow = "-empty list-"
ip_deny = "-empty list-"
ip_allow = "*.etm.at"
ip_deny = "*"
# allow access for the local computer
ip_allow = "127.0.0.1"
ip_allow = "::ffff:127.0.0.1"
ip_allow = "::1"   

Die Einstellungen der IP Accesslisten können in folgenden Sektionen der Config-Datei vorgenommen werden:

  • [general] - Allgemeine Einstellungen

  • [data] - Data-Manager

  • [event] - Event-Manager

  • [ctrl] - CTRL-Manager (gilt nur für einen CTRL-Manager, der ein HTTP-Server Modul aufruft)

  • [pmon] - Pmon (Prozess Monitor)

  • [valarch] - Archive-Manager

  • [dist] - Dist-Manager