Erstes Server-Setup mit CentOS / RHEL 8
Bedarf
- CentOS 8 Installationsanleitung
- RHEL 8 Minimale Installation
- Aktivieren Sie das RHEL-Abonnement in RHEL 8
Wichtig: Sie müssen eine haben Red Hat-Abonnementdienst aktiviert auf Ihrem RHEL 8 Server zur Durchführung von Systemupdates und Softwareinstallationen.
Schritt 1: Aktualisieren Sie die Systemsoftware
Melden Sie sich zunächst als Root-Benutzer bei Ihrem Server an und führen Sie die folgenden Befehle aus, um das System vollständig mit dem neuesten Kernel, Systemsicherheitspatches, Software-Repositorys und -Paketen zu aktualisieren.
# dnf check-update # dnf update
Nach Abschluss des Software-Upgrade-Vorgangs können Sie alle freigegebenen Softwarepakete mit allen zwischengespeicherten Repository-Informationen löschen, indem Sie den folgenden Befehl ausführen, um Speicherplatz freizugeben.
# dnf clean all
Schritt 2: Installieren Sie die Systemdienstprogramme
Diese folgenden Systemdienstprogramme können für alltägliche Systemverwaltungsaufgaben sehr nützlich sein: nano, vim editor, wget & curl (Dienstprogramme, die zum Herunterladen von Paketen meist über das Netzwerk verwendet werden) net-tools (Dienstprogramme zum Verwalten lokaler Netzwerke) lsof (nützlich für Suche nach geöffneten Dateien nach Prozess) und Bash-Vervollständigung (automatische Vervollständigung der Befehlszeile).
# dnf install nano vim wget curl net-tools lsof bash-completion
Schritt 3: Hostname und Netzwerk einrichten
Im CentOS / RHEL 8In den Repositorys, die zum Konfigurieren und Verwalten des Netzwerks verwendet wurden, ist eine Vielzahl von Tools enthalten, von der manuellen Änderung der Netzwerkkonfigurationsdatei bis zur Verwendung von Befehlen wie ifconfig, ip, nmcli und nmtui.
Das einfachste Dienstprogramm, mit dem ein Neuling Netzwerkkonfigurationen konfigurieren und verwalten kann, z. B. das Festlegen des Netzwerkhostnamens und das Konfigurieren der statischen IP-Adresse, ist die Verwendung nmtui grafisches Befehlszeilenprogramm.
Legen Sie den Hostnamen in CentOS 8 fest
Führen Sie die folgenden Schritte aus, um den Systemhostnamen festzulegen oder zu ändern nmtui-hostname Befehl, mit dem Sie aufgefordert werden, den Hostnamen Ihres Computers einzugeben und zum Beenden OK zu drücken, wie im folgenden Screenshot dargestellt.
# nmtui-hostname
Stellen Sie die statische IP-Adresse in CentOS 8 ein
Führen Sie die folgenden Schritte aus, um eine Netzwerkschnittstelle zu konfigurieren nmtui-edit Befehl, mit dem Sie aufgefordert werden, die zu konfigurierende Schnittstelle aus dem Menü auszuwählen, wie im folgenden Screenshot gezeigt.
# nmtui-edit
Sobald Sie auf die klicken Bearbeiten Mit dieser Schaltfläche werden Sie aufgefordert, die IP-Einstellungen der Netzwerkschnittstelle wie im folgenden Screenshot dargestellt einzurichten. Wenn Sie fertig sind, navigieren Sie zu OK mit [tab]
Ein Schlüssel zum Speichern und Beenden der Konfiguration.
Sobald Sie mit der Netzwerkkonfiguration fertig sind, müssen Sie den folgenden Befehl ausführen, um die neuen Netzwerkeinstellungen anzuwenden, indem Sie die Schnittstelle auswählen, die Sie verwalten möchten, und auf klicken Deaktivieren / Aktivieren Option zum Außerbetriebnehmen und Aufrufen der Schnittstelle mit den IP-Einstellungen, wie im folgenden Screenshot dargestellt.
# nmtui-connect
Um die Netzwerkkonfigurationseinstellungen zu überprüfen, können Sie den Inhalt der Schnittstellendatei überprüfen oder die folgenden Befehle ausführen.
# ifconfig enp0s3 # ip a # ping -c2 google.com
Sie können auch andere nützliche Netzwerkdienstprogramme verwenden, z ethtool und mii-tool Überprüfen der Geschwindigkeit der Netzwerkschnittstelle, des Netzwerkverbindungsstatus und Abrufen von Informationen zu Maschinennetzwerkschnittstellen.
# ethtool enp0s3 # mii-tool enp0s3
Als wichtiger Aspekt Ihres Computernetzwerks ist es wichtig, alle offenen Netzwerksockets aufzulisten, um zu überprüfen, welche Dienste an welchen Ports empfangsbereit sind und wie der Status der eingerichteten Netzwerkverbindungen ist, und alle Dateien aufzulisten, die von Prozessen geöffnet werden.
# netstat -tulpn # ss -tulpn # lsof -i4 -6
Schritt 4: Erstellen Sie ein neues Benutzerkonto
Es ist immer ratsam, einen normalen Benutzer mit Root-Berechtigungen zu haben, um bei Bedarf Verwaltungsaufgaben ausführen zu können. Um einem normalen Benutzer Root-Berechtigungen zuzuweisen, erstellen Sie zunächst einen Benutzer mit dem Befehl useradd, legen Sie das Kennwort fest und fügen Sie einen Benutzer zur Verwaltungsradgruppe hinzu.
# useradd ravisaive # passwd ravisaive # usermod -aG wheel ravisaive
Um zu überprüfen, ob der neue Benutzer über Root-Rechte verfügt, melden Sie sich mit den Anmeldeinformationen des Benutzers beim System an und führen Sie den Befehl dnf mit den angegebenen Sudo-Berechtigungen aus.
# su - ravisaive # sudo dnf update
Schritt 5: SSH Passwordless Login unter CentOS 8 einrichten
Um die Serversicherheit zu erhöhen, richten Sie eine SSH-Authentifizierung ohne Kennwort für Ihren neuen Benutzer ein, indem Sie ein Paar SSH-Schlüssel generieren, das a enthält Öffentlichkeit und Privat Schlüssel, aber Sie müssen eine erstellen. Dies erhöht die Sicherheit Ihres Servers, indem ein privater SSH-Schlüssel für die Verbindung zum System erforderlich ist.
# su - ravisaive $ ssh-keygen -t RSA
Sobald der Schlüssel generiert wurde, werden Sie aufgefordert, die Passphrase einzugeben, um den privaten Schlüssel zu sichern. Sie können eine sichere Passphrase eingeben oder die Passphrase leer lassen, wenn Sie Verwaltungsaufgaben über den SSH-Server automatisieren möchten.
Sobald der SSH-Schlüssel generiert wurde, müssen Sie das generierte öffentliche Schlüsselpaar auf einen Remoteserver kopieren, indem Sie den ausführen ssh-copy-id Befehl mit dem Benutzernamen und der IP-Adresse des Remote-Servers wie gezeigt.
$ ssh-copy-id [email protected]
Nachdem der SSH-Schlüssel kopiert wurde, können Sie jetzt versuchen, sich mit dem privaten Schlüssel als Authentifizierungsmethode bei Ihrem Remote-Linux-Server anzumelden. Sie sollten sich automatisch anmelden können, ohne dass der SSH-Server nach einem Kennwort fragt.
$ [email protected]
Schritt 6: Sichern von SSH-Remote-Anmeldungen
Hier sichern wir unseren Server ein wenig mehr, indem wir den Remote-SSH-Zugriff auf das Root-Konto in der SSH-Konfigurationsdatei deaktivieren.
# vi /etc/ssh/sshd_config
Suchen Sie die Zeile mit der Aufschrift #PermitRootLogin yes
, kommentieren Sie die Zeile aus, indem Sie die #
vom Anfang der Zeile und ändern Sie die Zeile in.
PermitRootLogin no
Starten Sie anschließend den SSH-Server neu, um die letzten neuen Änderungen zu übernehmen.
# systemctl restart sshd
Überprüfen Sie nun die Konfiguration, indem Sie versuchen, sich als Root-Konto anzumelden. Sie erhalten den Fehler SSH-Berechtigung verweigert (siehe Abbildung).
# ssh [email protected]
Es gibt Szenarien, in denen Sie nach einer bestimmten Zeit der Inaktivität möglicherweise alle Remote-SSH-Verbindungen automatisch zu Ihrem Server trennen möchten.
Schritt 7: Konfigurieren Sie die Firewall unter CentOS 8
Im CentOS / RHEL 8ist die Standard-Firewall Firewalld, die verwendet wird, um zu verwalten iptables Regeln auf dem Server. Zum Aktivieren und Starten des Firewalld Führen Sie auf dem Server die folgenden Befehle aus.
# systemctl enable firewalld # systemctl start firewalld # systemctl status firewalld
So öffnen Sie eine eingehende Verbindung zu einem bestimmten Dienst (SSH) müssen Sie zunächst überprüfen, ob der Dienst in der vorhanden ist Firewalld Regeln und fügen Sie dann die Regel für den Dienst hinzu, indem Sie hinzufügen --permanent
Wechseln Sie wie gezeigt zu den Befehlen.
# firewall-cmd --add-service=[tab] #List services # firewall-cmd --add-service=ssh # firewall-cmd --add-service=ssh --permanent
Wenn Sie eingehende Verbindungen zu anderen Netzwerkdiensten wie HTTP oder SMTP öffnen möchten, fügen Sie einfach die angegebenen Regeln hinzu, indem Sie den Dienstnamen angeben.
# firewall-cmd --permanent --add-service=http # firewall-cmd --permanent --add-service=https # firewall-cmd --permanent --add-service=smtp
Führen Sie den folgenden Befehl aus, um alle Firewall-Regeln auf dem Server anzuzeigen.
# firewall-cmd --permanent --list-all
Schritt 8: Entfernen Sie unerwünschte Dienste in CentOS 8
Es wird dringend empfohlen, nach der Installation eines neuen CentOS / RHEL 8 Server müssen Sie unerwünschte Dienste entfernen und deaktivieren, die standardmäßig auf dem Server ausgeführt werden, um die Angriffe auf den Server zu reduzieren.
Zum Auflisten aller laufenden Netzwerkdienste einschließlich TCP und UDP Führen Sie auf dem Server den Befehl ss oder netstat aus, wie im folgenden Beispiel dargestellt.
# ss -tulpn OR # netstat -tulpn
Mit den obigen Befehlen werden einige interessante Dienste aufgelistet, die standardmäßig auf dem Server ausgeführt werden, z Postfix Mail-Server. Wenn Sie nicht vorhaben, das Mailsystem auf dem Server zu hosten, müssen Sie es wie gezeigt stoppen und aus dem System entfernen.
# systemctl stop postfix # systemctl disable postfix # dnf remove postfix
Neben dem Befehl ss und dem Befehl netstat können Sie auch ps, top oder ausführen pstree Befehle zum Erkennen und Identifizieren aller unerwünschten Dienste und zum Entfernen aus dem System.
# dnf install psmisc # pstree -p
Schritt 9: Verwalten von Diensten in CentOS 8
Im CentOS / RHEL 8Alle Dienste und Dämonen werden über einen systemctl-Befehl verwaltet. Mit diesem Befehl können Sie alle aktiven, laufenden, beendeten oder fehlgeschlagenen Dienste auflisten.
# systemctl list-units
Geben Sie den folgenden Befehl ein, um zu überprüfen, ob ein Dämon oder Dienst beim Systemstart automatisch aktiviert wird.
# systemctl list-unit-files -t service
Mehr darüber lernen systemctl BefehlLesen Sie unseren Artikel, in dem erläutert wird, wie Sie Dienste mit ‘Systemctl’ unter Linux verwalten.
Das ist alles! In diesem Artikel haben wir einige grundlegende Einstellungen und Befehle erläutert, die jeder Linux-Systemadministrator kennen und auf eine neu installierte Version anwenden muss CentOS / RHEL 8 System oder um tägliche Aufgaben auf dem System auszuführen.