Direkt zum Inhalt

Cookie-Einstellungen

Wählen Sie, welche Arten von Cookies Sie erlauben. Sie können Ihre Auswahl jederzeit über Cookie-Einstellungen unten auf jeder Seite ändern. Datenschutzerklärung

Notwendig

Immer aktiv

Nötig zum Einloggen, für Ihren Warenkorb und um Ihre Auswahl zu speichern. Diese sind immer aktiv.

Welche Cookies?
  • weboke_sessie, weboke_klant, weboke_remember: Ihre Sitzung und eingeloggt bleiben
  • weboke_basket: Ihr Warenkorb
  • wkBtwIncl: Preise mit oder ohne MwSt. anzeigen
  • wok_cookies: Ihre Cookie-Auswahl, 12 Monate

Misst, welche Anzeige zu einem Besuch oder einer Bestellung führt, damit wir nicht für Anzeigen zahlen, die nichts bringen.

Welche Cookies?
  • Google Ads über Google Tag Manager (_gcl_au, _gcl_aw), bis zu 90 Tage
  • OpenAI Ads, Anzeigen in ChatGPT
  • wok_aff: über welchen Partner Sie zu uns kamen (Partnerprogramm), 60 Tage

4,6

Land und Sprache

Jedes Land hat seine eigene Website, mit Preisen und MwSt. dieses Landes.

Anzeigen

Docker und die Firewall: Ports sicher veröffentlichen

Dies ist die Falle, in die die meisten Menschen tappen. Ein Port, den Sie in Docker mit ports: veröffentlichen, ist aus dem Internet erreichbar, auch wenn ufw diesen Port sperrt. Docker setzt eigene Firewallregeln, und diese haben Vorrang vor den Regeln von ufw.

Ein Beispiel dafür, was schiefgeht

services:
  db:
    image: mariadb:11
    ports:
      - "3306:3306"

Ihre Firewall sagt, dass nur 22, 80 und 443 offen sind. Trotzdem ist Ihre Datenbank jetzt von der ganzen Welt aus über Port 3306 erreichbar.

Drei Regeln, die für Sicherheit sorgen

  1. Veröffentlichen Sie nur, was von außen erreichbar sein muss. In dieser Anleitung ist das nur Caddy, auf 80 und 443. Apps kommunizieren mit Caddy über das interne Netzwerk von compose. Sie benötigen kein ports:.
  2. Soll ein Port nur auf dem Server selbst erreichbar sein? Setzen Sie 127.0.0.1: davor. Dann kann nur der Server selbst darauf zugreifen, oder Sie über einen SSH-Tunnel (siehe Eine SSH-Config: mit einem kurzen Namen anmelden).
  3. Eine Datenbank bekommt niemals ports:. Die App findet sie über den Namen des Service, etwa db.
    ports:
      - "127.0.0.1:3001:3001"

Von außen prüfen

Sehen Sie auf dem Server nach, welche Ports für alle offen stehen:

anna@web1:~$ sudo ss -tlnp
State  Recv-Q Send-Q Local Address:Port  Peer Address:Port Process
LISTEN 0      4096        0.0.0.0:443         0.0.0.0:*     users:(("docker-proxy",...))
LISTEN 0      4096      127.0.0.1:3001        0.0.0.0:*     users:(("docker-proxy",...))
LISTEN 0      128         0.0.0.0:22          0.0.0.0:*     users:(("sshd",...))

Alles mit 0.0.0.0 oder [::] ist von außen erreichbar. Alles mit 127.0.0.1 nur von innen. Möchten Sie es von außen sehen, verwenden Sie auf Ihrem eigenen Computer einen Portscanner wie nmap für Ihre eigene IP-Adresse.

Hinweis: Binden Sie /var/run/docker.sock nicht in einen Container ein, es sei denn, Sie wissen genau, warum. Wer diesen Container übernimmt, hat damit Ihren gesamten Server.

Einen Moment bitte…

Richten Sie Ihre Domains ein

Legen Sie für jede Domain die Nameserver, die Verknüpfung mit Ihrem Hosting und den künftigen Inhaber fest.

Ihre Domains werden geladen…