Einführung
Wenn Sie einen neuen Ubuntu 20.04-Server erstellen, sollten Sie als Teil der ersten Einrichtung einige wichtige Konfigurationsschritte durchführen. Diese Schritte erhöhen die Sicherheit und Benutzerfreundlichkeit Ihres Servers und bieten Ihnen eine solide Grundlage für nachfolgende Aktionen.
Wenn Sie einen DigitalOcean Droplet erstellen, können Sie eine Ubuntu-Version auswählen, die automatisch zu Ihrem neuen Droplet hinzugefügt wird. Vereinfachen Sie Ihre Einrichtung mit unseren sofort einsatzbereiten Lösungen.
Schritt 1 – Anmelden als root
Um sich bei Ihrem Server anzumelden, benötigen Sie die öffentliche IP-Adresse Ihres Servers. Sie benötigen außerdem das Passwort oder – wenn Sie einen SSH-Schlüssel zur Authentifizierung installiert haben – den privaten Schlüssel für das Benutzerkonto des root-Benutzers. Wenn Sie sich noch nicht bei Ihrem Server angemeldet haben, möchten Sie möglicherweise unserer Anleitung folgen, wie Sie sich über SSH mit Droplets verbinden, die diesen Prozess im Detail beschreibt.
Wenn Sie noch nicht mit Ihrem Server verbunden sind, melden Sie sich jetzt als Benutzer root mit folgendem Befehl an (ersetzen Sie den markierten Teil des Befehls durch die öffentliche IP-Adresse Ihres Servers):
Akzeptieren Sie die Warnung zur Hostauthentizität, wenn sie angezeigt wird. Wenn Sie die Passwortauthentifizierung verwenden, geben Sie Ihr root-Passwort ein, um sich anzumelden. Wenn Sie einen SSH-Schlüssel verwenden, der durch ein Passwort geschützt ist, werden Sie möglicherweise aufgefordert, das Passwort jedes Mal einzugeben, wenn Sie den Schlüssel in einer Sitzung verwenden. Wenn Sie sich zum ersten Mal mit einem Passwort beim Server anmelden, werden Sie möglicherweise auch aufgefordert, das root-Passwort zu ändern.
Über root
Der Benutzer root ist der administrative Benutzer in einer Linux-Umgebung, der sehr weitreichende Berechtigungen hat. Aufgrund der erhöhten Berechtigungen des root-Kontos wird davon abgeraten, es regelmäßig zu verwenden. Dies liegt daran, dass das root-Konto auch versehentlich sehr zerstörerische Änderungen vornehmen kann.
Der nächste Schritt besteht darin, ein neues Benutzerkonto mit eingeschränkten Berechtigungen für den täglichen Gebrauch einzurichten. Später zeigen wir Ihnen, wie Sie vorübergehend erhöhte Berechtigungen erhalten, wenn Sie sie benötigen.
Schritt 2 — Ein neues Benutzerkonto erstellen
Sobald Sie als root angemeldet sind, können Sie das neue Benutzerkonto hinzufügen. In Zukunft werden wir uns mit diesem neuen Konto anmelden, anstatt mit root.
In diesem Beispiel wird ein neuer Benutzer namens sammy erstellt, aber Sie sollten das durch einen Benutzernamen ersetzen, den Sie mögen:
Sie werden einige Fragen gestellt, beginnend mit dem Kontopasswort.
Geben Sie ein starkes Passwort ein und füllen Sie optional weitere Informationen aus, wenn Sie möchten. Dies ist nicht erforderlich, und Sie können einfach ENTER
in jedem Feld drücken, das Sie überspringen möchten.
Schritt 3 — Administrative Berechtigungen erteilen
Jetzt haben wir ein neues Benutzerkonto mit regulären Kontoberechtigungen. Manchmal müssen wir jedoch administrative Aufgaben ausführen.
Um zu vermeiden, dass wir uns von unserem normalen Benutzer abmelden und uns stattdessen als root-Benutzer anmelden müssen, können wir das einrichten, was als Superuser– oder Root-Berechtigungen für unseren normalen Benutzer bekannt ist. Dadurch kann unser normaler Benutzer Befehle mit administrativen Berechtigungen ausführen, indem das Wort sudo
vor dem Befehl platziert wird.
Um diese Berechtigungen unserem neuen Benutzer hinzuzufügen, müssen wir den Benutzer zur sudo-Gruppe hinzufügen. Standardmäßig dürfen auf Ubuntu 20.04 Benutzer, die Mitglieder der sudo-Gruppe sind, den sudo
-Befehl verwenden.
Als root führen Sie diesen Befehl aus, um Ihren neuen Benutzer zur sudo-Gruppe hinzuzufügen (ersetzen Sie den markierten Benutzernamen durch Ihren neuen Benutzer):
Jetzt können Sie, wenn Sie als Ihr regulärer Benutzer angemeldet sind, sudo
vor Befehle eingeben, um sie mit Superuser-Berechtigungen auszuführen.
Schritt 4 — Einrichten einer grundlegenden Firewall
Ubuntu 20.04-Server können die UFW-Firewall verwenden, um sicherzustellen, dass nur Verbindungen zu bestimmten Diensten zugelassen werden. Wir können eine grundlegende Firewall mit dieser Anwendung einrichten.
Hinweis: Wenn Ihre Server auf DigitalOcean laufen, können Sie optional statt der UFW-Firewall DigitalOcean Cloud Firewalls verwenden. Wir empfehlen, immer nur eine Firewall gleichzeitig zu verwenden, um Konflikte bei den Regeln zu vermeiden, die möglicherweise schwer zu debuggen sind.
Anwendungen können ihre Profile bei der Installation bei UFW registrieren. Diese Profile ermöglichen es UFW, diese Anwendungen nach Namen zu verwalten. OpenSSH, der Dienst, der es uns ermöglicht, uns jetzt mit unserem Server zu verbinden, hat ein Profil bei UFW registriert.
Sie können dies überprüfen, indem Sie Folgendes eingeben:
OutputAvailable applications:
OpenSSH
Wir müssen sicherstellen, dass die Firewall SSH-Verbindungen zulässt, damit wir uns beim nächsten Mal wieder anmelden können. Wir können diese Verbindungen zulassen, indem wir Folgendes eingeben:
Nachher können wir die Firewall aktivieren, indem wir Folgendes eingeben:
Geben Sie y
ein und drücken Sie ENTER
, um fortzufahren. Sie können sehen, dass SSH-Verbindungen immer noch erlaubt sind, indem Sie Folgendes eingeben:
OutputStatus: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Da die Firewall derzeit alle Verbindungen außer SSH blockiert, müssen Sie bei der Installation und Konfiguration zusätzlicher Dienste die Firewall-Einstellungen anpassen, um den Datenverkehr zuzulassen. Sie können einige häufige UFW-Operationen in unserem UFW Essentials -Handbuch erlernen.
Schritt 5 – Externen Zugriff für Ihren regulären Benutzer aktivieren
Jetzt, da wir einen regulären Benutzer für den täglichen Gebrauch haben, müssen wir sicherstellen, dass wir uns direkt beim Konto per SSH anmelden können.
Hinweis: Bis Sie überprüft haben, ob Sie sich mit Ihrem neuen Benutzer anmelden und sudo
verwenden können, empfehlen wir, als root angemeldet zu bleiben. Auf diese Weise können Sie bei Problemen Fehlerbehebungen durchführen und erforderliche Änderungen als root vornehmen. Wenn Sie einen DigitalOcean-Droplet verwenden und Probleme mit Ihrer SSH-Verbindung als root auftreten, können Sie über die Recovery-Konsole den Zugriff auf Droplets wiedererlangen.
Der Prozess zur Konfiguration des SSH-Zugriffs für Ihren neuen Benutzer hängt davon ab, ob das root-Konto Ihres Servers ein Passwort oder SSH-Schlüssel zur Authentifizierung verwendet.
Wenn das Root-Konto die Passwortauthentifizierung verwendet
Wenn Sie sich bei Ihrem Root-Konto mit einem Passwort anmelden, ist die Passwortauthentifizierung für SSH aktiviert. Sie können sich über SSH bei Ihrem neuen Benutzerkonto anmelden, indem Sie eine neue Terminalsession öffnen und SSH mit Ihrem neuen Benutzernamen verwenden:
Nach Eingabe des Passworts Ihres regulären Benutzers werden Sie angemeldet. Denken Sie daran, wenn Sie einen Befehl mit administrativen Rechten ausführen müssen, geben Sie sudo
davor ein, wie folgt:
Sie werden beim ersten Mal in jeder Sitzung (und gelegentlich danach) nach dem Passwort Ihres regulären Benutzers gefragt, wenn Sie sudo
verwenden.
Um die Sicherheit Ihres Servers zu erhöhen, empfehlen wir dringend, SSH-Schlüssel einzurichten, anstatt die Passwortauthentifizierung zu verwenden. Befolgen Sie unsere Anleitung zum Einrichten von SSH-Schlüsseln unter Ubuntu 20.04, um zu erfahren, wie Sie die authentifizierung basierend auf Schlüsseln konfigurieren können.
Wenn das Root-Konto die SSH-Schlüsselauthentifizierung verwendet
Wenn Sie sich mit Ihrem Root-Konto über SSH-Schlüssel angemeldet haben, ist die Passwortauthentifizierung für SSH deaktiviert. Sie müssen eine Kopie Ihres lokalen öffentlichen Schlüssels zur Datei ~/.ssh/authorized_keys
des neuen Benutzers hinzufügen, um sich erfolgreich anzumelden.
Da sich Ihr öffentlicher Schlüssel bereits in der Datei ~/.ssh/authorized_keys
des Root-Kontos auf dem Server befindet, können wir diese Datei und Verzeichnisstruktur in unser neues Benutzerkonto in unserer vorhandenen Sitzung kopieren.
Der einfachste Weg, die Dateien mit den korrekten Besitzverhältnissen und Berechtigungen zu kopieren, ist der rsync
-Befehl. Dieser kopiert das Root-Benutzerverzeichnis .ssh
, bewahrt die Berechtigungen und ändert die Dateibesitzer, alles in einem einzigen Befehl. Stellen Sie sicher, dass Sie die markierten Teile des Befehls unten ändern, um mit Ihrem regulären Benutzernamen übereinzustimmen:
Hinweis: Der rsync
-Befehl behandelt Quellen und Ziele, die mit einem abschließenden Schrägstrich enden, anders als solche ohne abschließenden Schrägstrich. Wenn Sie rsync
unten verwenden, stellen Sie sicher, dass das Quellverzeichnis (~/.ssh
) nicht mit einem abschließenden Schrägstrich endet (überprüfen Sie, ob Sie ~/.ssh/
verwenden).
Wenn Sie versehentlich einen abschließenden Schrägstrich zum Befehl hinzufügen, kopiert rsync
den Inhalt des Root-Kontosverzeichnisses ~/.ssh
in das Home-Verzeichnis des sudo
-Benutzers anstelle des Kopierens der gesamten Verzeichnisstruktur von ~/.ssh
. Die Dateien befinden sich an der falschen Stelle, und SSH kann sie nicht finden und verwenden.
Jetzt öffnen Sie eine neue Terminal-Sitzung auf Ihrem lokalen Rechner und verwenden SSH mit Ihrem neuen Benutzernamen:
Sie sollten nun im neuen Benutzerkonto angemeldet sein, ohne ein Passwort verwenden zu müssen. Denken Sie daran, wenn Sie ein Befehl mit administrativen Rechten ausführen müssen, geben Sie sudo
davor ein, so:
Sie werden beim ersten Mal pro Sitzung (und gelegentlich danach) nach dem Passwort Ihres regulären Benutzers gefragt, wenn Sie sudo
verwenden.
Was nun?
An diesem Punkt haben Sie eine solide Grundlage für Ihren Server. Sie können nun jede benötigte Software auf Ihrem Server installieren.
Source:
https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-20-04