Merkzettel für Betreiber

Dieses Thema im Forum "Technischer Support" wurde erstellt von [Dev] iTzSasukeHDxLP, 11. April 2015.

  1. [Dev] iTzSasukeHDxLP
    Online

    [Dev] iTzSasukeHDxLP Ehem. Teammitglied

    Registriert seit:
    5. Januar 2014
    Beiträge:
    938
    Hallo liebe Community,

    ich möchte im folgenden eine Liste an Tipps, Tricks und Kniffen zusammentragen, die die Serversicherheit und die Konfiguration eines Servers betreffen.

    DIESER BEITRAG SOLL VORALLEM DURCH EURE MITARBEIT GESTALTET WERDEN! BITTE SCHREIBT EURE VORSCHLÄGE EINFACH IN DIESEN THREAD!

    Es gibt in letzter Zeit viele Leute, die einen scheiß auf den Rat anderer geben, wenn es darum geht, dass sie unvorsichtig sind keine Ahnung haben, wie sie ihren Server konfigurieren und ihr sich verhalten müssen, um sich selbst, den Server und andere zu beschützen. Es geht jedoch nicht nur um Schutz sondern auch um viele kleine essentielle Dinge, die, wenn sie zusammen kommen, aus einem Server schnell eine tickende Zeitbombe mit einer Menge Fernzünder machen, an denen große Schilder mit *Drück mich* hängen.
    Oft geht es dabei um banale, aber äußerst triviale Dinge, die aber von Faulheit, Unwissenheit oder schlichter Dummheit über den Haufen geworfen werden. Es fängt an bei der Verwendung von JSON und endet bei der Vergabe von Permissions - Beides ist ein wohlbekanntes Thema, sowohl hier, als auch da draußen in der Serverwelt.
    Viele Leute haben keine Ahnung von Java, Netty und JSON und haben einen Server - Und sind damit erfolgreich. Der Trick ist Motivation, Ehrgeiz und etwas Initiative, wovon die meisten 'Kiddies' allerdings keine Ahnung haben. Nicht selten stürzen sie sich selber und ihren Server ins Chaos und wissen nicht mal den Grund, weil sie sich weder vorher informiert, noch sich vorbereitet haben.
    Es gibt viele Tipps, die einen Server ein riesiges Stück sicherer machen - Alles triviale Dinge, welche aber einfach vergessen werden, wenn es um Komfort, Luxus und Bequemlichkeit geht.

    Es gibt, wenn ein Server nicht läuft, gehackt wird, zugrunde geht oder was auch immer, eine riesige Masse an Fehlerquellen, fast jede hat eine Lösung. Ein paar davon werde ich im folgenden erklären.

    1. Permissions
    Permissions sind nicht nur @SilberRegen 's Lieblingsthema, sondern auch die mit größte Fehlerquelle überhaupt. Hier wird oft zugunsten von Bequemlichkeit auf Sicherheit verzichtet, mit dem Argument 'Hauptsache funktioniert'. Ich sage: Bullshit! Es gibt einen Grund, weswegen man Permissions sperren kann, es gibt einen Grund, warum nicht jeder alles darf, es gibt einen Grund warum manche Plugins keine '*' Permissions zur Verfügung stellen, aber es gibt keinen verdammten Grund, warum man, nur damit es bequem ist, auf Sicherheit verzichtet.
    Permissions sind der schlüssel zu allem Übel und die Tür, die die Permissions abschirmt wird von den meisten nicht nur nicht verschlossen, oder wenigstens angelehnt, nein sie wird sperrangelweit aufgerissen und es wird eine bunte Lichterkette aufgehangen, die viel Spaß wünscht.
    Permissions haben, um ihren Sinn zu erfüllen, minimalistisch angelegt zu sein. Das heißt z.B:

    1. Keine * Permissions
    2. Komplettes Verbot von Befehlen die auf die Permissions zugreifen ausserhalb der Konsole
    3. OP Permissionslevel absenken
    4. OP mit einem Passwort sichern
    5. Spielern die Vergabe von OP verbieten
    2. Plugins

    Eine wunderbare Sache; Findet ihr nicht auch ? Es gibt eine Reihe an Plugins, die ein Server braucht um zu funktionieren und um abesichert zu sein. Es beginnt mit der Wahl des Permissionsplugins, geht über die Konfiguration von NocheatPlus und endet bei Loggerplugins. Ich möchte keine lange Rede halten; Deshalb hier eine Liste, was ein Server, der nicht innerhalb von 13 Minuten vom nächsten Kiddy auseinandergenommen werden will, an Plugins braucht/haben sollte.
    1. Ein vernünftiges Permissionsplugin. Viele benutzen Essentials(Alles Sünder) und holen sich direkt den dazu passenden GroupManager, andere schwören auf PermissionsEx und wieder andere benutzen zPermissions, bPermissions und wie sie alle heißen. Emphelen würde ich PermissionsBukkit (http://dev.bukkit.org/bukkit-plugins/permbukkit/), aber das kann jeder selbst entscheiden. Jedes PermissionsPlugin ist bei gewissehafter Konfiguration sicher.
    2. Ein Logger Plugin. Dieses ist dazu gut, Griefschäden zu beseitigen und Buch über Bauten und Kreationen zu führen. Es loggt alle Aktionen von Spielern, Creepern, Wasser, Lava, oder was auch immer, um eventuelle Schäden später beseitigen zu können. Es gibt ein paar gute Plugins in dieser Richtung und niemand sollte einfach so auf diese verzichten. Meine Favoriten sind LogBlock (http://dev.bukkit.org/bukkit-plugins/logblock/) und auch gerne CoreProtect (http://dev.bukkit.org/bukkit-plugins/coreprotect/).
    3. Ein AntiCheat Plugin. Der Name sagt eigentlich alles. Diese Plugins sollen Exploits, Hacks und Cheats von Spielern zuvorkommen. Es gibt eine Reihe von Plugins, welche sich dafür gut eignen. Beispiele: NocheatPlus (http://dev.bukkit.org/bukkit-plugins/nocheatplus/) in Verbindung mit CompatNocheatPlus (http://dev.bukkit.org/bukkit-plugins/compatnocheatplus-cncp/). Immer wieder gerne gesehen ist auch Orebfuscator (http://dev.bukkit.org/bukkit-plugins/orebfuscator/).


    Ich bin offen für Ergänzungen, danke, wenn ihr helft!;)
    - Sasuke
     
    #1
  2. Endersocke
    Offline

    Endersocke

    Teammitglieder:
    Wichtig ist auch, dass ihr euch die Wahl eurer Teammitglieder gut überlegt. Das ist beispielsweiße ein Lieblingsthema von mir. Man sollte sich seine Teammitglieder immer aus den eigenen Spielerreihen suchen. So kennt man seine Leute schon ein bisschen und kann sie besser einschätzen.

    Sollte der Server gerade im Aufbau sein, so sucht man sich auch gerne seine Teammitglieder aus zahlreichen Onlineforen (z.B. hier bei MCSEU). Dann sollte man sich allerdings ersteinmal mit der Person unterhalten, weiterführende Fragen stellen und auf gewisse Vorqualifikationen achten.

    Dies ist ein Punkt, an welchem viele "angreifbar" werden. Sie suchen sich einfach irgendjemanden. Dieser schreibt eine Bewerbung, in der sowieso nichts stimmt und schon ist er Admin. Falsch! Das beste was man machen kann währe dann, dieser Person einen niedrigen Rang (z.B. Supporter) zu geben, um überhaupt zu sehen, wie er mit einer evtl. vorhandenen Userschaft zurecht kommt. Auch im Aufbau des Servers kann das ein strategischer Vorteil sein. Man sieht, ob die Person den Ehrgeiz hat, länger auf dem Server zu bleiben.

    Wenn wir mal ehrlich sind: Wer will schon einen Server vernachlässigen, welchen er selber zu 80% mitgestaltet hat? Ich glaube keiner ....


    Ich hoffe ich konnte @Shizune (aka. Sasuke ;) ) weiterhelfen, diesen durchaus lesenswerten und interessanten Thread weiter zu entwickeln.



    Mit freundlichen Grüßen
    Helferlein
     
    #2
  3. SilberRegen
    Offline

    SilberRegen

    Registriert seit:
    23. März 2012
    Beiträge:
    579
    Minecraft:
    SilberRegen
    Pluginpunkt 1 kann ich nur unterstützen :)
    Hier sollte man definitiv nicht an Arbeit sparen, jede investierte Minute in ein ordentlich konfiguriertes Permissionplugin ist Gold wert.

    2. & 3. Haben wir noch nie gebraucht (geschlossene Gesellschaft :D), halte ich aber für den Großteil der Server für sinnvoll.

    Bei 4. möchte ich mich @SpiritWalker anschließen, diese Seiten sind mir nicht geheuer.
    Meine Empfehlung: Mehr Bannen und das permanent.
    Den Glauben, man könne Spieler, sprich wilfremde Leute im Internet, mit Tempbans/Kicks/Jail erziehen, halte ich für sehr naiv. User die "Hackclients" benutzen, euch zuspammen oder sich sonst daneben benimmen machen dies sicher nicht aus Versehen.

    Dubiose Spieler sind sowieso häufig anhand ihres Usernamen einfach googlebar, wenn sie sich vorher schon was geleistet haben. Viele Server haben ein Bannforum, in denen sie die Banns mit Screens, Log oder sogar Video dokumentieren, die tauchen dann bei einer Suche auf.
    Wie schaut die Rechtslage da eigentlich aus?

    Apropo meine Lieblingsthemen:

    Pluginquellen
    Finger weg von Plugins, die nicht von BukkitDev oder Spigotmc.org etc. stammen.
    Die Alarmglocken sollten laut läuten, wenn euch jemand ohne Aufforderung aus "Nettigkeit" ein Plugin geben möchte.

    Vertrauen...
    ...ist gut, Kontrolle ist besser.
    Gerade bei neuen Teammitgliedern oder Spielern, sollte man eine gesunde Portion Misstrauen an den Tag legen.
    Das heißt nicht, dass man ihnen 24/7 hinterhestalken soll, sondern, dass man sich die Zeit nimmt, die Leute kennenzulernen, bevor man weitergehende Rechte vergibt.
    Gerade den Punkt von @Helferlein , seine Teamler am Besten aus der aktiven Spielerschaft zu rekrutieren kann ich nur favorisieren.

    Gelegentliche Kontrollen des Serverlogs auf Commands oder andere Aktivitäten haben aber auch noch nie geschadet.
     
    #3
  4. 可愛い
    Offline

    可愛い

    Registriert seit:
    19. Mai 2014
    Beiträge:
    654
    @SilberRegen Das Problem welches du mit dem Datenschutz hast ist die Weiterleitung von eventuell personenbezogenen Daten an externe Server ohne die Zustimmung des Users, außerdem führen diese Seite natürlich damit auch ein serverweites Tracking ein. Vergleichbar mit dem Einbinden von Werbung oder dem Verwenden von Benutzertracker ohne Information. Genau genommen gibt es da auch bei normalen Servern bereits rechtliche Probleme, aber das interessiert zum Glück keinen. Der deutsche Datenschutz ist da ein wenig an der Realität vorbei, trozdem sind diese externen Banlisten problematisch.

    Außerdem kurz eingeschoben: Auch in bukkit.dev Plugins bekommt man Schadcode eingebettet, das setzt dann halt vorraus, dass man ihn etwas besser versteck. Das bekommen die Kiddies normalerweise halt nicht hin, dafür sind die Plugins die es hinbekommen umso gefährlicher.

    Wie es mit einer Liste von Bans aussieht weiß ich nicht, du darfst halt keine personenbezogenen Daten einfach öffentlich machen, ob das ggf. über den Nickname bereits geschiet hängt sicherlich vom Nickname selbst ab. Trozdem muss ich aber sagen, dass ich persönlich öffentlichen Pranger für mittelalterlich halte. Wenn du User auf deinem Server hast, die sich daneben benehmen, dann ban sie und es ist gut. Wer Bans öffentlich macht will damit nur Rache ausüben und Rache hat in einer zivilisierten Gesellschaft nichts zu suchen. Es spielt hier auch keine Rolle, dass ja jeder selbst entscheiden kann, ob er auf dem Server scheiße baut, mit der Begründung könnte man auch bei kleinen Delikten beliebige Strafen verlangen, da ja jeder weiß, was ihn erwartet.

    Ich bin ein Freund von aggresiven Bans. Wenn man User hat, die sich nicht an die Regeln halten, dann gibts maximal eine Warnung und danach werden sie permanent gebannt, ggf. mit der Möglichkeit nach einem Jahr nochmal nett nachzufragen. Auf die Weise hält man die Leute von Racheaktionen ab, da sie sonst ja nichts mehr zu verlieren hätten. Jemanden, der halt nur griefen wollte wird das egal sein, aber das kann es dir im Endeffkt eigentlich auch, da du die User banst und dann bist das Thema erledigt. Keine Diskussion, keine langen Dialoge, einfach /ban $user und das Problem ist weg.

    Wer das nicht tut weil er sonst keine User mehr auf seinem Server hat sollte sich vielleicht mal lieber Gedanken darüber machen, wesshalb er den ganzen Abschaum anzieht.
     
    #4
  5. SilberRegen
    Offline

    SilberRegen

    Registriert seit:
    23. März 2012
    Beiträge:
    579
    Minecraft:
    SilberRegen
    @SpiritWalker Danke für die genauere Aufklärung des Sachverhaltes.
    Persönlich ist es mir völlig egal, wo die Spieler noch alles ihren Unfug treiben, bei mir wird gebannt wer sich nicht benimmt.
    Da wir allerdings ein Votebannsystem haben, und unsere Mitglieder gegenüber uns den Beweis (Screen) der Richtigkeit des Banns in einem Thread vorlegen, wüsste ich halt schon gern ob ich das nicht lieber in ein internes Forum verlege, dass nur Mitglieder sehen können.
    Bis jetzt hatte ich eher die Überlegung, dass gebannte Spieler gleich den Nachweis vorliegen haben, falls sie sich um eine Entbannung bemühen wollen und es sich so überlegen können ob es die Mühe wert ist.

    In der Tat gab es schon einige Fälle auf BukkitDev, wo Developer selber sachen eingebaut haben, die nicht korrekt waren und durchs Kontrollsystem durchgerutscht sind.
    Immernoch besser, als sich die Plugins irgendwo herzuholen, wo keiner mal drübergeschaut hat, gerade, wenn man Anfänger ist und keine Ahnung davon hat, wie man so ein Plugin auf Schadcode überprüft.
     
    #5
  6. [Dev] iTzSasukeHDxLP
    Online

    [Dev] iTzSasukeHDxLP Ehem. Teammitglied

    Registriert seit:
    5. Januar 2014
    Beiträge:
    938
    Ich möchte trotzdem darauf hinweisen, dass es auch Leute gibt, die es ehrlich meinen. Ein paar Freunde und ich verwenden für unsere Server fast ausschließlich Plugins aus Fremdquellen. 99% der Plugins von Bukkit sind schlecht geschrieben/purer Bullshit (Siehe Enderwar, Bedwars etc.). Jeder Server der halbwegs etwas auf sich hält beschäftigt jedoch einen Developer, der durchaus fähig ist, Schadcode zu entdecken. Die Kontrollen bei Bukkit sind ziemlich lasch - Da gebe ich dir recht. Dort Schadcode einzuschleusen ist relativ einfach.
    Ich würde niemals ein Plugin auf meinem Server installieren, das ich nicht ziemlich genau kenne oder das ich nicht selbst geschrieben/überprüft/korrigiert habe.
     
    #6
    SilberRegen gefällt das.
  7. SilberRegen
    Offline

    SilberRegen

    Registriert seit:
    23. März 2012
    Beiträge:
    579
    Minecraft:
    SilberRegen
    Ich wollte es erst dazuschreiben, hab es aber doch weggelassen.
    Wer seine eigenen vertrauenswürdigen Devs hat, wird wohl wissen was sie da auf ihrem Server installiert hat, kann den Hinweis getrost ignorieren. Wie vermutlich auch den ganzen restlichen Inhalt des Threads, da ich diese Server nicht so einschätze, dass sie ihren Server nicht abgesichert bekommen. ;)
     
    #7
  8. Mario52
    Offline

    Mario52

    Registriert seit:
    19. August 2013
    Beiträge:
    511
    Minecraft:
    Mario_52
    Endlich wieder ein interessantes Thema! Dann schreibe ich auch meinen Beitrag dazu:

    1:
    Technische Maßnahmen:
    Es gibt viele verschiedene Möglichkeiten, seinen Server vor unerwünschtes Gästen zu sichern:

    Testserver:
    Alle Plugins, die dir nicht vertrauenswürdig erscheinen (Bukkit oder andere Quellen) können davor auf einem lokalen oder gehosteten Testserver überprüft bzw. getestet werden. Meistens beinhalten Schad-Code-Plugins sowieso nicht die Funktionen, die vom Ersteller versprochen werden. Mittlerweile kursieren im Internet auch einige Schadcode-Plugins, die aber alle, bis auf den Schadcore, keine Funktionen beinhalten. Deshalb ist es für Griefer schwer, sie jemanden ohne Testserver unterzujubeln.

    Decompiler:
    Es ist außerdem möglich, Plugins zu decompilen und den Code nach Schadcode zu durchsuchen. Dafür benötigt es ein wenig Geschick, doch meist keine Programmier-Kenntnisse. Ein Beispiel für einen Decompiler ist JDGui. Achtet beim Decompilen trotzdem immer auf das Lizenz (Copyright) des Plugins!

    Sicherungsplugins jeglicher Art:
    Eine weitere Möglichkeit sind Sicherheitsplugins. Egal ob AuthMe, Permissions-Plugins, Logblock oder NoCheatPlus, es gibt genug Möglichkeiten seinen Server zu schützen.

    Überprüfen von Logs und Erstellen von Backups:
    Einige Hoster bieten auch automatische Backup-Services an oder man benutzt ein Plugin dafür. Außerdem kann man ab und zu oder bei Unsicherheit über etwas den Serverlog überprüfen.

    2: Bekannte Sicherheitslücken:
    Richtige Sicherheitslücken gibt es kaum, meist ist es Versagen der Besitzer, welches zu Griefs oder ähnlichem führt. Trotzdem gibt es einige Funktionen, die für Besitzer nicht offensichtlich sind.

    1.8 Book Click:
    Ab der 1.8 ist es möglich, Bücher mit Befehlen zu versehen, die bei einem Klick auf den Text ausgeführt werden. Das funktioniert aber nur, wenn der "Klicker" auch die Berechtigung für diesen Befehl hat. Also ist diese Lücke mit verbieten der gängigen Befehle wie "op" oder die Vergabe von * Permissions gelöst.

    McMyAdmin:
    Diese Lücke ist mir vor einiger Zeit aufgefallen, scheint aber bei neueren Versionen gefixt worden zu sein. Alle die jetzt McMyAdmin benutzen müssen also nicht gleich in Panik ausbrechen. Mit einem Befehl konnte man mit dem mitgelieferten Plugin (BukkitCompat) Befehle über die Konsole ausführen.

    Schlechte Konfiguration:
    Schlechte Konfiguration ist wohl eine der Hauptursachen für Serverschädigungen. Datenbanken mit Standard-Passwörtern versehen und z.B. Konsolen-Plugins nicht richtig konfigurieren, schon ist der Angreifer in der Konsole.


    Ich hoffe ich konnte einigen weiterhelfen!
    Viele Grüße!
     
    #8