2019
Oktober
25
2019

Segmentierung mit mehreren privaten Netzen

Nicht jeder Server soll aus dem Internet direkt erreichbar sein. Entsprechend häufig nutzen unsere Kunden die Möglichkeit, Server gezielt in einem "Private Network" zu platzieren, und schützen sie hinter einer Firewall, einem Load-Balancer oder einem VPN. Neu können Sie mehrere separate private Netze definieren und damit auch komplexere Setups ganz nach Ihren spezifischen Anforderungen realisieren.

Anwendungsbeispiele mit mehreren privaten Netzen

Private Netze kommen z.B. zum Einsatz, wenn Web-Worker direkt aus dem Internet erreichbar sein sollen, jedoch nicht deren Datenbank-Backends. Auch um Server in der Cloud hinter einer Firewall wie OPNsense zu schützen, sind sie das Mittel der Wahl. Mit der Unterstützung von mehreren privaten Netzen können Sie diese bewährten Konzepte jetzt auch kombinieren: ein Firewall-/Load-Balancer-Setup bildet die Schnittstelle zum Internet und leitet legitime Requests über das erste private Netz zu den Web-Workern. Diese wiederum erreichen die Datenbank-Backends über ein zweites, separates privates Netz, um eine saubere Trennung der verschiedenen Sicherheitszonen zu gewährleisten.

Anwendungsbeispiel 1

Möglicherweise möchten Sie zusätzlich zu Ihrer öffentlichen Web-Applikation auch interne Dienste in der Cloud betreiben, diese aber zuverlässig vor Zugriffen aus weniger vertrauenswürdigen Zonen schützen. Mit separaten privaten Netzen lässt sich auch dieses Szenario abbilden: Traffic Ihrer Web-Applikation wird von der Firewall über das eine private Netz zu Ihrem Webserver geleitet, während Ihre internen Tools via separates privates Netz mit Ihrem VPN-Endpunkt verbunden sind. So sind Ihre öffentlichen und internen Server in zwei unabhängigen privaten Netzen sicher voneinander getrennt.

Anwendungsbeispiel 2

Wie Sie private Netze einrichten

Als zentrale Schaltstelle für Ihre privaten Netze steht der neue API-Endpunkt networks zur Verfügung. Mit dem Request:

$ curl -i -H "$AUTH_HEADER" https://api.cloudscale.ch/v1/networks

erhalten Sie einen Überblick über Ihre bestehenden privaten Netze:

HTTP/1.0 200 OK
Allow: GET, POST, HEAD, OPTIONS
Content-Type: application/json

[
  {
    "href": "https://api.cloudscale.ch/v1/networks/2db69ba3-1864-4608-853a-0771b6885a3a",
    "created_at": "2019-05-29T13:18:42.511407Z",
    "uuid": "2db69ba3-1864-4608-853a-0771b6885a3a",
    "name": "my-network-name",
    "mtu": 9000,
    "subnets": [
      {
        "href": "https://api.cloudscale.ch/v1/subnets/33333333-1864-4608-853a-0771b6885a3a",
        "uuid": "33333333-1864-4608-853a-0771b6885a3a",
        "cidr": "172.16.0.0/24"
      }
    ],
    "tags": {}
  }
]

Mit einem POST-Request an den Endpunkt networks erstellen Sie ganz einfach weitere private Netze, als einzigen erforderlichen Parameter müssen Sie nur einen Namen vergeben, um das Netz später wiederzuerkennen. Über den bestehenden API-Endpunkt servers können Sie nun bestimmen, ob und in welchen privaten Netzen ein Server Interfaces haben soll. Dies klappt sowohl direkt beim Erstellen eines neuen Servers wie auch nachträglich.

Standardmässig weist unser System dem neuen Netz einen zufällig gewählten, privaten IPv4-Range ("Subnet") zu und vergibt später Ihren Servern in diesem Netz via DHCP IP-Adressen aus diesem Range. Beides können Sie bei Bedarf natürlich deaktivieren. Und wie bisher können Sie auf Servern in Ihren privaten Netzen beliebige IPv4- und IPv6-Adressen statisch konfigurieren. Falls es sich um ein Netz mit Subnet handelt, vermeiden Sie jedoch Adress-Konflikte mit unseren DHCP-Servern. Mehr Informationen zu den verfügbaren Optionen finden Sie auch in unserer API-Dokumentation.

Einige praktische Hinweise

Für optimale Performance im privaten Netz beträgt die MTU standardmässig 9000 Bytes ("Jumbo Frames"). Selbstverständlich können Sie die MTU jederzeit ändern, z.B. wenn Ihr konkretes Setup die vom klassischen Ethernet bekannten 1500 Bytes verlangt.

Beachten Sie, dass ein Server in mindestens einem seiner Netze via unseren DHCP-Server eine IPv4-Adresse zugewiesen erhalten muss. Grund dafür ist, dass via DHCP gleichzeitig die benötigte Route gesetzt wird, damit cloud-init auf Ihrem Server unseren Metadaten-Server erreichen kann.

In Kürze werden wir zudem unser Cloud-Control-Panel erweitern, so dass Sie auch beim Erstellen eines neuen Servers via Browser direkt bestehende oder neue private Netze anwählen können.

Last but not least können Sie auch für Ihre privaten Netze eigene Tags festlegen und nach diesen filtern.


In vielen Fällen kann eine feinere Segmentierung der genutzten Server Sinn ergeben, sei es, um die logische Struktur Ihres Setups abzubilden, oder um Ihr Sicherheitskonzept um eine weitere Stufe zu ergänzen. Die aktuelle Erweiterung unserer privaten Netze macht es möglich: Bauen Sie Ihre Serverlandschaft so auf, wie es am besten zu Ihnen und Ihrem konkreten Anwendungsfall passt.

Vernetzt auf allen Ebenen,
Ihr cloudscale.ch-Team

Zurück zur Übersicht