Server administrieren - wo fange ich an?

  • da du sonst per SSH Key oder auch per Passwort

    Ah! Jetzt ist der Groschen gefallen... Ich dachte immer das der SSH Key eine zusätzliche Sicherung zum bereits bestehenden PW ist. Also SSH Key in Kombination mit dem Passwort. Ja okay, dann ergibt das keinen Sinn. Dann lese ich mich mal bezüglich der erwähnten Passphrasen ein. Danke euch.

    [RS] 2000 G9 | Cyber Quack

    [VPS] 2000 ARM G11 | 1000 G9 | 200 G8 | Secret | A | mikro G11s | 4x nano G11s
    [WH] 8000 SE | 4000 SE | 2000 SE

  • wenn sie meine Frage nicht mal im Ansatz beantworten, sondern an dieser vollkommen vorbei zielen.

    Naja als Admin sollte man sich selbst mit der Thematik beschäftigen, dass sollte eigentlich meine Anregung sein.

    Weil wenn man nach "unattended-upgrades" sucht, sollte man dann eigentlich auch bei Theoretisch bei "apticron" landen...

  • Gibt es eigentlich eine Art Update-Checker, welcher Notifications versenden kann?

    Genau das ist der springende Punkt. Es gibt die normalen OS Updates, die du natürlich regelmäßig und zeitnah einspielen solltest. Aber bis auf wenige Ausnahmen ist das in der Regel weniger kritisch als die Updates für deine Applikationen, die sehr oft nicht über den Paket Manager bzw. die Repos kommen, sondern aus einer 3rd Party Quelle. Da hilft es, wenn man die Release Updates der entsprechenden Applikationen im Auge behält. Oft sind solche Applikationen ja sogar auf Github zu finden. In diesem Fall kann man z.B. die /releases Page als RSS Feed abbonieren (so mache ich das) und bleibt so immer auf dem Laufenden. Die wenigstens Server laufen zu 100% mit Software aus den OS Repos. Und das ist wirklich Prio 1. Ein (Sicherheits-)kritischer Bug in der Applikation ist genau das, was du um jeden Preis vermeiden willst, denn da helfen auch die schnellsten OS Updates nicht.

  • Ein (Sicherheits-)kritischer Bug in der Applikation ist genau das, was du um jeden Preis vermeiden willst, denn da helfen auch die schnellsten OS Updates nicht.

    Ich habe mir deshalb debcvescan installiert:

    https://github.com/devmatic-it/debcvescan


    Damit ich von kritischen bugs auch zeitnah informiert werde, lasse ich das täglich von einem bash-script ausführen, das die Ausgabe filtert und mir eine email schickt, bei kritischen bugs.

  • entsprechenden Applikationen im Auge behält.

    Und genau das meine ich. Gibt es eine Software, welcher ich beibringen kann, welche Applikationen ich verwende, und wo nachgesehen werden kann, ob es Updates zu diesen gibt? Oder muss ich wirklich anfangen mir unzählige RSS-Feeds zu abonnieren und täglich manuell zu filtern?

    [RS] 2000 G9 | Cyber Quack

    [VPS] 2000 ARM G11 | 1000 G9 | 200 G8 | Secret | A | mikro G11s | 4x nano G11s
    [WH] 8000 SE | 4000 SE | 2000 SE

    Einmal editiert, zuletzt von Bud ()

  • Und genau das meine ich. Gibt es eine Software, welcher ich beibringen kann, welche Applikationen ich verwende, und wo nachgesehen werden kann, ob es Updates zu diesen gibt? Oder muss ich wirklich anfangen mir unzählige RSS-Feeds zu abonnieren und täglich manuell zu filtern?

    Nein ;-). Es ist praktisch unmöglich, dass es eine Software gibt, die alle anderen Applikationen kennt (inklusive Sicherheitsupdates & Co) um dich zeitnah informieren zu können. Wenn es so eine Software geben würde, wäre sie vermutlich unbezahlbar. Dafür sind die Entwicklungen einzelner Applikationen viel zu verschieden und es gibt viel zu viele verschiedene Installationsmethoden. Es ist deine Aufgabe als Admin, dass du dich entsprechend informierst und handelst. Es werden ja nicht ohne Grund Mitarbeiter (Admins) eingestellt und bezahlt, damit sie diesen Job machen. Wenn das einfach so eine Software könnte, gäbe es ziemlich viele Jobs weniger da draußen.

  • Und genau das meine ich. Gibt es eine Software, welcher ich beibringen kann, welche Applikationen ich verwende, und wo nachgesehen werden kann, ob es Updates zu diesen gibt? Oder muss ich wirklich anfangen mir unzählige RSS-Feeds zu abonnieren und täglich manuell zu filtern?

    Willkommen zum Job eines Serveradmins.

    RS Ostern L OST22 (~RS "3000" G9.5) (8C,24GB,960GB) | RS Cyber Quack (1C,2GB,40GB)

    Haha 3 Traurig 1
  • Nein ;)

    Willkommen zum Job eines Serveradmins.

    Verdammt :S


    Es ist praktisch unmöglich, dass es eine Software gibt, die alle anderen Applikationen kennt (inklusive Sicherheitsupdates & Co) um dich zeitnah informieren zu können.

    Dass es eine solche Software nicht geben kann, war mir klar. Deswegen ja meine Frage, ob es eine Software gibt, die alle Tools mit sich bringt, dass ich es dieser Software „beibringen“ kann. Also quasi: Für Spigot suche auf http://www.example.com nach dieser Textphrase, und wenn die sich ändert, informiere mich. Aber dann halt nicht ^^


    Dafür sind die Entwicklungen einzelner Applikationen viel zu verschieden und es gibt viel zu viele verschiedene Installationsmethoden. Es ist deine Aufgabe als Admin, dass du dich entsprechend informierst und handelst.

    Okay, das heißt, der beste way2go sind RSS Feeds? Nutzt ihr andere Wege, um euch aktuell zu halten?

    [RS] 2000 G9 | Cyber Quack

    [VPS] 2000 ARM G11 | 1000 G9 | 200 G8 | Secret | A | mikro G11s | 4x nano G11s
    [WH] 8000 SE | 4000 SE | 2000 SE

    Einmal editiert, zuletzt von Bud ()

  • Und genau das meine ich. Gibt es eine Software, welcher ich beibringen kann, welche Applikationen ich verwende, und wo nachgesehen werden kann, ob es Updates zu diesen gibt? Oder muss ich wirklich anfangen mir unzählige RSS-Feeds zu abonnieren und täglich manuell zu filtern?

    Nein ;-). Es ist praktisch unmöglich, dass es eine Software gibt, die alle anderen Applikationen kennt (inklusive Sicherheitsupdates & Co) um dich zeitnah informieren zu können.

    Sofern wir hier über Software sprechen, die über Distributionspakete installiert werden, ist debcvescan, welches von aRaphael genannt wurde, schon eine Hilfe.

    Dessen Reports gehören ebenso wie Fehlermeldungen aus den Logs (die man lesen sollte) zur täglichen Lektüre, beispielsweise gesammelt in einem Postfach und beispielsweise vorgefiltert durch Werkzeuge wie tenshi. Automatisierte Sicherheitsupdates (vgl. Post von nitram) sind ebenfalls ein wichtiger Baustein, um kritische Lücken zeitnah automatisiert zu stopfen. Livepatch für Kernelpatches von Canonical (als Bestandteil von Ubuntu Pro) ist mit ein Grund (neben LXD), warum ich Ubuntu den Vorzug vor Debian gebe. Alle öffentlich verfügbaren Dienste sind entweder sicher zu kapseln (etwa in Containern) und/oder hinter eine AF (Application Firewall) zu packen (beispielsweise nutze ich ModSecurity als WAF).

    Beherzigt man diese Vorgehensweisen, hat man in der Regel schon nach wenigen Jahrzehnten eine Infrastruktur und Arbeitsweise, welche den Administrationsaufwand in Grenzen hält. ;)

    EDIT: Und bezüglich RSS-Feeds: Ich verwende hierfür rss2email, um wirklich alles über eine Anwendung im Blick zu haben.

    VServer IOPS Comparison Sheet: https://docs.google.com/spreadsheets/d/1w38zM0Bwbd4VdDCQoi1buo2I-zpwg8e0wVzFGSPh3iE/edit?usp=sharing

    Einmal editiert, zuletzt von m_ueberall ()

    Gefällt mir 3 Ente gut, alles gut 1
  • ...und/oder hinter eine AF (Application Firewall) zu packen (beispielsweise nutze ich ModSecurity als WAF)

    ModSecurity nutze ich auch.

    Das Ding ist allerdings kein Selbstläufer, im Sinne von "Installieren und das wars".

    Um daraus effektiv Nutzen ziehen zu können und auch die (bei einer WAF unvermeidlichen) False-Positives zu minimieren, sollte/muss man schon ein bisschen Arbeit reinstecken.

    Es lohnt sich aber, finde ich. Wenn ich in meinen täglichen Reports so sehe, was da alles abgefangen wird... :huh:

    Gestern wars sogar noch recht ruhig: ;)

    Code
    136 x "Restricted File Access Attempt"
    57 x "SQL Injection Attack Detected via libinjection"
    52 x "Request Containing Content, but Missing ContentType header"
    20 x "Found UserAgent associated with security scanner"
    10 x "Remote Command Execution: Unix Shell Expression Found"
    5 x "NoScript XSS InjectionChecker: HTML Injection"
    5 x "XSS Filter  Category 1: Script Tag Vector"
    5 x "XSS Attack Detected via libinjection"
    5 x "Node.js Injection Attack"
    5 x "Remote Command Execution: Unix Shell Code Found"
  • Nein ;-). Es ist praktisch unmöglich, dass es eine Software gibt, die alle anderen Applikationen kennt (inklusive Sicherheitsupdates & Co) um dich zeitnah informieren zu können. Wenn es so eine Software geben würde, wäre sie vermutlich unbezahlbar. Dafür sind die Entwicklungen einzelner Applikationen viel zu verschieden und es gibt viel zu viele verschiedene Installationsmethoden. Es ist deine Aufgabe als Admin, dass du dich entsprechend informierst und handelst. Es werden ja nicht ohne Grund Mitarbeiter (Admins) eingestellt und bezahlt, damit sie diesen Job machen. Wenn das einfach so eine Software könnte, gäbe es ziemlich viele Jobs weniger da draußen.

    Relativ gut funktioniert: Docker + Watchtower

    Das angenehme an Docker ist ja, dass die Images von einer zentralen Stelle kommen und daher auch realtiv leicht geupdatet werden können. Solange man selbstverständlich seriöse Images nutzt (die entsprechend gepflegt werden).
    Geht natürlich, nur wenn es entsprechnde Docker Images gibt

  • Relativ gut funktioniert: Docker + Watchtower

    Das funktioniert aber auch nur dann gut (automatisiert), wenn die verschiedenen Docker-Images zwischen ihren Versionen nicht z. B. wichtige Änderungen an den Configurationsdateien vornehmen. Da fallen mir direkt aus dem Stehgreif schon mal ein paar Kandidaten ein, bei denen das mit dem blind updaten nicht klappt:

    • Gitea/Forgejo
    • Minio
    • Matrix/Synapse
    • jwilders nginx proxy bzw. der passende LetsEncrypt Companion
  • Das funktioniert aber auch nur dann gut (automatisiert), wenn die verschiedenen Docker-Images zwischen ihren Versionen nicht z. B. wichtige Änderungen an den Configurationsdateien vornehmen. Da fallen mir direkt aus dem Stehgreif schon mal ein paar Kandidaten ein, bei denen das mit dem blind updaten nicht klappt:

    • Gitea/Forgejo
    • Minio
    • Matrix/Synapse
    • jwilders nginx proxy bzw. der passende LetsEncrypt Companion

    Ja, das ist ein großes Problem.
    Weswegen man Watchtower am besten in Notify (und eventuell Download) only betreiben sollte, wenn einem die Verfügbarkeit wichtig ist.
    Ich lasse es auf Auto Update laufen und passe die Konfigs dann entsprechend an. Aber man nimmt damit natürlich in Kauf, dass der Service nicht funktioniert.

  • Nutzt ihr andere Wege, um euch aktuell zu halten?

    • Heise Security Alerts
    • Security-Mailinglisten der genutzten Linux-Distributionen abonnieren
    • Bei GitHub (eingeloggt) die Releases und Security-Events von relevanten Repositories abonnieren
    • Diverse weitere Ankündigungs-Mailinglisten oder RSS-Feeds von Entwicklern abonnieren
    • cron-apt auf jedem Debian-System (nur benachrichtigen)
    • Zusätzlich apt-dater-host auf jedem Debian-System.

    (Und rss2email nutze ich ebenfalls seit Jahren, mit zahlreichen Sieve-Regeln.)

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

    3 Mal editiert, zuletzt von KB19 ()

    Ente gut, alles gut 1
    • Gitea/Forgejo
    • Minio
    • Matrix/Synapse
    • jwilders nginx proxy bzw. der passende LetsEncrypt Companion

    Bei vielen Anwendungen die aus Anwendung+DB bestehen ist es imho hilfreich, zumindest die DB auf eine Version zu pinnen, die Anwendung kann oftmals recht sorgenfrei automatisch aktualisiert werden.


    Wie wäre es als Nginx Proxy mit LE statt dem oberen mit https://nginxproxymanager.com/ ? Der NPM wird bei mir schon immer (seit Jahren) automatisch aktualisiert und es gab nicht einmal Probleme.

    RS Ostern L OST22 (~RS "3000" G9.5) (8C,24GB,960GB) | RS Cyber Quack (1C,2GB,40GB)

  • Bei vielen Anwendungen die aus Anwendung+DB bestehen ist es imho hilfreich, zumindest die DB auf eine Version zu pinnen, die Anwendung kann oftmals recht sorgenfrei automatisch aktualisiert werden.


    Wie wäre es als Nginx Proxy mit LE statt dem oberen mit https://nginxproxymanager.com/ ? Der NPM wird bei mir schon immer (seit Jahren) automatisch aktualisiert und es gab nicht einmal Probleme.

    Guter Punkt mit der Datenbank, das mache ich auch so.


    NPM hatte ich mir schon mal angeschaut, ich fand es damals aber etwas unpraktisch, dass ich zusätzlich zu einem docker-compose Stack noch in einer WebUI Dinge für die Erreichbarkeit der Webservices konfigurieren muss. Beim Nginx Proxy mit LE muss ich nur die passenden Umgebungsvariablen in meiner docker-compose.yml haben und alles andere passiert automatisch.


    Kenne aber auch Leute, die NPM in der Praxis benutzen und sehr happy damit sind :-).

  • Guter Punkt mit der Datenbank, das mache ich auch so.


    NPM hatte ich mir schon mal angeschaut, ich fand es damals aber etwas unpraktisch, dass ich zusätzlich zu einem docker-compose Stack noch in einer WebUI Dinge für die Erreichbarkeit der Webservices konfigurieren muss. Beim Nginx Proxy mit LE muss ich nur die passenden Umgebungsvariablen in meiner docker-compose.yml haben und alles andere passiert automatisch.


    Kenne aber auch Leute, die NPM in der Praxis benutzen und sehr happy damit sind :-).

    Dann ist Traefik vielleicht eher was für dich. Bei Traefik kannst du auch alles mit Labels in den jeweiligen Container einrichten.

    https://github.com/traefik/traefik