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 Dienstfirewalld
kann Ä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-cmd
verwenden, um Richtlinieninformationen für die Firewall abzurufen und festzulegen. Die Anwendungfirewalld
verwendet 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 Diensthttp
aktivieren:
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ürhttps
zulassen:
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 Dienstprogrammfallocate
den 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:
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:
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.