Zugriff von Extern auf MariaDB

  • Hallo liebes Forum


    Mich interessiert eure Einschätzung wie es um die Sicherheit meines NAS steht.


    Folgendes habe ich eingerichtet:

    - MariaDB 10

    - Portweiterleitung von Router auf das NAS für MariaDB (verwende nicht den Standardport)

    - Letsencypt Zertifikat


    Der externe Zugriff wird per SSL des Zertifikats verschlüsselt (Momentan SSL1.2)


    Das NAS ist ansonsten nur über VPN erreichbar.


    Ich weiss, dass das NAS nicht von extern erreichbar sein sollte. Momentan habe ich aber für mein Problem mit der Datenbank keine andere Lösung.


    Wie hoch schätzt ihr die Gefahr ein, dass ich mir damit z.B. eine Randsomware einfange?


    Gibt es noch andere Gefahren?


    Danke für eure Meinungen.

  • Nur VPN nutzen oder wenn das nicht möglich ist, die Datenbank bei einem Provider einrichten.

    NAS öffentlich im Netz ist gefährlich!


    Ansonsten evtl. noch VM auf dem NAS mit aktuellem(!) Linux und dort die Datenbank hosten.


    Tschau

    Uwe

  • die Datenbank bei einem Provider einrichten.

    Mein Provider unterstütz zwar den externen Zugriff, aber leider nur unverschlüsselt. Habe auch bei weiteren Providern nachgeschaut, leider auch dort nur unverschlüsselt.

    NAS öffentlich im Netz ist gefährlich!

    Ist ja nicht so, dass das ganze NAS offen ist. "Nur" der Port für die MariaDB. Und da ist jetzt die Frage, wie sicher ist der. Und von daher wollte ich eine Einschätzung wie gefährlich der spezifisch offene Port ist.



    Ansonsten evtl. noch VM auf dem NAS mit aktuellem(!) Linux und dort die Datenbank hosten.

    Bin mir nicht sicher ob meine TS-251+ genügend Power dafür hat. Habe mir überlegt eventuell ein Rasperry Pi dafür zu nehmen. Aber braucht halt alles Zeit dafür um es einzurichten.

  • daher wollte ich eine Einschätzung wie gefährlich der spezifisch offene Port ist.

    Der Port ist genauso sicher wei der dahinter laufende Dienst.

    VPN ist natürlich immer am besten. aber mit PAT machste auch nix verkehrt.

    ICH könnte damit leben. Ist eine Sache der Definition und dem Blickwinkel. Wobei ich das nicht pauschalisieren will. Es kommt auch drauf an was in der DB gespeichert werden soll.

  • Ich habe mir die sichere Anmeldung aus Neugier einmal angeschaut. Ich nutze auch viel MariaDB, aber nur unverschlüsselt im lokalen Netzwerk.


    1. MariaDB ohne TLS

    Nur im lokalen Netzwerk akzeptabel. Selbst das Passwort wird im Klartext übertragen.


    2. MariaDB mit Server-Zertifikat (One Way TLS)

    Die Kommunikation ist sicher und kann derzeit nicht gebrochen werden. Das Zertifikat verschlüsselt nur, sichert die Anmeldung aber nicht ab.

    Risiken:

    - Das Passwort wird erraten (brute force) oder gerät andersweitig in die Hände des Angreifers

    - Es gibt vergessene oder unbemerkt von Programmen angelegte Accounts mit Trivial- oder Defaultpasswörtern.

    - Auf Grund eines Fehlers in MariaDB kann man auch ohne Kenntnis von Passwörtern eindringen oder Code ausführen.


    3. MariaDB mit Server-Zertifikat und Client-Zertifikat (Two Way TLS) inkl. Einschränkung der Anmeldung nur mit bekanntem Zertifikat

    Die Kommunikation ist sicher und kann derzeit nicht gebrochen werden. DB-Accounts können so konfiguriert werden, dass die Anmeldung nur mit einem bestimmten Client-Zertifikat möglich ist. So wie ich gesehen habe, ist es aber nicht möglich, dies für alle Zugänge generell zu verlangen.

    Risiken:

    - Es gibt vergessene oder unbemerkt von Programmen angelegte Accounts mit Trivial- oder Defaultpasswörtern ohne Erforderung eines Zertifikats.

    - Auf Grund eines Fehlers in MariaDB kann man auch ohne Kenntnis von Passwörtern eindringen oder Code ausführen.


    Dann gibt es noch die Möglichkeit, statt über Zertifikate den Zugriff über einen SSH-Tunnel zu gestalten.


    4. MariaDB mit ssh-Tunnel, ssh-Anmeldung mit Passwort

    Die Kommunikation ist sicher und kann derzeit nicht gebrochen werden. Alle DB-Anmeldungen müssen über den ssh-Tunnel erfolgen.

    Risiken:

    - Das Unix/qts-Passwort wird erraten (brute force) oder gerät andersweitig in die Hände des Angreifers

    - Es gibt vergessene Unix/qts-Accounts mit Trivial- oder Defaultpasswörtern

    - Auf Grund eines Fehlers im Open-SSH-Server kann man auch ohne Kenntnis von Passwörtern eindringen oder Code ausführen.


    5. MariaDB mit ssh-Tunnel, ssh-Anmeldung mit ssh-Keys, Anmeldung ohne ssh-Keys abgeschaltet

    Die Kommunikation ist sicher und kann derzeit nicht gebrochen werden. Die Anmeldung kann nicht geknackt werden. Leider macht es Qnap einem schwer, die Passwort-Anmeldung zu unterbinden.

    Risiken:

    - Auf Grund eines Fehlers im Open-SSH-Server kann man auch ohne Kenntnis von Passwörtern eindringen oder Code ausführen.


    Meine Einschätzung:

    Die Anmeldung über ssh halte ich für sicherer, da der SSH-Server viel häufiger für die sichere Anmeldung verwendet wird als MariaDB und entsprechend besser getestet und überprüft worden ist. Mit der Einschränkung auf ssh-Keys entfällt auch das Risiko von vergessenen oder automatisch angelegten Accounts. ssh mit ssh-Keys bietet dieselbe Sicherheit wie ein VPN.


    Bei MariaDB mit Two-Way-Zertifikaten sehe ich ein relativ geringes Risiko einer Sicherheitslücke, die von den Folgen her aber gravierend sein könnte. Wenn sich der Schaden eines Datenabflusses in Grenzen hält und das Backup sicher ist gegen Verschlüsselungssoftware, halte ich das Risiko für vertretbar.

  • Hallo rednag und Anthracite vielen Dank für eure Einschätzungen.


    3. MariaDB mit Server-Zertifikat und Client-Zertifikat (Two Way TLS) inkl. Einschränkung der Anmeldung nur mit bekanntem Zertifikat

    Da ich diese Version des Zugriffs benutze, sehe ich im Moment keine sehr grosse Gefahr. Die Datenbanken werden täglich per Script gesichert und Versioniert. Auch wenn mal durch ein Hack Zugriff auf die Datenbanken stattfindet, oder die Daten zerstört werden. Da sehe ich für mich kein Problem alles wiederherstellen zu können.


    Auch wenn jetzt mein NAS verschlüsselt werden sollte, kann ich es neu Aufsetzten. Da das NAS als Backupsystem für meine geschäftliche Daten ist (Per VPN und HSB3). Somit würde "nur" ein Backup von dreien verloren gehen.


    Langfristig werde ich die Datenbanken auf ein Raspberry Pi umziehen. Aber im Moment hat das nicht oberste Priorität.