Zusätzliche empfohlene Schritte für neue CentOS 7-Server

Einführung

Nach dem Einrichten der Mindestkonfiguration für einen neuen Server werden in den meisten Fällen einige zusätzliche Schritte dringend empfohlen. In diesem Handbuch setzen wir die Konfiguration unserer Server fort, indem wir einige empfohlene, aber optionale Verfahren ausführen.

Voraussetzungen und Ziele

Bevor Sie diese Anleitung starten, sollten Sie die AnleitungCentOS 7 initial server setupdurchgehen. Dies ist erforderlich, um Ihre Benutzerkonten einzurichten, die Erhöhung von Berechtigungen mitsudo zu konfigurieren und SSH aus Sicherheitsgründen zu sperren.

Nachdem Sie den obigen Leitfaden ausgefüllt haben, können Sie mit diesem Artikel fortfahren. In diesem Handbuch konzentrieren wir uns auf die Konfiguration einiger optionaler, aber empfohlener Komponenten. Dazu müssen wir unser System mit einer Firewall und einer Auslagerungsdatei einrichten und die Synchronisierung des Network Time Protocol konfigurieren.

Konfigurieren einer Basisfirewall

Firewalls bieten eine grundlegende Sicherheitsstufe für Ihren Server. Diese Anwendungen sind dafür verantwortlich, den Datenverkehr zu jedem Port auf Ihrem Server mit Ausnahme der von Ihnen genehmigten Ports / Dienste zu verweigern. CentOS wird mit einer Firewall namensfirewalld ausgeliefert. Mit einem Tool namensfirewall-cmd können Sie Ihre Firewall-Richtlinien konfigurieren. Unsere grundlegende Strategie wird darin bestehen, alles zu sperren, was uns keinen guten Grund gibt, offen zu bleiben. Installieren Sie zuerstfirewalld:

sudo yum install firewalld

Der Dienstfirewalldkann Änderungen vornehmen, ohne aktuelle Verbindungen zu trennen, sodass wir ihn aktivieren können, bevor wir unsere Ausnahmen erstellen:

sudo systemctl start firewalld

Nachdem der Dienst ausgeführt wird, können wir das Dienstprogrammfirewall-cmdverwenden, um Richtlinieninformationen für die Firewall abzurufen und festzulegen. Die Anwendungfirewalldverwendet das Konzept der „Zonen“, um die Vertrauenswürdigkeit der anderen Hosts in einem Netzwerk zu kennzeichnen. Diese Kennzeichnung gibt uns die Möglichkeit, unterschiedliche Regeln zuzuweisen, je nachdem, wie sehr wir einem Netzwerk vertrauen.

In diesem Handbuch werden nur die Richtlinien für die Standardzone angepasst. Wenn wir unsere Firewall neu laden, wird dies die Zone sein, die auf unsere Schnittstellen angewendet wird. Wir sollten zunächst Ausnahmen zu unserer Firewall für genehmigte Dienste hinzufügen. Das wichtigste davon ist SSH, da der Remote-Verwaltungszugriff auf den Server beibehalten werden muss.

Wenn Sienot den Port geändert haben, auf dem der SSH-Dämon ausgeführt wird, können Sie den Dienst nach Namen aktivieren, indem Sie Folgendes eingeben:

sudo firewall-cmd --permanent --add-service=ssh

Wenn Siechangedals SSH-Port für Ihren Server haben, müssen Sie den neuen Port explizit angeben. Sie müssen auch das vom Dienst verwendete Protokoll angeben. Geben Sie Folgendes nur ein, wenn Ihr SSH-Server bereits neu gestartet wurde, um den neuen Port zu verwenden:

sudo firewall-cmd --permanent --remove-service=ssh
sudo firewall-cmd --permanent --add-port=4444/tcp

Dies ist das absolute Minimum, um den Administratorzugriff auf den Server aufrechtzuerhalten. Wenn Sie weitere Dienste ausführen möchten, müssen Sie auch für diese die Firewall öffnen.

Wenn Sie einen herkömmlichen HTTP-Webserver ausführen möchten, müssen Sie den Diensthttpaktivieren:

sudo firewall-cmd --permanent --add-service=http

Wenn Sie einen Webserver mit aktiviertem SSL / TLS ausführen möchten, sollten Sie den Datenverkehr auch fürhttpszulassen:

sudo firewall-cmd --permanent --add-service=https

Wenn Sie SMTP-E-Mail aktivieren müssen, können Sie Folgendes eingeben:

sudo firewall-cmd --permanent --add-service=smtp

Geben Sie Folgendes ein, um zusätzliche Dienste anzuzeigen, die Sie nach Namen aktivieren können:

sudo firewall-cmd --get-services

Wenn Sie fertig sind, können Sie die Liste der Ausnahmen anzeigen, die implementiert werden, indem Sie Folgendes eingeben:

sudo firewall-cmd --permanent --list-all

Wenn Sie bereit sind, die Änderungen zu implementieren, laden Sie die Firewall neu:

sudo firewall-cmd --reload

Wenn nach dem Testen alles wie erwartet funktioniert, sollten Sie sicherstellen, dass die Firewall beim Booten gestartet wird:

sudo systemctl enable firewalld

Denken Sie daran, dass Sie die Firewall (mit Diensten oder Ports) für zusätzliche Dienste, die Sie später konfigurieren, explizit öffnen müssen.

Konfigurieren Sie die Synchronisierung von Zeitzonen und Netzwerkzeitprotokollen

Im nächsten Schritt müssen Sie die Lokalisierungseinstellungen für Ihren Server anpassen und die NTP-Synchronisierung (Network Time Protocol) konfigurieren.

Der erste Schritt stellt sicher, dass Ihr Server in der richtigen Zeitzone arbeitet. Im zweiten Schritt wird Ihr System so konfiguriert, dass die Systemuhr mit der Standardzeit synchronisiert wird, die von einem globalen Netzwerk von NTP-Servern verwaltet wird. Dies hilft, ein inkonsistentes Verhalten zu vermeiden, das durch nicht synchronisierte Uhren entstehen kann.

Zeitzonen konfigurieren

Der erste Schritt besteht darin, die Zeitzone unseres Servers festzulegen. Dies ist eine sehr einfache Prozedur, die mit dem Befehltimedatectl ausgeführt werden kann:

Sehen Sie sich zunächst die verfügbaren Zeitzonen an, indem Sie Folgendes eingeben:

sudo timedatectl list-timezones

Dadurch erhalten Sie eine Liste der für Ihren Server verfügbaren Zeitzonen. Wenn Sie die für Ihren Server richtige Regions- / Zeitzoneneinstellung gefunden haben, geben Sie Folgendes ein:

sudo timedatectl set-timezone region/timezone

Um beispielsweise die US-Ostküstenzeit festzulegen, können Sie Folgendes eingeben:

sudo timedatectl set-timezone America/New_York

Ihr System wird aktualisiert, um die ausgewählte Zeitzone zu verwenden. Sie können dies bestätigen, indem Sie Folgendes eingeben:

sudo timedatectl

Konfigurieren Sie die NTP-Synchronisierung

Nachdem Sie Ihre Zeitzone festgelegt haben, sollten wir NTP konfigurieren. Auf diese Weise kann Ihr Computer mit anderen Servern synchronisiert werden, was zu einer besseren Vorhersehbarkeit bei Vorgängen führt, bei denen die richtige Zeit erforderlich ist.

Für die NTP-Synchronisierung verwenden wir einen Dienst namensntp, den wir aus den Standard-Repositorys von CentOS installieren können:

sudo yum install ntp

Als Nächstes müssen Sie den Dienst für diese Sitzung starten. Wir werden den Dienst auch aktivieren, damit er bei jedem Neustart des Servers automatisch gestartet wird:

sudo systemctl start ntpd
sudo systemctl enable ntpd

Ihr Server korrigiert nun automatisch die Systemuhr, um sie an die globalen Server anzupassen.

Erstellen Sie eine Auslagerungsdatei

Durch das Hinzufügen von "Swap" zu einem Linux-Server kann das System die Informationen, auf die seltener zugegriffen wird, eines laufenden Programms aus dem RAM an einen Speicherort auf der Festplatte verschieben. Der Zugriff auf auf der Festplatte gespeicherte Daten ist viel langsamer als der Zugriff auf den Arbeitsspeicher. Die Verfügbarkeit von Swap kann jedoch häufig den Unterschied zwischen der Beibehaltung und dem Absturz Ihrer Anwendung ausmachen. Dies ist besonders nützlich, wenn Sie vorhaben, Datenbanken auf Ihrem System zu hosten.

Die Empfehlungen zur besten Größe für einen Swap Space variieren je nach Quelle erheblich. Im Allgemeinen ist eine Menge gleich oder doppelt so viel RAM auf Ihrem System ein guter Ausgangspunkt.

Weisen Sie mit dem Dienstprogrammfallocateden Speicherplatz zu, den Sie für Ihre Auslagerungsdatei verwenden möchten. Wenn wir beispielsweise eine 4-Gigabyte-Datei benötigen, können wir eine Auslagerungsdatei erstellen, die sich bei/swapfile befindet, indem wir Folgendes eingeben:

sudo fallocate -l 4G /swapfile

Nach dem Erstellen der Datei müssen wir den Zugriff auf die Datei einschränken, damit andere Benutzer oder Prozesse nicht sehen können, was dort geschrieben steht:

sudo chmod 600 /swapfile

Wir haben jetzt eine Datei mit den richtigen Berechtigungen. Um unserem System mitzuteilen, dass die Datei für den Austausch formatiert werden soll, können wir Folgendes eingeben:

sudo mkswap /swapfile

Teilen Sie dem System nun mit, dass es die Auslagerungsdatei verwenden kann, indem Sie Folgendes eingeben:

sudo swapon /swapfile

Unser System verwendet die Auslagerungsdatei für diese Sitzung, aber wir müssen eine Systemdatei so ändern, dass unser Server dies beim Booten automatisch tut. Sie können dies tun, indem Sie Folgendes eingeben:

sudo sh -c 'echo "/swapfile none swap sw 0 0" >> /etc/fstab'

Mit diesem Zusatz sollte Ihr System Ihre Auslagerungsdatei bei jedem Start automatisch verwenden.

Wohin soll es von hier aus gehen?

Sie haben jetzt ein sehr anständiges Setup für Ihren Linux-Server. Von hier aus gibt es einige Orte, an die Sie gehen können. Zunächst möchten Sie möglicherweise einen Snapshot Ihres Servers in der aktuellen Konfiguration erstellen.

Machen Sie einen Schnappschuss Ihrer aktuellen Konfiguration

Wenn Sie mit Ihrer Konfiguration zufrieden sind und diese als Basis für zukünftige Installationen verwenden möchten, können Sie über das DigitalOcean-Bedienfeld einen Schnappschuss Ihres Servers erstellen. Ab Oktober 2016 kosten Snapshots 0,05 US-Dollar pro Gigabyte und Monat, je nachdem, wie viel Speicherplatz im Dateisystem belegt ist.

Fahren Sie dazu Ihren Server über die Befehlszeile herunter. Während es möglich ist, einen Snapshot eines laufenden Systems zu erstellen, stellt das Herunterfahren sicher, dass sich alle Dateien auf der Festplatte in einem konsistenten Zustand befinden:

sudo poweroff

Jetzt können Sie in der DigitalOcean-Systemsteuerung einen Schnappschuss erstellen, indem Sie die Registerkarte „Schnappschüsse“ Ihres Servers aufrufen:

DigitalOcean snapshot

Nachdem Sie Ihren Schnappschuss aufgenommen haben, können Sie dieses Image als Basis für zukünftige Installationen verwenden, indem Sie den Schnappschuss auf der Registerkarte "Meine Schnappschüsse" für Bilder während des Erstellungsprozesses auswählen:

DigitalOcean use snapshot

Zusätzliche Ressourcen und nächste Schritte

Ab hier hängt Ihr Pfad ganz davon ab, was Sie mit Ihrem Server tun möchten. Die folgende Liste von Handbüchern erhebt keinen Anspruch auf Vollständigkeit, zeigt jedoch einige der gebräuchlichsten Konfigurationen, an die sich Benutzer als Nächstes wenden:

Fazit

Zu diesem Zeitpunkt sollten Sie wissen, wie Sie eine solide Grundlage für Ihre neuen Server konfigurieren. Hoffentlich haben Sie auch eine gute Idee für Ihre nächsten Schritte. Sie können die Site nach weiteren Ideen durchsuchen, die Sie auf Ihrem Server implementieren können.