LFCE: Installieren von Netzwerkdiensten und Konfigurieren des automatischen Starts beim Booten - Teil 1
Ein Linux Foundation Certified Engineer (LFCE) ist bereit, Netzwerkdienste in Linux-Systemen zu installieren, zu konfigurieren, zu verwalten und Fehler zu beheben, und ist für das Design und die Implementierung der Systemarchitektur verantwortlich.
Wir stellen vor: Das Zertifizierungsprogramm der Linux Foundation.
In dieser 12-Artikel-Serie mit dem Titel Vorbereitung auf die LFCE-Prüfung (Linux Foundation Certified Engineer) behandeln wir die erforderlichen Bereiche und Kompetenzen in Ubuntu, CentOS und openSUSE:
Installieren von Netzwerkdiensten
Wenn es um die Einrichtung und Nutzung jeglicher Art von Netzwerkdiensten geht, ist es schwer vorstellbar, dass Linux nicht Teil davon sein kann. In diesem Artikel zeigen wir, wie Sie die folgenden Netzwerkdienste unter Linux installieren (jede Konfiguration wird in den kommenden separaten Artikeln behandelt):
- NFS-Server (Network File System)
- Apache-Webserver
- Squid-Proxy-Server + SquidGuard
- E-Mail-Server (Postfix + Taubenschlag) und
- Iptables
Darüber hinaus möchten wir sicherstellen, dass alle diese Dienste beim Booten oder bei Bedarf automatisch gestartet werden.
Wir müssen beachten, dass selbst wenn Sie alle diese Netzwerkdienste auf derselben physischen Maschine oder demselben virtuellen privaten Server ausführen können, eine der ersten sogenannten "Regeln" der Netzwerksicherheit die Systemadministratoren anweist, dies so weit wie möglich zu vermeiden. Was ist das Urteil, das diese Aussage stützt? Es ist ziemlich einfach: Wenn aus irgendeinem Grund ein Netzwerkdienst auf einem Computer kompromittiert wird, auf dem mehr als einer von ihnen ausgeführt wird, kann es für einen Angreifer relativ einfach sein, auch den Rest zu kompromittieren.
Wenn Sie nun wirklich mehrere Netzwerkdienste auf demselben Computer installieren müssen (z. B. in einer Testumgebung), stellen Sie sicher, dass Sie nur diejenigen aktivieren, die Sie zu einem bestimmten Zeitpunkt benötigen, und deaktivieren Sie sie später.
Bevor wir beginnen, müssen wir klarstellen, dass der vorliegende Artikel (wie auch der Rest in den LFCS- und LFCE-Reihen) sich auf eine leistungsbasierte Perspektive konzentriert und daher nicht jedes theoretische Detail der behandelten Themen untersuchen kann. Wir werden jedoch jedes Thema mit den notwendigen Informationen als Ausgangspunkt vorstellen.
Um die folgenden Netzwerkdienste nutzen zu können, müssen Sie die Firewall vorerst deaktivieren, bis wir gelernt haben, wie Sie den entsprechenden Datenverkehr durch die Firewall zulassen können.
Bitte beachten Sie, dass dies NICHT für ein Produktions-Setup empfohlen wird, sondern wir dies nur zu Lernzwecken tun werden.
In einer Standard-Ubuntu-Installation sollte die Firewall nicht aktiv sein. In openSUSE und CentOS müssen Sie es explizit deaktivieren:
# systemctl stop firewalld
systemctl disable firewalld
or
or systemctl mask firewalld
Davon abgesehen, fangen wir an!
Installieren eines NFSv4-Servers
NFS an sich ist ein Netzwerkprotokoll, dessen neueste Version NFSv4 ist. Dies ist die Version, die wir in dieser Serie verwenden werden.
Ein NFS-Server ist die traditionelle Lösung, die es entfernten Linux-Clients ermöglicht, ihre Freigaben über ein Netzwerk zu mounten und mit diesen Dateisystemen zu interagieren, als wären sie lokal gemountet, wodurch Speicherressourcen für das Netzwerk zentralisiert werden können.
Unter CentOS
# yum update && yum install nfs-utils
Unter Ubuntu
# aptitude update && aptitude install nfs-kernel-server
Auf OpenSUSE
# zypper refresh && zypper install nfsserver
Ausführlichere Anweisungen finden Sie in unserem Artikel, in dem beschrieben wird, wie Sie NFS-Server und -Client auf Linux-Systemen konfigurieren.
Installieren des Apache-Webservers
Der Apache-Webserver ist eine robuste und zuverlässige FOSS-Implementierung eines HTTP-Servers. Ende Oktober 2014 betrieb Apache 385 Millionen Websites, was einem Marktanteil von 37,45 % entspricht. Sie können Apache verwenden, um eine eigenständige Website oder mehrere virtuelle Hosts auf einem Computer bereitzustellen.
# yum update && yum install httpd [On CentOS]
aptitude update && aptitude install apache2 [On Ubuntu]
zypper refresh && zypper install apache2 [On openSUSE]
Ausführlichere Anweisungen finden Sie in unseren folgenden Artikeln, in denen gezeigt wird, wie Sie IP-basierte und namensbasierte virtuelle Apache-Hosts erstellen und wie Sie den Apache-Webserver sichern.
- Apache IP-basiertes und namensbasiertes virtuelles Hosting
- Tipps zur Härtung des Apache-Webservers und zur Sicherheit
Installation von Squid und SquidGuard
Squid ist ein Proxy-Server und Web-Cache-Daemon und fungiert als solcher als Vermittler zwischen mehreren Client-Computern und dem Internet (oder einem mit dem Internet verbundenen Router), während es häufige Anfragen beschleunigt, indem Webinhalte und DNS-Auflösung gleichzeitig zwischengespeichert werden. Es kann auch verwendet werden, um den Zugriff auf bestimmte URLs nach Netzwerksegment oder basierend auf verbotenen Schlüsselwörtern zu verweigern (oder zu gewähren), und speichert eine Protokolldatei aller Verbindungen, die pro Benutzer mit der Außenwelt hergestellt wurden.
Squidguard ist ein Redirector, der Blacklists implementiert, um Squid zu verbessern, und sich nahtlos in diese integrieren lässt.
# yum update && yum install squid squidGuard [On CentOS]
aptitude update && aptitude install squid3 squidguard [On Ubuntu]
zypper refresh && zypper install squid squidGuard [On openSUSE]
Installation von Postfix und Dovecot
Postfix ist ein Mail Transport Agent (MTA). Es ist die Anwendung, die für das Routing und die Zustellung von E-Mail-Nachrichten von einer Quelle zu einem Ziel-Mailserver verantwortlich ist, während Dovecot ein weit verbreiteter IMAP- und POP3-E-Mail-Server ist, der Nachrichten vom MTA abruft und an das richtige Benutzerpostfach zustellt.
Dovecot-Plugins für verschiedene relationale Datenbankmanagementsysteme sind ebenfalls verfügbar.
# yum update && yum install postfix dovecot [On CentOS]
aptitude update && aptitude postfix dovecot-imapd dovecot-pop3d [On Ubuntu]
zypper refresh && zypper postfix dovecot [On openSUSE]
Über Iptables
In wenigen Worten ist eine Firewall eine Netzwerkressource, die verwendet wird, um den Zugriff auf oder von einem privaten Netzwerk zu verwalten und den ein- und ausgehenden Datenverkehr basierend auf bestimmten Regeln umzuleiten.
Iptables ist ein Tool, das standardmäßig unter Linux installiert wird und als Frontend für das Netfilter-Kernel-Modul dient, das letztendlich für die Implementierung einer Firewall verantwortlich ist, um Paketfilter-/Umleitungs- und Netzwerkadressübersetzungsfunktionen durchzuführen.
Da iptables standardmäßig unter Linux installiert ist, müssen Sie nur sicherstellen, dass es tatsächlich läuft. Um dies zu tun, sollten wir überprüfen, ob die iptables-Module geladen sind:
# lsmod | grep ip_tables
Wenn der obige Befehl nichts zurückgibt, bedeutet dies, dass das ip_tables Modul nicht geladen wurde. Führen Sie in diesem Fall den folgenden Befehl aus, um das Modul zu laden.
# modprobe -a ip_tables
Lesen Sie auch: Grundlegende Anleitung zur Linux Iptables Firewall
Konfigurieren des automatischen Starts von Diensten beim Booten
Wie in Managing System Startup Process and Services – Part 7 der 10-Artikel-Serie über die LFCS-Zertifizierung beschrieben, gibt es unter Linux mehrere System- und Service-Manager. Unabhängig von Ihrer Wahl müssen Sie wissen, wie Sie Netzwerkdienste bei Bedarf starten, stoppen und neu starten und wie Sie sie für den automatischen Start beim Booten aktivieren können.
Sie können überprüfen, was Ihr System- und Service-Manager ist, indem Sie den folgenden Befehl ausführen:
# ps --pid 1
Abhängig von der Ausgabe des obigen Befehls verwenden Sie einen der folgenden Befehle, um zu konfigurieren, ob jeder Dienst beim Booten automatisch gestartet werden soll oder nicht:
Auf systemd-basierten
----------- Enable Service to Start at Boot -----------
systemctl enable [service]
----------- Prevent Service from Starting at Boot -----------
systemctl disable [service] # prevent [service] from starting at boot
Auf sysvinit-basierten
----------- Start Service at Boot in Runlevels A and B -----------
chkconfig --level AB [service] on
----------- Don’t Start Service at boot in Runlevels C and D -----------
chkconfig --level CD service off
Auf Upstart-based
Stellen Sie sicher, dass das Skript /etc/init/[service].conf existiert und die minimale Konfiguration enthält, wie zum Beispiel:
# When to start the service
start on runlevel [2345]
When to stop the service
stop on runlevel [016]
Automatically restart process in case of crash
respawn
Specify the process/command (add arguments if needed) to run
exec /absolute/path/to/network/service/binary arg1 arg2
Sie können auch in Teil 7 der LFCS-Serie (auf den wir gerade am Anfang dieses Abschnitts Bezug genommen haben) nach weiteren nützlichen Befehlen suchen, um Netzwerkdienste bei Bedarf zu verwalten.
Zusammenfassung
Inzwischen sollten Sie alle in diesem Artikel beschriebenen Netzwerkdienste installiert haben und möglicherweise mit der Standardkonfiguration ausgeführt werden. In späteren Artikeln werden wir untersuchen, wie wir sie nach unseren Bedürfnissen konfigurieren können, also bleiben Sie dran! Und bitte zögern Sie nicht, Ihre Kommentare (oder Fragen, falls Sie welche haben) zu diesem Artikel über das untenstehende Formular zu teilen.
Verweise
- Über die LFCE
- Warum eine Linux Foundation-Zertifizierung erwerben?
- Melden Sie sich für die LFCE-Prüfung an

