Bild mit dem Schriftzug: Proxmox Härten und Sichern

Proxmox Ab-Härtung: SSH-Keys auf Windows erstellen

Proxmox ist eine beliebte Virtualisierungsplattform, und Sicherheit sollte immer an erster Stelle stehen. Eine der besten Methoden, den Zugriff auf Ihre Proxmox-Server abzusichern, ist die Verwendung von SSH-Keys. In diesem Artikel zeige ich Ihnen, wie Sie SSH-Keys unter Windows erstellen und diese dann in Proxmox verwenden.

Zunächst zeige ich Ihnen, wie Sie SSH-Keys direkt in der PowerShell erstellen können, und anschließend schauen wir uns an, wie dies mit PuTTYgen funktioniert.

Achtung

Achtung. Keine Garantie auf Vollständigkeit. Eingriffe an Linux-Servern, können bei Unachtsamkeit oder Fehlern zu einem Datenverlust führen. Auch kann man sich aussperren, wenn man die Firewall, Ports, Netzwerke oder Konfigurationen falsch einstellt. Wenn Sie keine Erfahrung mit Linux haben, sollten Sie am besten zunächst die Finger davon lassen und sich erst mal an Linux rantasten. Die unten stehenden Anleitungen sind getestet und Funktionieren. Wenn Sie allerdings etwas nicht richtig machen, dann sperren Sie sich womöglich im Bereich SSH oder Firewall aus!

Linux Befehle nicht einfach blind in die Konsole eingeben. Es ist immer zu Prüfen, welche Linux- und Proxmox-Version verwendet werden. Auch ist die Netzwerk-, IP-, Server- und Umgebungskonfiguration ausschlaggebend, ob und wie die hier angegebenen Tipps angewendet werden können. Es sollte sich auch mit jedem Punkt einzeln und intensiv befasst werden. Man kann nicht einfach alles "abarbeiten" und dann läuft es. Proxmox abzusichern braucht Zeit und muss mit äußerster Vorsicht vonstatten gehen. Außerdem ist die Sicherheit von Servern ein dauernder Prozess. Alles einrichten und die Kellertür zuknallen, ist nicht. 

SSH-Keys auf Windows erstellen und in Proxmox installieren

Öffnen Sie die PowerShell (nicht als Administrator), sodass Sie sich in Ihrem Home-Ordner befinden. Erstellen Sie, falls noch nicht vorhanden, den Ordner .ssh mit folgendem Befehl:


              
            

Sollte der Ordner .ssh schon in Ihrem Benutzerordner vorhanden sein, Machen Sie einfach hier weiter.  Bleiben Sie in der PowerShell und erzeugen Sie den SSH-Key mit dem folgenen Befehl:


              
            

Kopieren Sie den neuen Key auf den Server. Zeigen Sie zunächst den Key in der PowerShell an:


              
            

Markieren Sie den Key mit der Maus und drücken Sie STRG + C, um den Key in die Zwischenablage zu kopieren. Melden Sie sich anschließend auf dem Proxmox-Server als root an. Loggen Sie sich in die GUI ein, navigieren Sie zu "Datacenter", dann zu "Knoten" und schließlich zur Shell. Wechseln Sie in das Verzeichnis:


              
            

Im Ordner .ssh auf dem Proxmox-Server (als root angemeldet) finden Sie die Datei authorized_keys. Öffnen Sie die Datei authorized_keys:


              
            

Fügen Sie den Key aus der Zwischenablage in die Datei ein. Speichern Sie die Datei mit STRG + O, bestätigen Sie mit Enter, und schließen Sie sie mit STRG + X. Starten Sie anschließend den SSH-Dienst mit systemctl restart sshd neu.


              
            

Öffnen Sie die Datei sshd_config in Nano:


              
            

Kostenlose IT-Sicherheits-Bücher - Information via Newsletter

Bleiben Sie informiert, wann es meine Bücher kostenlos in einer Aktion gibt: Mit meinem Newsletter erfahren Sie viermal im Jahr von Aktionen auf Amazon und anderen Plattformen, bei denen meine IT-Sicherheits-Bücher gratis erhältlich sind. Sie verpassen keine Gelegenheit und erhalten zusätzlich hilfreiche Tipps zur IT-Sicherheit. Der Newsletter ist kostenlos und unverbindlich – einfach abonnieren und profitieren!

Hinweis: Wenn Sie auf den Button klicken, werden Sie zu MailerLite weitergeleitet. Dort werden essentielle Cookies zur Sicherung der Funktion des Newsletterformulares gespeichert. Mit Ihrem Klick erteilen Sie das Einverständnis zur Verwendung dieser Cookies.

Zur Anmeldung

Stellen Sie sicher, dass in der Datei /etc/ssh/sshd_config die Anmeldung per SSH-Key aktiviert ist. Öffnen Sie die Datei und suchen Sie die Zeile mit PubkeyAuthentication. Entfernen Sie das Rautezeichen am Anfang der Zeile, falls vorhanden, und stellen Sie sicher, dass die Zeile wie folgt aussieht:


              
            

Speichern Sie die Datei und starten Sie den SSH-Dienst neu.


              
            

Bleiben Sie in der PowerSehll und testen Sie den Login mit Ihrem SSH-Schlüssel, bei mir spreche ich den Port 2222 an, weil ich über eine pfSense-Firtewall den Port umleite, sollte bei Ihnen der Port 22 lauschen, verwenden Sie 22:


              
            

Wenn der Login erfolgreich funktioniert, sollten Sie den privaten Schlüssel sicher aufbewahren. Dieser Schlüssel ermöglicht den Zugriff auf Ihren Server, daher ist es wichtig, ihn gut zu schützen. Speichern Sie ihn beispielsweise in einem Passwortmanager wie KeePass oder auf einem verschlüsselten Datenträger.

Um die Sicherheit zusätzlich zu erhöhen, deaktivieren Sie den Passwort-Login für den Benutzer root. Öffnen Sie dazu die Datei sshd_config auf dem Proxmox-Server:


              
            

              
            

Speichern Sie die Datei und starten Sie den SSH-Dienst neu:


              
            

Achtung: Es ist sinnvoll, eine separate sshd_config-Datei zu verwenden, da die Originaldatei bei einem SSH-Server-Update überschrieben werden könnte. Erstellen Sie eine weiter sshd_config: 


              
            

Da ich mich hier in dieser Einstellung hinter der pfSense-Firewall befinde, ist der Port auch bei mir 22. In meiner Datei habe ich folgende Werte eingetragen:


              
            

Testen Sie danach die neue Konfig. Wenn keine Fehler ausgegeben werden ist sie in Ordnung:


              
            

              
            

Proxmox VE 8 Praxisbuch

Informationen, Tipps und Tricks für Proxmox-Einsteiger und Fortgeschrittene - umfassend überarbeitete Ausgabe 4 mit 450 Seiten Proxmox-Wissen

Buch auf Amazon

NEU

Proxmox Fachbuch von Ralf-Peter Kleinert Auflage 3

SSH-Key Schlüsseldatei für Putty in Windows konvertieren

Damit ist es nicht mehr möglich, sich als root mit einem Passwort einzuloggen. Der Zugriff erfolgt jetzt ausschließlich über den SSH-Schlüssel.

Falls Sie den Schlüssel in PuTTY nutzen möchten, müssen Sie ihn tatsächlich in das PuTTY-eigene Format (.ppk) konvertieren. Dafür benötigen Sie das Tool PuTTYgen, das normalerweise zusammen mit PuTTY bereitgestellt wird. Öffnen Sie PuTTYgen, laden Sie Ihren bestehenden privaten Schlüssel und speichern Sie ihn im .ppk-Format. Dieses Format wird von PuTTY für die Authentifizierung benötigt.

Mit dieser Datei können Sie sich über PuTTY auf den Server verbinden. Achten Sie weiterhin darauf, Ihren Schlüssel sicher zu speichern und regelmäßig zu sichern. So bleibt Ihr Zugriff zuverlässig und geschützt.

Erklärungen der Befehle

New-Item -ItemType Directory -Path $HOME.ssh

Mit diesem Befehl erstellen Sie ein neues Verzeichnis im Home-Ordner, in dem die SSH-Schlüssel gespeichert werden. Dieser Schritt ist wichtig, falls das Verzeichnis .ssh noch nicht existiert.

ssh-keygen -t rsa -b 4096 -f $HOME.ssh\proxmox

Mit diesem Befehl generieren Sie ein neues Schlüsselpaar für die SSH-Authentifizierung. Der Parameter -t rsa legt den RSA-Algorithmus fest, und -b 4096 definiert die Schlüssellänge auf 4096 Bit. Der Schalter -f gibt den Speicherort und Namen der Dateien an. Der private Schlüssel wird unter $HOME\.ssh\proxmox gespeichert, der öffentliche unter $HOME\.ssh\proxmox.pub.

Get-Content $HOME.ssh\proxmox.pub

Dieser Befehl zeigt den Inhalt des öffentlichen Schlüssels an. Markieren Sie den Text, kopieren Sie ihn mit STRG + C und speichern Sie ihn für die spätere Nutzung in die Zwischenablage.

ssh -i $HOME.ssh\proxmox -p 22 root@23 Ihre IP Adresse

Dieser Befehl stellt eine Verbindung zum Proxmox-Server her. Der Parameter -i gibt den privaten Schlüssel an, -p 22 legt den Standard-SSH-Port fest, und root@23 Ihre IP Adresse definiert den Benutzer und die Ziel-IP-Adresse.

nano /etc/ssh/sshd_config

Mit diesem Befehl öffnen Sie die Konfigurationsdatei des SSH-Daemons auf dem Server. In dieser Datei können Sie sicherstellen, dass PubkeyAuthentication yes aktiviert ist und der Passwort-Login für root mit PermitRootLogin prohibit-password deaktiviert wird.

systemctl restart sshd

Nach Änderungen in der Datei sshd_config starten Sie den SSH-Dienst neu, um die Konfiguration wirksam zu machen.

puttygen $HOME.ssh\proxmox -o $HOME.ssh\proxmox.ppk

Dieser Befehl konvertiert den privaten Schlüssel in das PuTTY-Format .ppk, das für die Verwendung mit PuTTY erforderlich ist. Die konvertierte Datei wird unter $HOME\.ssh\proxmox.ppk gespeichert.

Proxmox Tutorial - Teil 4 - SSH-Keys auf Linux und Windows erstellen

In dem Video erfahren Sie, wie Sie einfach und sicher SSH-Keys auf einem Linux- oder Windows-System erzeugen und sicher auf einem Proxmox-VE-Server installieren können.

Ralf-Peter Kleinert - Buchautor für IT-Sichereit, Computersicherheit und Cybersecurity

Über den Autor: Ralf-Peter Kleinert

Über 30 Jahre Erfahrung in der IT legen meinen Fokus auf die Computer- und IT-Sicherheit. Auf meiner Website biete ich detaillierte Informationen zu aktuellen IT-Themen. Mein Ziel ist es, komplexe Konzepte verständlich zu vermitteln und meine Leserinnen und Leser für die Herausforderungen und Lösungen in der IT-Sicherheit zu sensibilisieren.

Mehr über mich, Ausbildung, Zertifizierungen

Meine Amazon Autorenseite

Aktualisiert: Ralf-Peter Kleinert 29.12.2024