GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Sechs Bereitstellungsschritte für Linux-Dienste und die zugehörigen Tools

Vor einigen Jahren hörte ich, wie ein anderer Linux-Lehrer mehrere Schritte zur Bereitstellung eines Dienstes unter Linux herunterrasselte. Ich habe die Stufen aufgeschrieben und im Laufe der Zeit einige weitere Informationen hinzugefügt. Die Schritte sind seitdem ein Teil meiner eigenen Linux-Lehrlieferungen.

Dieses Thema ist ziemlich grundlegend für alle Benutzer da draußen, die von Anfang an mit Linux gearbeitet haben. Eine Überprüfung der Grundlagen ist natürlich nie verkehrt. Für die neueren Linux-Systemadministratoren kann diese Checkliste als Möglichkeit dienen, Ihre Bereitstellungsschritte zu organisieren und sich daran zu erinnern, wie Linux die von Ihnen verwalteten Dienste verwaltet. Ich werde auch die Tools notieren, die Sie für jeden Schritt verwenden.

Vielleicht stellen Sie eine einfache Website mit Apache bereit oder richten einen neuen Dateiserver ein, der auf NFS basiert. In jedem Fall möchten Sie sicherstellen, dass Ihre Bereitstellung erfolgreich ist.

Fangen wir an!

Schritt 1:Ist der Dienst installiert?

Die Serviceinstallation ist offensichtlich der grundlegendste Schritt. Viele Linux-Distributionen enthalten aus Sicherheits- und Leistungsgründen nur eine minimale Installation von Diensten. Der einzige Netzwerkdienst, auf den Sie sich verlassen können, ist beispielsweise SSH. Wenn Sie also einen Apache-Webserver oder einen NFS-Dateiserver bereitstellen, müssen Sie die Software wahrscheinlich selbst installieren.

Hinweis:Denken Sie daran, dass Sie durch die Tatsache, dass Sie die meisten Anwendungen selbst installieren müssen, auf subtile Weise ermutigt werden, die neueste Version zu verwenden. Sie haben jedoch auch die Freiheit, ältere Softwareversionen zu verwenden, wenn dies aus Kompatibilitätsgründen erforderlich ist.

Stellen Sie bei RHEL-basierten Distributionen sicher, dass der Dienst mithilfe von rpm installiert ist , yum , oder dnf Befehle.

Führen Sie beispielsweise den folgenden yum aus Befehl, um sicherzustellen, dass die Apache-Software installiert ist:

# yum list httpd

Schritt 2:Ist der Dienst konfiguriert?

Wie Sie wissen, verwendet Linux Textdateien, um die Dienstkonfiguration zu verwalten. Diese Dateien werden normalerweise im Verzeichnis /etc gespeichert Verzeichnis. Sobald der Dienst installiert ist, konfigurieren Sie ihn, indem Sie die zugehörigen Konfigurationsdateien bearbeiten.

Die primäre Apache-Konfigurationsdatei ist beispielsweise /etc/httpd/conf/httpd.conf . Verwenden Sie diese Datei, um die Anfangseinstellungen für den Webdienst zu definieren.

Die meisten Systemadministratoren verwenden vim Konfigurationsdateien zu bearbeiten. Nano , gedit , und sogar emacs sind ebenfalls mögliche Werkzeuge.

Hier ist ein Beispiel für das Öffnen einer Konfigurationsdatei mit dem Texteditor meiner Wahl, vim :

# vim /etc/httpd/conf/httpd.conf

Schritt 3:Ist der Dienst gestartet?

Neu installierte und konfigurierte Dienste müssen gestartet werden. Wenn Sie einen Dienst manuell starten, liest er die Konfigurationsdatei, die Sie im vorherigen Schritt bearbeitet haben. Die Startprozedur startet auch den entsprechenden Prozess (oder die Prozesse) und stellt dem Benutzer die Dienstfunktionalität zur Verfügung.

Die meisten modernen Distributionen verlassen sich auf systemd , verwenden Sie also systemctl Befehl zum Starten, Stoppen und Neustarten von Diensten. Hier ist ein Beispiel für das Starten von Apache mit systemctl :

# systemctl start httpd

Ältere Systeme verwenden möglicherweise die SysV init-Umgebung. Verwenden Sie in diesen Fällen den folgenden Befehl, um den Dienst zu starten:

# service httpd start

Das Problem beim manuellen Starten eines Dienstes ist, dass er nur für die aktuelle Laufzeit aktiv ist. Wenn Sie den Server neu starten, wird der Prozess nicht automatisch gestartet. Diese Tatsache führt uns zu Schritt vier weiter unten.

Schritt 4:Ist der Dienst persistent?

Damit der Dienst bei jedem Systemstart gestartet wird, müssen Sie ihn aktivieren. Denken Sie daran, Start ein Dienst bewirkt, dass er während der Aktivierung in der aktuellen Laufzeit ausgeführt wird der Dienst bewirkt, dass es gestartet wird, wenn das System startet. Die beiden Konzepte sind nicht austauschbar (mit anderen Worten, die Aktivierung eines Dienstes führt nicht dazu, dass er gestartet wird).

Verwalten Sie bei systemd-basierten Distributionen den Startstatus des Dienstes mit systemctl . Die Aktionen sind aktivieren oder deaktivieren. Hier ist ein Beispiel:

# systemctl enable httpd

Verwenden Sie auf SysV-basierten Systemen die chkconfig Befehl, um den Startstatus des Dienstes zu steuern. Um beispielsweise sicherzustellen, dass der Dienst in den Runlevels 3 und 5 startet, geben Sie den folgenden Befehl ein:

# chkconfig --level 35 httpd on

Schritt 5:Haben Sie den Dienst getestet?

Nachdem Sie den Dienst installiert, konfiguriert, gestartet und aktiviert haben, ist es an der Zeit, sicherzustellen, dass der Dienst wie beabsichtigt funktioniert. Können Sie die Apache-Testwebseite anzeigen? Können Sie auf die Verzeichnisse zugreifen, die Sie mit NFS exportiert haben? Vergessen Sie nicht, dass Sie für Netzwerkdienste mit ziemlicher Sicherheit auch die Firewall konfigurieren müssen. Diese Aufgabe würde den Rahmen dieser Diskussion sprengen, aber die Informationen sind online verfügbar.

Während der Testphase möchten Sie möglicherweise bestätigen, dass die entsprechenden Protokolldateien generiert werden und dass die Protokolleinträge dem erforderlichen Schweregrad entsprechen. Beginnen Sie mit der Überprüfung von /etc/rsyslog.conf Datei sowie die Manpage des Dienstes.

Schritt 6:Haben Sie den Dienst geändert?

Haben Sie während des Tests Änderungen an der Konfigurationsdatei des Dienstes vorgenommen? Wenn dies der Fall ist, müssen Sie den Dienst neu starten, damit er die Datei erneut liest. Sie müssen auch alle zukünftigen Änderungen an der Konfigurationsdatei berücksichtigen, die Sie während des Lebenszyklus des Dienstes vornehmen. Hier sind Beispiele für den Neustart eines Dienstes sowohl auf systemd- als auch auf SysV-basierten Systemen:

# systemctl restart httpd
# service httpd restart

Abschluss

Ich hoffe, dass diese grundlegende Zusammenfassung der Schritte und Tools zur Dienstbereitstellung hilfreich war. Indem Sie eine mentale Checkliste erstellen, die jeden dieser Schritte überprüft, tragen Sie dazu bei, sicherzustellen, dass Ihre Servicebereitstellungen erfolgreich sind.

Denken Sie daran:Starten und Aktivieren sind keine austauschbaren Begriffe, und es handelt sich um separate Aktionen. Gleiches gilt für Stop und Deaktivieren. Achten Sie darauf, ob Sie mit einer systemd-basierten Distribution oder einer Distribution arbeiten, die SysV verwendet.

Hier ist eine Zusammenfassung der Schritte und Tools:

  1. Installiert? rpm, lecker, dnf
  2. Konfiguriert? vim, nano
  3. Gestartet? systemctl oder service
  4. Beständig? systemctl oder chkconfig
  5. Getestet? ping oder Standard-Client-Software
  6. Neu konfiguriert? systemctl oder service

[ Möchten Sie Red Hat Enterprise Linux ausprobieren? Laden Sie es jetzt kostenlos herunter. ]


Linux
  1. Dienste auf systemd RHEL 7 Linux-Server starten, stoppen und neu starten

  2. So starten, stoppen und starten Sie Dienste auf einem dedizierten Linux-Server

  3. Überprüfen Sie die laufenden Dienste unter Linux

  4. Crond Daemon unter Linux starten, stoppen und neu starten

  5. Wie verhindere ich, dass Linux-Dienste automatisch gestartet werden?

30 interessante Tools und Dienste zur Überwachung Ihrer Linux-Server

Parrot OS Eine Linux-Distribution für Pentester, Sicherheitsanalysten und Hacker

So starten, stoppen oder starten Sie Netzwerkdienste unter Rocky Linux 8

Die 10 besten Linux-VPN-Clients und -Dienste für Ihren Schutz

Die 15 besten Linux-Malwerkzeuge für Profis und Digitalkünstler

Top 10 Open-Source-Tools zur Fehler- und Problemverfolgung für Linux