Zum Inhalt springen

AS213941 · Peering-20 % auf alle VPS mit dem Code NVH20 · Lieferung innerhalb von 60 Sekunden

Linux-VPSAb 2,49 € pro MonatWindows-VPSAb 3,49 € pro MonatFiveM-ServerAb 0,99 € pro MonatMinecraft-ServerAb 1,99 € pro Monat
VPS & Cloud

Sortimente

Linux-VPS mit NVMeRoot-Zugriff, Debian, Ubuntu, Alma…Windows-VPS mit RDPRemote-Desktop, inklusive LizenzDedizierte ServerIntel Xeon Gold, exklusive RessourcenVPS PterodactylVorinstallierte Spielesammlung

Netzwerk und Hosting

Anti-DDoSWebhostingWohnungswesenIP-TransitVPN

Fachleute

VPS für ResellerHändlerprogramm
Lösungen

Bots und Automatisierung

VPS-KI-AgentenEin Server für Ihre Code-Assistenten und autonomen AgentenVPS OllamaIhre private KI ohne GPU, Daten in FrankreichTelegram-Bot auf einem VPSPython oder Node.js – jederzeit erreichbarVPS-Bot für DiscordMusik, Moderation, Eintrittskarten: ohne UnterbrechungVPS-Bot für VintedDiscord-Überwachung und Benachrichtigungen rund um die UhrVPS n8nWorkflows ohne Begrenzung der AusführungsanzahlVPS VPNEin verschlüsselter Tunnel, der nach Frankreich führtWeb-Scraping auf einem VPSGeplante Datenerfassung, dedizierte IP-Adresse

Handel

VPS ForexIhre Roboter verwalten die Positionen während der NachtVPS MetaTrader 4Mehrere MT4-Terminals auf einem RechnerVPS MetaTrader 5Devisen, Indizes und Aktien in MT5NinjaTrader-VPSFutures und NinjaScript-StrategienVPS-Prop-FirmaChallenges und finanzierte Konten, Terminal stets onlineVPS Trading AfrikaMetaTrader in Paris, vom Maghreb oder aus Westafrika ausVPS RDPWindows-Remote-Desktop, stets aktivVPS-HandelsbotOpen-Source-Krypto-Bots, geschützte API-Schlüssel

Windows-Desktop

Windows 10-VPSFür Ihre Software, die Windows 10 erfordertWindows 11-VPSDer moderne Windows-Arbeitsplatz, von überall aus zugänglichVPS SEOGroße Websites crawlen, ohne Ihren PC zu überlastenVPS-StreamingEin OBS-Studio, das vom Rechenzentrum aus sendetWordPress-VPSSchnelle Websites auf NVMe-Festplatten
Marktplatz

Künstliche Intelligenz

OllamaLokale Sprachmodelle ohne externe APIOpen WebUIEine Chat-Oberfläche für Ihre Ollama-ModelleAnythingLLMPersönlicher KI-Assistent für Ihre Dokumente (PDFs, Websites, Notizen): Arbeitsbereiche, Suche …LangflowDer visuelle Editor „Langflow“ zum Erstellen von Agenten, RAG-Abläufen und KI-APIs, geschützt durch Ihre…FlowiseErstellen Sie Ihre Agenten und KI-Chatbots (LangChain, RAG, Tools) visuell mit Flowise, Ihrem…QdrantDie Vektordatenbank Qdrant für Ihre RAG- und semantischen Suchprojekte, API …

Handel

MetaTrader 5Offizielles MetaTrader 5-Terminal (MetaQuotes), im portablen Modus installiert, Verknüpfung auf dem…MetaTrader 4Offizielles MetaTrader 4-Terminal (MetaQuotes), im portablen Modus installiert, Verknüpfung auf dem…Forex-VPS-Paket (MT4 + MT5)MetaTrader 4 und MetaTrader 5 gemeinsam installiert, jeweils in einem eigenen portablen Ordner, auf einem VPS…NinjaTrader 8NinjaTrader 8-Plattform mit den entsprechenden Voraussetzungen (.NET 4.8, WebView2): installiert ab dem…FreqtradeOpen-Source-Krypto-Trading-Roboter mit der Benutzeroberfläche FreqUI, installiert im Modus…Interactive Brokers TWS / IB GatewayTrader Workstation oder IB Gateway (für die API und die Handelsroboter) von Interactive Brokers…

Bots und Agenten

Claude CodeDer Code-Agent von Anthropic in Ihrem TerminalCodex CLIDas OpenAI-Befehlszeilen-ToolTelegram-BotHosten Sie Ihren Telegram-Bot (Python, Node.js oder Bun): Ihren Code aus Git oder einer…Discord-BotHosten Sie Ihren Discord-Bot (discord.py, discord.js, Bun…): Ihren Code aus Git oder einer…OpenClawOpenClaw, der rund um die Uhr verfügbare Open-Source-KI-Assistent: Chatten Sie mit ihm auf…Hermes-AgentAutonomer Open-Source-KI-Agent von Nous Research mit Gedächtnis und Fähigkeiten, die…

Bereitstellung und Automatisierung

DockerDie Container-Engine und Docker Composen8nIhre Automatisierungen – ohne Begrenzung der AusführungsanzahlPortainerVerwalten Sie Ihre Docker-Container über den BrowserCoolifyStellen Sie Ihre Anwendungen über Git auf Ihrem Server bereitUptime KumaÜberwachen Sie Ihre Websites und Server, einschließlich Benachrichtigungen

Websites und Datenbanken

WordPressDas am häufigsten verwendete CMS auf einer schnellen Nginx-PlattformApache + PHP + MySQLWebserver, der für das Hosting Ihrer Websites bereit ist: Apache2, PHP und die gängigen PHP-Erweiterungen, MariaDB…MySQL (MariaDB)MySQL-kompatibler MariaDB-Datenbankserver mit Ihrer Datenbank und Ihrem…PleskDas Plesk Obsidian-Hosting-Panel wurde mit den empfohlenen Komponenten installiert: Websites…NextcloudIhre Cloud für Dateien, Kalender und Kontakte

Netzwerk und Sicherheit

WireGuardIhr verschlüsseltes VPN – kostenlos vorinstalliertVaultwardenEin selbst gehosteter Passwortmanager

Spielserver

FiveMFiveM-Server (FXServer + txAdmin), MariaDB und phpMyAdmin sind installiert und konfiguriert, unter…MinecraftSchlüsselfertiger Minecraft-Server für die Java Edition: Paper, Purpur, Fabric, NeoForge, Forge oder…RustRust-Server (Facepunch) mit LinuxGSM: automatische Updates, Neustart nach…Counter-Strike 2Dedizierter Counter-Strike-2-Server mit LinuxGSM (ca. 60 GB zum Herunterladen), GSLT-Token…PalworldPalworld-Dedizierter Server mit LinuxGSM: Name, Passwort, Anzahl der Spieler und Passwort für…ValheimDedizierter Valheim-Server mit LinuxGSM, passwortgeschützt (vom Spiel vorgeschrieben)…
Gaming

Spielserver

FiveM-ServertxAdmin, ESX, QBCoreMinecraft-ServerJava, Bedrock, ModpacksRust-ServerOxid, Kohlenstoff, ReinigungstücherNova-Life-ServerRP Nova-Life: Amboise

Schutz und Hilfsmittel

FiveM-Anti-DDoSKostenlose Tools
Ressourcen

Lernen

DokumentationBlog

Kundendienst

KontaktSLA-Verpflichtung
Angebote anzeigen Kundenbereich Peering · AS213941

Sicherheit

SSH auf einem VPS absichern: Schlüssel, deaktivierter Root-Zugang und Fail2ban

Vom NVHCloud-Team, 18.09.2026, Lesezeit: 4 Min.

Sobald ein Server eine öffentliche IP-Adresse erhält, versuchen Bots, sich über SSH mit Listen gängiger Passwörter damit zu verbinden. Dies ist keine theoretische Bedrohung: Führen Sie folgenden Befehl aus: journalctl -u ssh | grep -c Failed Auf einem seit einigen Tagen online befindlichen VPS beläuft sich die Anzahl der Versuche oft auf mehrere Tausend. Diese Anleitung macht solche Versuche überflüssig.

1. Warum dies als Erstes zu tun ist

Ein Passwort kann erraten, wiederverwendet oder weitergegeben werden. Ein ED25519-SSH-Schlüssel hingegen lässt sich in der Praxis nicht erraten. Durch die Kombination von drei Maßnahmen lässt sich das Risiko weitgehend ausschließen:

  • Authentifizierung ausschließlich per Schlüssel : Passwörter werden überhaupt nicht mehr akzeptiert.
  • Root-Anmeldung nicht zulässig : Ein Angreifer muss zusätzlich einen Benutzernamen erraten.
  • Fail2ban : Adressen, die wiederholt Nachrichten senden, werden automatisch gesperrt.

2. Einen SSH-Schlüssel erstellen und installieren

Auf Ihr Computer :

ssh-keygen -t ed25519 -C "alex@portable"

Wählen Sie eine Passphrase aus: Sollte Ihr Computer gestohlen werden, bleibt der Schlüssel unbrauchbar. Kopieren Sie anschließend den öffentlichen Schlüssel in das Benutzerkonto auf dem Server (das in die ersten Schritte) :

ssh-copy-id alex@IP_SERVEUR

Unter Windows, wo ssh-copy-id nicht vorhanden ist, finden Sie den entsprechenden Befehl in den ersten Schritten auf Ihrem VPS. Bitte überprüfen Sie, ob ssh alex@IP_SERVEUR funktioniert, ohne dass zuvor ein Passwort abgefragt wird, bevor der Vorgang fortgesetzt wird.

3. Die Konfiguration festlegen

Anstatt die Hauptdatei zu ändern /etc/ssh/sshd_config, erstellen Sie eine eigene Datei im Konfigurationsordner: Diese wird bei Updates nicht überschrieben und fasst Ihre Einstellungen an einem Ort zusammen.

cat > /etc/ssh/sshd_config.d/00-durcissement.conf <<'EOF'
PermitRootLogin no
PasswordAuthentication no
KbdInteractiveAuthentication no
PubkeyAuthentication yes
MaxAuthTries 3
LoginGraceTime 30
X11Forwarding no
AllowUsers alex
EOF

AllowUsers Es sind nur die aufgeführten Konten zulässig: Trennen Sie diese durch Leerzeichen, falls Sie mehrere haben. MaxAuthTries unterbricht die Verbindung nach drei Versuchen.

4. Die Tücken von cloud-init

Der Dateiname beginnt mit 00-, und das ist kein Zufall. Für jeden Parameter übernimmt OpenSSH den ersten gelesenen Wert, und die Dateien im Ordner werden in alphabetischer Reihenfolge gelesen. Viele Ubuntu-Images enthalten jedoch eine Datei 50-cloud-init.conf mit PasswordAuthentication yes. Ernannt 99-..., würde Ihre Datei anschließend gelesen und stillschweigend ignoriert werden: Die Passwörter würden weiterhin akzeptiert werden.

ls /etc/ssh/sshd_config.d/

Um zu erfahren, welcher Wert tatsächlich gilt, fragen Sie den SSH-Server direkt ab:

sshd -T | grep -E "permitrootlogin|passwordauthentication|kbdinteractive|allowusers"

5. Den Port ändern (optional)

Das Ändern des Ports 22 schützt Sie nicht vor einem Angreifer, der es auf Sie abgesehen hat; dieser wird den neuen Port innerhalb weniger Sekunden ausfindig machen. Allerdings werden dadurch die meisten automatischen Zugriffsversuche aus den Protokollen entfernt. Wenn Sie dies tun, fügen Sie folgende Zeile hinzu: Port 2222 an die vorherige Datei, und Öffnen Sie zunächst den Port in der Firewall. :

ufw allow 2222/tcp
⚠️ Ubuntu 22.10 und neuere Versionen Starten Sie SSH über die Socket-Aktivierung: Der Listening-Port wird dann von systemd festgelegt, und ein einfacher Neustart des Dienstes reicht nicht aus. Führen Sie nach der Änderung des Ports folgenden Befehl aus: systemctl daemon-reload dann systemctl restart ssh.socket. Unter Debian 12, systemctl restart ssh Das reicht.

6. Anwenden, ohne sich dabei zu blockieren

Bitte überprüfen Sie die Syntax und starten Sie anschließend SSH neu. Bitte melden Sie sich nicht von Ihrer aktuellen Sitzung ab.

sshd -t && systemctl reload ssh

Öffnen Sie ein zweites Terminal und testen Sie Folgendes:

ssh alex@IP_SERVEUR                # doit fonctionner
ssh root@IP_SERVEUR                # doit être refusé
ssh -o PubkeyAuthentication=no alex@IP_SERVEUR   # doit être refusé

Sollte der erste Befehl fehlschlagen, korrigieren Sie ihn bitte in der noch geöffneten Sitzung. Falls Sie den Port geändert haben, fügen Sie Folgendes hinzu: -p 2222 bei jedem Befehl; sobald die Verbindung über den neuen Port bestätigt wurde, entfernen Sie die alte Firewall-Regel mit ufw delete allow OpenSSH.

7. Fail2ban installieren

Fail2ban liest die Protokolle aus und sperrt über die Firewall diejenigen Adressen, bei denen sich fehlgeschlagene Anmeldeversuche häufen. Selbst bei deaktivierten Passwörtern entlastet es das System und reduziert den Umfang der Protokolle.

apt install -y fail2ban
cat > /etc/fail2ban/jail.local <<'EOF'
[DEFAULT]
bantime  = 1h
findtime = 10m
maxretry = 5
banaction = ufw
[sshd]
enabled  = true
backend  = systemd
port     = ssh
maxretry = 3
bantime  = 24h
EOF
systemctl enable --now fail2ban
systemctl restart fail2ban

Falls Sie den Port geändert haben, ersetzen Sie port = ssh von port = 2222. backend = systemd ist unter Debian 12 erforderlich, da dort keine Dateien mehr geschrieben werden /var/log/auth.log standardmäßig; er wird im Abschnitt [sshd] und nicht in [DEFAULT], um die Jails, die später Dateien lesen werden – wie beispielsweise die von Nginx –, nicht zu beeinträchtigen. Um auch Nginx, das E-Mail-System oder WordPress zu schützen, siehe Fail2ban für Fortgeschrittene.

8. Überprüfen

fail2ban-client status sshd
journalctl -u ssh --since "1 hour ago" | tail

Der erste Befehl zeigt die Anzahl der gesperrten Adressen an. Um noch einen Schritt weiter zu gehen, fügen Sie der Verbindung einen zweiten Faktor hinzu: siehe Die Zwei-Faktor-Authentifizierung bei SSH aktivieren. Ergänzen Sie dies durch eine Whitelist-Firewall: UFW konfigurieren.

Häufig gestellte Fragen

Was kann ich tun, wenn ich mich aus meinem VPS ausgesperrt habe?

Nutzen Sie die Notfallkonsole (VNC) im Kundenbereich oder, falls dies nicht möglich ist, wenden Sie sich an den Support: Über diese erhalten Sie Zugriff auf den Server ohne SSH. Löschen oder korrigieren Sie die Datei /etc/ssh/sshd_config.d/00-durcissement.conf und starten Sie anschließend SSH neu. Um diese Situation zu vermeiden, sollten Sie den Vorgang stets von einem zweiten Terminal aus testen.

Warum funktionieren meine SSH-Passwörter weiterhin, obwohl ich „PasswordAuthentication no“ eingestellt habe?

Dies liegt fast immer daran, dass eine andere Datei vor Ihrer eingelesen wird, wie beispielsweise „50-cloud-init.conf“ unter Ubuntu: OpenSSH behält den ersten gefundenen Wert bei. Benennen Sie Ihre Datei mit dem Präfix „00-“ und überprüfen Sie den angewendeten Wert mit dem Befehl „sshd -T“.

RSA-Schlüssel oder ED25519?

ED25519: Die Schlüssel sind kürzer, schneller und gelten als mindestens ebenso sicher wie ein RSA-Schlüssel mit 4096 Bit. RSA ist nur noch für sehr alte Systeme von Nutzen, die ED25519 nicht unterstützen.

Ist Fail2ban sinnvoll, wenn Passwörter deaktiviert sind?

Ja, wenn auch in geringerem Maße: Die Versuche können zwar nicht mehr erfolgreich sein, verbrauchen jedoch Ressourcen und füllen die Protokolle. Fail2ban unterbindet sie schnell, und sein wahrer Wert zeigt sich, wenn Sie es auf andere Dienste ausweiten, wie beispielsweise die Anmeldeseite einer Website.

Linux-VPS mit NVMe

Root-Zugriff, Intel Xeon Gold und NVMe, bereitgestellt innerhalb von 60 Sekunden. Ab 2,49 € pro Monat.