Hallo Leute,
hab die letzten Tage mich durch das Docker Buch gefressen und einen 22.04 Server mit aktuellem Docker von der Website installiert. Der Zeit laufen da drauf 2x Docker mit Docker Compose und Nginx auf der lokalen Maschine als Reverse Proxy inkl. HTTP auf HTTPS geforcte Umleitung.
So, nun wollte ich sämtlich Ports von den Docker Containern die ja auf einem anderen Port laufen und unverschlüsselt kommunizieren dicht machen. Ich dachte mir ich löse das mit UFW (war heute die erste Berührung damit). Gesagt getan.
Status: Aktiv Protokollierung: on (low) Voreinstellung: deny (eingehend), allow (abgehend), deny (gesendet) Neue Profile: skip Zu Aktion Von -- ------ --- 22/tcp (OpenSSH) ALLOW IN Anywhere 6556/tcp (checkmk agent) ALLOW IN Anywhere
Bist dahin funktioniert das ganze. Es ist kein anderes Port offen. Nun schalte ich den Nginx dazu:
80,443/tcp (Nginx Full) ALLOW IN Anywhere
Und schon sind auch lokalen Ports aller Docker Container offen. Ich habs auch mit den Ports direkt versucht und auch die Dockerports gesperrt. Gleiches Ergebnis.
Status: Aktiv Protokollierung: on (low) Voreinstellung: deny (eingehend), allow (abgehend), deny (gesendet) Neue Profile: skip Zu Aktion Von -- ------ --- 22/tcp (OpenSSH) ALLOW IN Anywhere 6556/tcp (checkmk agent) ALLOW IN Anywhere 80,443/tcp (Nginx Full) ALLOW IN Anywhere 5800/tcp DENY IN Anywhere 40050/tcp DENY IN Anywhere
Versteht das jemand? Ich nämlich nicht. Hab auch diesen Artikel gefunden. Wo man erklärt das UFW für Server nicht geeignet ist. Server und Client, beides sind Systeme. Wenns am Server nicht tut wird's am Client auch nicht brauchbar sein.
Ich würde das ganze sehr gerne verstehen und nach Möglichkeit auch lösen. Immerhin ist UFW ja ein Canonical supportetes Paket.
Vielen lieben Dank