Ubuntu 18.04 SSH Login für den root-Nutzer aktivieren

    • Offizieller Beitrag
    ZAP-Hosting Gameserver and Webhosting


    Bei der Installation eines eignen Linux Servers stoßen viele nach der Installation auf das Problem, dass sie sich nicht via SSH und dem root Benutzer auf ihren Server einloggen können. Ähnliche Probleme können auch bei diversen drittklassigen Hostern auftreten die ihre Linux Images falsch konfiguriert haben. Im folgenden möchte ich euch kurz erklären wie ihr auf einem Unix-System dieses "Problem" beheben könnt.

    Doch fangen wir von vorne an.


    Warum funktioniert der root-Login standardmäßig nicht?


    Die Antwort auf diese Frage ist ganz einfach, aus Sicherheitsgründen. Zum einen stellt der root-Account eine potenzielle Angriffsquelle dar für Bruteforce Angriffe etc..., zum anderen soll verhindert werden, dass der root-Account als Standardaccount verwendet wird.


    Wenn euch diese Risiken klar sind und ihr mit diesen keine Probleme habt könnt ihr mit diesem Tutorial fortfahren.


    Bei der Installation eures Servers wurdet ihr um die Erstellung eines neuen Nutzers gebeten. Nutzt nun die Daten dieses Accounts und loggt euch via SSh auf eurem Server ein. Solltet ihr den Server nicht selbst installiert haben, sondern habt ihn so von einem Hoster bekommen, versucht die Logindaten, die er euch gegeben hat.


    Geht nun mit cd /etc/ssh zum Speicherort von SSH. Nun müsst ihr das Konfigurationsfile "sshd_config" bearbeiten, gebt dazu sudo nano sshd_config in eure Konsole eine.
    Nun sucht ihr den Eintrag PermitRootLogin. Sollte vor diesem Eintrag ein # sein, so entfernt dieses bitte damit der Eintrag gelesen werden kann. Anschließend ändert ihr den Eintrag von PermitRootLogin prohibit-password zu PermitRootLogin yes. Wenn ihr diesen Eintrag erfolgreich geändert habt, könnt ihr jetzt mit "STRG+O" das File speichern und anschließend mit "STRG+X" nano beenden.


    Nun müsst ihr dem root-Account ein Passwort zuweisen, da dieser Standardmäßig keines hat. Gebt hierfür sudo passwd root in eurer Konsole ein. Nun werdet ihr aufgefordert euch ein Passwort auszusuchen und dieses zweimal einzugeben.


    Wenn ihr diese Schritte alle Erfolgreich abgeschlossen habt, könnt ihr den SSH-Dienst auf eurem Server neustarten. Dies macht ihr, indem ihr sudo /etc/init.d/ssh restart in der Konsole eingebt.


    Nun könnt ihr euch mit eurem root-Account auf dem Server einloggen.



    Solltet ihr weitere Probleme haben oder etwas nicht in diesem Tutorial verstanden haben, habe ich auf meinem YouTube-Channel noch dieses Video für euch:




    Ich hoffe euch hat dieses Tutorial geholfen.
    Falls ihr Hilfe braucht stehe ich euch gerne zur Verfügung.

  • Moin MasterZyper,


    Ich wäre auch dafür, wenn man dies aber nicht mit einem Passwort, sondern mit einem Keyfile macht und wenn dann einen anderen Port nimmt.

    Grund ist einfach dieser, dass man mittels "Null Packet Attack" oder einem Bruteforce Angriff den Zugang bekommen kann.

    Und es gibt genug Maschinen, die keinen ausreichenden Schutz haben und die „Kunden“ später Post und eine Anzeige am Hals haben, weil ihre Kiste verdächtige Dinge im Internet macht. Der Kunde haftet für seine eigene Maschine selber, das wissen die wenigsten. (siehe http://www.huschi.net/1_262_de…als-server-betreiber.html)



    Beispiel: Meine Server ändern alle 24 Stunden alle Sicherheitsrelevanten Ports und schickt mir dann eine Nachricht mit den neuen Ports.

    Zugang bekommt man auch nur mit einem Key (Meinen Fingerabdruck kann aber auch eine Datei sein) und wenn man einmal was falsch macht, wird man gesperrt und man kommt auch nicht mehr rein. Kommt einer auf die Idee einen Port Scanner zu verwenden wird dieser gleich ebenfalls auf die Blockierliste gesetzt und kann sich nicht mehr mit dem Server verbinden


    Man kann auch einfach nur den Keyfile einsetzen... Passwort deaktivieren... Port ändern zb (1224) und ist schon mal sicher.

    *hust Dazu kommt auch noch das man eig niemals root nach außen zugänglich machen soll, sondern nur via sudo oder su ;)

    Die nötige Software zb für das sperren wäre zb fail2ban nur das muss man genau einstellen.


    Falls gewünscht kann ich dazu gerne einen Beitrag schreiben.

    🚧IT Administrator und Senior Developer | Frisst Bugs zum Frühstück 🤪 | C++ ist meine Bibel 📖 | 🦧Menschenversteher 😊| Musikmensch 🥰| 🚫 Keine IT Anfragen | LUA, PHP, Javascript, Java, C# sowie VB.NET | 🤣 Flauschig | 🚨Durchgeknallt

    Code
    if ($this->getBrainData($human->getBrain()) == null){
        return "Irgendwas stimmt mit Hasi nicht! 🐰";
    }

    10 Mal editiert, zuletzt von Hymolia ()

  • No front, aber ich bin der Meinung das Leute die nicht die nötige Erfahrung damit haben und sich vorher damit nicht auseinander gesetzt haben, selbst daran Schuld sind. Wenn man es nicht kann, soll man es lassen. Nicht jeder kann Fliesenleger werden. Da kann der Hoster dann gar nichts für. Für diesen Fall gibts es nicht umsonst Managed Server.

  • Guten Morgen Henry,


    Stimme ich dir zu, trotzdem sind diese Server aber ein Problem, weil es immer mehr werden, die kompromittiert und gegen uns selbst verwendet werden. Wir sind z. B. auch schon genau von so einem Server angegriffen worden und sowas nervt mit der Zeit. Die Tendenz steigt immer mehr und wenn wenigstens bisl erklärt wird das ein Server kein Spielzeug ist, sondern auch als Waffe benutzt werden kann mache ich wenigstens ein wenig das ganze sicherer und leiste einen kleinen Beitrag dazu.

    🚧IT Administrator und Senior Developer | Frisst Bugs zum Frühstück 🤪 | C++ ist meine Bibel 📖 | 🦧Menschenversteher 😊| Musikmensch 🥰| 🚫 Keine IT Anfragen | LUA, PHP, Javascript, Java, C# sowie VB.NET | 🤣 Flauschig | 🚨Durchgeknallt

    Code
    if ($this->getBrainData($human->getBrain()) == null){
        return "Irgendwas stimmt mit Hasi nicht! 🐰";
    }
  • Du scheinst einen Plan von all dem zu haben! Ich meine, ich wusste auch, dass man gehackt werden kann, dadurch auch Konsequenzen anfallen... Aber holla