Wie man einen Linux-Heimserver sichert

Sicherer Linux-Heimserver Featured

Es gibt viele Gründe, einen Heimserver einzurichten. Sie könnten ihn als Medienserver, Dateiserver oder sogar als lokalen Backup-Server verwenden. Grundsätzlich sind alle Ihre Dateien, die nicht online sein müssen, gute Kandidaten für einen Heimserver. Einen Linux-basierten Heimserver einzurichten, ist relativ einfach, besonders heutzutage. Das Sicherheitsmanagement dieses Servers ist jedoch eine ganz andere Geschichte. Sicherheit kann so knifflig sein, wie sie wichtig ist.

Außerdem lesen: Was ist Log4Shell und wie kann man sein Linux-System dagegen schützen

Installieren Sie nur, was Sie unbedingt benötigen

Eine der einfachsten Methoden, um Ihren Heimserver sicher zu halten, ist, von Anfang an an die Sicherheit zu denken. Das beginnt mit der Installation. Sind Sie sich nicht sicher, ob Sie eine Anwendung oder einen Dienst benötigen? Installieren Sie ihn nicht. Sie können ihn später immer noch installieren.

Wenn Sie Linux schon ein paar Mal installiert haben, ist es sogar noch einfacher. Anstatt bei den Standardeinstellungen zu bleiben, verwenden Sie die Modi, die Ihnen die meiste Kontrolle über die Installation geben. Manchmal werden diese als „Expertenmodus“ oder ähnlich bezeichnet.

Eine sorgfältige Überwachung der Installationsoptionen kann Ihnen später Zeit sparen, indem Sie Dienste aus Sicherheitsgründen deaktivieren.

Konfigurieren Sie sudo

Bevor Sie zu weiteren Schritten übergehen, müssen Sie sudo konfigurieren. Warum? Weil Sie nach Abschluss hier über SSH auf Ihren Server zugreifen werden und Sie sich nicht als Root-Benutzer anmelden können. Um weitere Änderungen an Ihrem System vorzunehmen, müssen Sie sudo verwenden.

Zuerst überprüfen Sie, ob Sie bereits sudo verwenden können. Führen Sie von Ihrem Benutzerkonto aus den folgenden Befehl mit Ihrem Benutzernamen anstelle von USERNAME aus:

sudo -lU USERNAME

Wenn Sie eine Nachricht sehen, die besagt, dass Ihr Benutzername „(ALL) ALL“ ausführen kann oder etwas Ähnliches, sind Sie bereit, fortzufahren.

Jetzt führen Sie als Root-Benutzer Ihres Servers Folgendes aus, um die Datei „/etc/sudoers“ zu bearbeiten. Verwenden Sie, wenn Sie einen anderen Editor bevorzugen, diesen anstelle von nano.

EDITOR=nano visudo

Bearbeiten Sie die Datei, um Folgendes einzufügen, wobei Sie Ihren Benutzernamen anstelle von USERNAME verwenden:

USERNAME   ALL=(ALL) ALL

Außerdem lesen: So verwenden Sie den Nessus-Schwachstellenscanner unter Linux

SSH konfigurieren

Sicherer Linux-Heimserver Openssh

Möglicherweise haben Sie SSH bereits auf Ihrem Heimserver aktiviert. Wahrscheinlich tun Sie das, da dies normalerweise der Weg ist, wie Sie mit einem Server interagieren.

Zuerst stellen Sie sicher, dass OpenSSH installiert ist. Wenn Sie eine andere Distribution verwenden, variiert Ihr Befehl, aber der Paketname sollte recht konstant sein. Unter Ubuntu führen Sie Folgendes aus:

sudo apt install openssh-server

Die Verwendung von schlüsselloser Authentifizierung ist viel sicherer als die Authentifizierung via Passwort, also werden wir SSH so einrichten, dass es so funktioniert. Dazu stellen Sie sicher, dass Sie auf einem Client arbeiten, mit dem Sie sich mit dem Server verbinden möchten, nicht auf dem Server selbst. Zuerst möchten Sie sicherstellen, dass Sie bereits keine SSH-Schlüssel haben:

ls ~/.ssh/

Wenn Sie „id_rsa“ und „id_rsa.pub“ unter den aufgelisteten Dateinamen sehen, haben Sie bereits SSH-Schlüssel. Überspringen Sie diesen nächsten Schritt.

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Nun kopieren Sie den SSH-Schlüssel auf Ihren Server:

ssh-copy-id USERNAME@SERVER

Für einen Heimserver verwenden Sie wahrscheinlich eine IP-Adresse für Ihren Server anstelle eines Namens. Wenn Sie Ihren Servernamen nicht wissen, verwenden Sie Ihre IP-Adresse anstelle von SERVER oben.

Nun bearbeiten wir Ihre SSH-Einstellungen, um sie weiter abzusichern. Melden Sie sich vom Client an, auf dem Sie die Schlüssel erstellt haben. Dies ermöglicht es Ihnen, sich nach diesem Schritt erneut anzumelden. Führen Sie Folgendes aus, wobei Sie nano durch den Editor Ihrer Wahl ersetzen.

sudo nano /etc/ssh/sshd_config

Bearbeiten Sie die Datei und fügen Sie die folgenden Einstellungen hinzu. Diese werden an verschiedenen Stellen in der Datei zu finden sein. Stellen Sie sicher, dass es keine Duplikate gibt, da nur die erste Instanz einer Einstellung befolgt wird.

ChallengeResponseAuthentication no  
PasswordAuthentication no  
UsePAM no  
PermitRootLogin no

Jetzt müssen Sie den SSH-Server mit einem der folgenden Befehle neu starten.

Unter Ubuntu führen Sie aus:

sudo systemctl restart ssh

Außerdem lesen: SELinux vs AppArmor: Was sind die Unterschiede und welche sollten Sie verwenden?

Konfigurieren Sie eine Firewall

Je nach den Diensten, die Sie ausführen, und wie oft Ihr Server mit dem Internet verbunden ist, möchten Sie möglicherweise eine Firewall betreiben. Es gibt einige Optionen dafür, aber die bewährte Methode unter Linux ist iptables.

Die Einrichtung von iptables geht über den Rahmen dieses Artikels hinaus, aber keine Sorge. Wir haben einen vollständigen Leitfaden zur Konfiguration von iptables auf Ihrer Maschine.

Eine einfachere Möglichkeit, eine Firewall einzurichten, ist die Verwendung von ufw. Sie können es mit folgendem Befehl installieren:

sudo apt install ufw

Standardmäßig werden alle Ports blockiert. Um den Online- und SSH-Zugriff zu aktivieren, führen Sie die folgenden ufw-Befehle aus, um die Ports 80, 443 und 22 zu öffnen:

sudo ufw allow 80  
sudo ufw allow 443  
sudo ufw allow 22

Und schließlich aktivieren Sie den ufw-Dienst:

sudo ufw enable

Immer auf dem neuesten Stand bleiben

Sicherer Linux-Heimserver Installation

Server können leicht vergessen werden, wenn sie einfach funktionieren, aber das kann gefährlich sein. Achten Sie darauf, Ihre Software auf dem neuesten Stand zu halten. Sie können unbeaufsichtigte Upgrades verwenden, aber diese können unberechenbar sein. Der sicherste Weg ist, einen regelmäßigen wöchentlichen oder monatlichen Wartungstermin für den Server einzuplanen, um sicherzustellen, dass alles in Ordnung ist.

Außerdem lesen: Die besten Open-Source-Tools zum Sichern Ihres Linux-Servers

Wohin geht es von hier aus?

Jetzt haben Sie einen guten Start, um Ihren Server vor externen Bedrohungen zu schützen. Was ist jedoch, wenn Sie von zu Hause aus auf Ihren Server zugreifen müssen? Jede Tür, die Sie öffnen, könnte potenziell von einem Angreifer genutzt werden, und jeder offene Port erhöht Ihre Verletzlichkeit.

Eine der einfachsten Möglichkeiten, auf Ihr Heimnetzwerk von außen zuzugreifen, besteht darin, ein VPN zu verwenden, das den Rahmen dieses Artikels sprengt, aber keine Sorge, wir haben Sie abgedeckt. Werfen Sie einen Blick auf unsere Liste der besten sicheren VPN-Dienste, um eine Vorstellung von Ihren Optionen zu bekommen.