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

So sichern Sie Rocky Linux 8

Sicherheit ist ein wesentlicher Aspekt für jeden Server, den Sie in eine Produktionsumgebung einführen. Die neueste Version von Rocky Linux 8 kommt mit robusten Sicherheitsfunktionen. Allerdings sind nicht alle von ihnen standardmäßig aktiv oder richtig konfiguriert, sodass eine Neuinstallation immer anfällig für Hacks und Einbruchsangriffe ist.

In diesem Leitfaden werfen wir einen Blick auf einige wichtige Aufgaben, die auf dem Server für die Ersteinrichtung und grundlegende Serverhärtung durchgeführt werden müssen.

Voraussetzungen

  • Ein frischer Rocky Linux 8 Server auf der Atlantic.Net Cloud Platform
  • Ein auf Ihrem Server konfiguriertes Root-Passwort

Schritt 1 – Aktualisieren Sie Ihren Server

Melden Sie sich vor dem Start bei Ihrem Rocky Linux 8-Server über SSH oder die VNC-Konsole an, die Sie hier finden:https://cloud.atlantic.net/

Nach der Anmeldung müssen Sie die neuesten Sicherheitspatches und Updates auf Ihrem Server installieren. Führen Sie den folgenden Befehl aus, um sie zu aktualisieren.

dnf update -y

Atlantic.Net-Server werden als Minimalinstallationen eingerichtet, um zu vermeiden, dass unnötige Pakete installiert und ungenutzt bleiben. Sie können einige grundlegende Softwarepakete installieren, indem Sie den folgenden Befehl ausführen:

dnf install wget git curl bind-utils tree net-tools -y

Schritt 2 – Ändern Sie das Standard-Root-Passwort

Wenn Sie einen neuen Server starten, werden Ihre Server automatisch mit sicheren Passwörtern versehen. Es wird jedoch empfohlen, Ihr Root-Passwort danach alle 60-90 Tage zu ändern, um sicherzustellen, dass es sicher bleibt. Sie sollten ein Root-Passwort mit mindestens 8 Zeichen erstellen, einschließlich Kleinbuchstaben, Großbuchstaben und Zahlen.

Sie können das Root-Passwort mit dem folgenden Befehl ändern:

passwd root

Schritt 3 – Erstellen Sie einen neuen Benutzer mit sudo-Berechtigungen

Erstellen Sie zunächst einen neuen Benutzer mit dem folgenden Befehl:

adduser user1

Legen Sie als Nächstes das Passwort user1 mit dem folgenden Befehl fest:

passwd user1

Nachdem Sie einen neuen Benutzer erstellt haben, müssen Sie diesen Benutzer zur Gruppe sudo wheel hinzufügen. Sobald Sie sie in Rocky Linux 8 zur sudo-Wheel-Gruppe hinzugefügt haben, werden ihnen automatisch sudo/root-Berechtigungen zugewiesen.

Führen Sie den folgenden Befehl aus, um den Benutzer zur sudo-Wheel-Gruppe hinzuzufügen.

usermod -aG wheel user1

Nachdem Sie den Benutzer mit sudo/root-Berechtigungen erstellt haben, melden Sie sich mit dem folgenden Befehl bei user1 an:

su - user1

Führen Sie nach der Anmeldung den folgenden Befehl mit sudo aus:

sudo dnf update -y

Sie werden aufgefordert, das user1-Passwort einzugeben, um Ihr System zu aktualisieren.

Dadurch wird bestätigt, dass Ihr sudo-Benutzer wie erwartet funktioniert.

Schritt 4 – Root-Anmeldung über SSH deaktivieren

Wir haben bereits einen Admin-Benutzer mit sudo/root-Berechtigungen erstellt, um alle Aufgaben auszuführen. Sie müssen den Root-Benutzer nicht über SSH auf Ihrem Server verfügbar und angreifbar halten, daher müssen Sie die Root-Anmeldung über SSH deaktivieren.

Bearbeiten Sie die SSH-Hauptkonfigurationsdatei mit dem folgenden Befehl:

sudo nano /etc/ssh/sshd_config

Suchen Sie die folgende Zeile:

PermitRootLogin yes

Ändern Sie es in die folgende Zeile:

PermitRootLogin no

Speichern und schließen Sie die Datei und starten Sie dann den SSH-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart sshd

Schritt 5 – SSH-Standardport ändern

Um den SSH-Port zu ändern, bearbeiten Sie die SSH-Hauptkonfigurationsdatei:

sudo nano /etc/ssh/sshd_config

Suchen Sie die folgende Zeile:

#Port 22

Ändern Sie es in die folgenden Zeilen:

Port 2020

Speichern und schließen Sie die Datei und starten Sie dann den SSH-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart sshd

Sie können sich jetzt mit dem folgenden Befehl per SSH bei Ihrem Atlantic-Server anmelden:

ssh [email protected] -p 2020

Schritt 6 – Konfigurieren Sie eine Firewall

firewall-cmd --state

Sie sollten sehen, dass die Firewall nicht läuft:

not running

Es wird empfohlen, die Firewall zu aktivieren und die erforderlichen Ports für den externen Zugriff zuzulassen.

Aktivieren Sie zuerst den Dienst firewalld mit dem folgenden Befehl:

systemctl start firewalld
systemctl enable firewalld

Lassen Sie als Nächstes den SSH-Port 2020 mit dem folgenden Befehl durch die Firewall:

sudo firewall-cmd --permanent --add-port=2020/tcp

Laden Sie als Nächstes den Dienst firewalld neu, um die Änderungen zu übernehmen:

sudo firewall-cmd --reload

Sie können nun die hinzugefügten Ports mit dem folgenden Befehl überprüfen:

sudo firewall-cmd --list-ports

Sie sollten die folgende Ausgabe sehen:

2020/tcp

Wenn auf Ihrem Server ein Webserver installiert ist und ausgeführt wird, müssen Sie möglicherweise den HTTP- und HTTPS-Dienst durch die Firewall zulassen, um über das Internet darauf zugreifen zu können.

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

Führen Sie den folgenden Befehl aus, um POP3-, IMAP- und SMTP-Dienste für den externen Zugriff zuzulassen:

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

Schritt 7 – Installieren Sie NTP für die Zeitsynchronisierung

Es wird auch empfohlen, einen NTP-Server zu installieren, um die Uhrzeit und das Datum von Computern über das Netzwerk zu synchronisieren, um sie genau und aktuell zu halten.

Installieren Sie zuerst den NTP-Server mit dem folgenden Befehl:

sudo dnf install chrony -y

Sobald der NTP-Dienst installiert ist, starten Sie ihn und aktivieren Sie ihn so, dass er beim Systemneustart gestartet wird:

sudo systemctl start chronyd
sudo systemctl enable chronyd

Jetzt ist Ihr NTP-Server installiert und aktualisiert die Zeit des Servers ständig vom NTP-Server.

Schritt 8 – IPv6 deaktivieren

Wenn Sie IPv6 nicht verwenden, wird empfohlen, es aus Sicherheitsgründen zu deaktivieren.

Überprüfen Sie zunächst mit dem folgenden Befehl, ob IPv6 auf Ihrer Rocky Linux 8-Installation aktiviert ist:

ip a | grep inet6

Sie sollten die folgenden Zeilen sehen, wenn IPv6 aktiviert ist:

    inet6 ::1/128 scope host 
    inet6 fe80::200:d8ff:fe62:817/64 scope link 
    inet6 fe80::200:aff:fe62:817/64 scope link

Sie müssen eine neue Konfigurationsdatei erstellen, um IPv6 zu deaktivieren:

sudo nano /etc/sysctl.d/70-ipv6.conf

Fügen Sie die folgenden Zeilen hinzu:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Speichern und schließen Sie die Datei und laden Sie dann die Konfigurationsdatei mit dem folgenden Befehl neu:

sudo sysctl --load /etc/sysctl.d/70-ipv6.conf

Sie sollten die folgende Ausgabe sehen:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob IPv6 deaktiviert ist:

ip a | grep inet6

Wenn der Befehl nichts zurückgibt, haben Sie bestätigt, dass IPv6 auf allen Ihren Netzwerkschnittstellen deaktiviert wurde.

Schritt 9 – Erstellen Sie einen Swap Space

Ein Swap ist ein Speicherplatz auf einer Festplatte, der verwendet wird, wenn der physische RAM-Speicher voll ist. Wenn Ihrem Server der RAM ausgeht, werden alle inaktiven Seiten aus dem RAM in den Auslagerungsbereich verschoben.

Wenn Sie eine neue Instanz auf Atlantic.Net starten, wird keine Swap-Partition erstellt. Sie müssen einen Auslagerungsbereich manuell erstellen, nachdem Sie die neue Instanz gestartet haben.

Im Allgemeinen sollte der Auslagerungsspeicher die Hälfte Ihres vorhandenen Arbeitsspeichers betragen. Wenn Sie über 1 GB RAM verfügen, müssen Sie eine 512 MB große Datei erstellen.

Erstellen Sie zunächst einen Auslagerungsbereich (von 512 MB) mit dem folgenden Befehl:

sudo dd if=/dev/zero of=/swapfile bs=1024 count=524288

Ausgabe:

524288+0 records in
524288+0 records out
536870912 bytes (537 MB, 512 MiB) copied, 10.3523 s, 51.9 MB/s

Sie können die Blockgröße mit der Formel 1024 x 512 MB =524288 berechnen.

Nachdem Sie den Auslagerungsbereich erstellt haben, formatieren Sie ihn mit dem folgenden Befehl:

sudo mkswap /swapfile

Ausgabe:

mkswap: /swapfile: insecure permissions 0644, 0600 suggested.
Setting up swapspace version 1, size = 512 MiB (536866816 bytes)
no label, UUID=8981408a-549d-47aa-a99a-72870b65212d

Legen Sie als Nächstes mit dem folgenden Befehl die richtigen Berechtigungen für die /swapfile fest:

sudo chown root:root /swapfile
sudo chmod 0600 /swapfile

Aktivieren Sie als Nächstes den Auslagerungsbereich mit dem folgenden Befehl:

sudo swapon /swapfile

Überprüfen Sie als Nächstes den Auslagerungsbereich mit dem folgenden Befehl:

swapon -s

Ausgabe:

Filename				Type		Size	Used	Priority
/swapfile                              	file    	524284	0	-2

Als nächstes müssen Sie den Eintrag für die Auslagerungsdatei zur /etc/fstab hinzufügen, damit er auch nach einem Neustart aktiv bleibt.

nano /etc/fstab

Fügen Sie die folgende Zeile hinzu:

/swapfile              swap   swap     defaults     0 0

Speichern und schließen Sie die Datei und überprüfen Sie dann den Auslagerungsbereich mit dem folgenden Befehl:

free -m

Sie sollten die folgende Ausgabe sehen:

              total        used        free      shared  buff/cache   available
Mem:           1817         263         100          68        1452        1329
Swap:           511           0         511

Schlussfolgerung

In der obigen Anleitung haben wir einige grundlegende Schritte zum Sichern Ihres Rocky Linux 8-Servers erklärt. Sie können jetzt damit fortfahren, jede Anwendung in der gesicherten Umgebung zu hosten – probieren Sie es auf Ihrem VPS-Hosting-Konto von Atlantic.Net aus!


Linux
  1. So installieren Sie MariaDB 10.6 auf Rocky Linux 8

  2. So installieren Sie Docker unter Rocky Linux 8

  3. So installieren Sie Gulp.js unter Rocky Linux 8

  4. So erstellen Sie einen Sudo-Benutzer in Rocky Linux 8

  5. So installieren Sie MariaDB unter Rocky Linux 8

So installieren Sie MongoDB auf Rocky Linux 8

So installieren Sie PostgreSQL unter Rocky Linux 8

So installieren Sie Cacti unter Rocky Linux 8

So installieren Sie Joomla auf Rocky Linux 8

So installieren Sie Fail2ban unter Rocky Linux 8

So installieren Sie ImageMagick unter Rocky Linux 8