Problem mit Firewall Regeln - allow-specific/deny-all

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

clanganke

Benutzer
Registriert
06. Feb. 2026
Beiträge
4
Reaktionspunkte
1
Punkte
3
Hallo *,

Ich habe kürzlich auf einer
DS725+ mit aktuellem DSM 7.3.2
einen Docker Container mit dem Image
lmscommunity/lyrionmusicserver
aufgesetzt.

Dieser Container des Lyrion Music Servers gibt u..a den
Port 9000 TCP für HTTP
nach aussen, damit die Steuerung
  • per Web-Browser (z.B. per Windows Notebook),
  • per fhem Home Automation Server und
  • per Android App Squeezer auf einem Smartphone
möglich ist.

Und das klappt alles soweit ganz prima! Ich fühle mich nur leicht unwohl mit dem unsicheren HTTP-Protokoll, und würde es gerne, wo möglich vermeiden.
Die Android App und vermutlich auch fhem können nur HTTP, für alle anderen Zugriffe, wie über das Windows Notebook, möchte ich lieber HTTPS verwendet wissen.

Daher habe ich in der Systemsteuerung des DSM einen nginx reverse proxy aufgesetzt, sodaß ein sicherer Zugriff über HTTPS schon einmal möglich ist. Dieser Zugriff funktioniert auch problemlos.

Dann bleibt nur noch, HTTP auf Port 9000 nur für zwei bestimmte Geräte zu erlauben, und für alle anderen nicht.

Daher habe ich in der Firewall folgende Regeln hinzugefügt:
#1a "erlaube Zugriff auf TCP Port 9000 für eine spezifische IP-Adresse" für das Android System
#1b "erlaube Zugriff auf TCP Port 9000 für eine spezifische IP-Adresse" für das fhem System
#2 "verbiete Zugriff auf TCP Port 9000 für alle IP-Adressen"
und natürlich steht Regel #2 ganz zuletzt hinter den Regeln #1* in der Liste.

Das Problem ist nun, daß die letzte Blockierregel #2 funktioniert, aber jedwede Regel #1* den Zugriff für die spezifisch angegebene IP-Adresse nicht zulässt, obwohl sie aufgrund der Reihenfolge in der Liste eine höhere Priorität als die Blockierregel #2 hat.

Der Vollständigkeit halber hier eine #1-Regel im Detail:
  • Ports: Benutzerdefiniert: 9000
    • Typ: Port des Zielordners
    • Protokoll: TCP
    • Ports: 9000
  • Quell-IP: Spezifische IP: Einzelner Host: 172.16.33.20
  • Aktion: Zulassen
Mir fehlt jede Idee, warum das so sein könnte, denn derartige Regeln funktionieren doch grundsätzlich in anderen Szenarien genau so (!?). Aber vielleicht habe ich etwas übersehen?

Zudem ist mir nicht klar, wie ich die Zugriffsentscheidungen loggen könnte - im Protokoll-Center wird, wie erwartet, im Normalbetrieb dazu nichts mitgeschrieben. Wie würde das für eine weitere Analyse am besten gehen?

Vielen Dank im Voraus für jedwede Hilfe!

P.S.: Ich hab das Thema unter "Sonstiges" einsortiert, da ich keine Kategorie "Firewall" gefunden habe - ich hoffe, ich habe nichts übersehen.
 
Oha, weitere Tests haben die Problemursache gezeigt - auch die IP-Adresse des SqueezeBox-Receivers als Abspielgerät muß auf Port 9000 für Zugriff auf das REST-API berechtigt werden.

Bislang wußte ich nur grob, daß Abspielgeräte über den weiteren Port 3483 per Slim-Protokoll angesteuert werden, aber: der SqueezeBox-Receiver spricht zusätzlich auch per REST-API mit dem Server (was ich so explizit bislang in keiner Doku gefunden/gesehen habe oder ggf. auch übersehen haben mag) (aber übrigens definitiv nicht per CLI-Schnittstelle über Port 9090, was auch vereinzelt behauptet wird)

Damit ist das Problem hier gelöst! Es ist also kein grundsätzliches Firewallproblem, und ich war ganz falsch hier - sorry für die Aufregung!
 
  • Like
Reaktionen: the other

Additional post fields

 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat