5 effektive Tipps zur Absicherung des SSH-Servers unter Ubuntu
در این مقاله با 5 راهکار موثر برای سخت‌سازی و امن‌سازی دسترسی SSH در اوبونتو آشنا شوید و سرور خود را از تهدیدات در امان نگه دارید.

5 effektive Tipps zur Absicherung des SSH-Servers unter Ubuntu

Dieser Artikel stellt fünf effektive Methoden zur Absicherung Ihres SSH-Servers unter Ubuntu vor. Durch die Umsetzung dieser Tipps können Sie die Sicherheit Ihrer Server erhöhen und unerwünschten Zugriff verhindern. Dazu gehören die Authentifizierung mit SSH-Schlüsseln, die Beschränkung des Zugriffs und der Einsatz von Schutztools wie Fail2Ban.
0 Aktien
0
0
0
0

Ist der SSH-Zugriff auf Ihrem Ubuntu-Server ausreichend sicher?

Die Sicherung des SSH-Zugriffs ist einer der grundlegendsten und wichtigsten Schritte für jeden Linux-Server, insbesondere wenn darauf kritische Dienste wie Websites, Datenbanken, Handelsserver oder GPU-Knoten gehostet werden. In diesem Leitfaden stellen wir fünf praktische und technische Lösungen vor. SSH-Härtung unter Ubuntu Es enthält praktische Anleitungen, Konfigurationsbeispiele und anpassbare Tipps für die Bereiche Handel, Gaming, KI und Webhosting.

Überblick und Ziele

Ziel dieses Leitfadens ist es, fünf Kernpunkte aufzuzeigen, die die Prinzipien von Vertraulichkeit, Reduzierte Angriffsreichweite, Einbruchserkennung und -reaktion und erhöhen Nachhaltigkeit Hüllen.

  • Ersetzen der Authentifizierung durch SSH-Schlüssel Anstelle eines Passworts
  • Zugriffsbeschränkung (Port, Benutzer, IP-Adresse)
  • Einsatz von Schutzmaßnahmen wie Fail2Ban Und UFW/iptables
  • Überwachung und Prüfung (Protokolle, sshd -T(Überprüfungstools)
  • Verwenden Sie die Zwei-Faktor-Authentifizierung oder Bastion-/Jumphost-Methoden.

1) Verwenden Sie starke SSH-Schlüssel und deaktivieren Sie Passwörter.

Verwendung von SSH-Schlüssel Anstelle eines Passworts bietet es Schutz vor Brute-Force-Angriffen und eine einfachere Zugriffsverwaltung. Neue Schlüssel wie z. B. ed25519 Sie sind besonders empfehlenswert, wenn Kompatibilität mit älteren Systemen erforderlich ist. RSA 4096 Verwenden.

Erstellen eines sicheren Schlüssels auf dem Client:

ssh-keygen -t ed25519 -a 100 -o -f ~/.ssh/id_ed25519 -C "user@host"

Oder (aus Kompatibilitätsgründen):

ssh-keygen -t rsa -b 4096 -o -a 100 -f ~/.ssh/id_rsa -C "user@host"

Übertragung des Schlüssels an den Server:

ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server

Beispiel für wichtige Einstellungen in /etc/ssh/sshd_config:

PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthentication no
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

SSH-Konfiguration hochladen:

sudo systemctl reload sshd

Beispiel für ein GPU-Knotenszenario (KI)

Empfohlen für GPU-Server, die von ML/KI-Teams verwendet werden. Zugriffsgruppen Erstellen und verteilen Sie für jeden Benutzer einen eindeutigen Schlüssel. Verwenden Sie ein verschlüsseltes Dateisystem für den Schlüsselordner und aktivieren Sie die entsprechende Funktion. AppArmor (oder SELinux, falls verfügbar) wird ebenfalls empfohlen.

2) Zugriffsbeschränkung: Port, Benutzer, Adressen und AllowUsers/AllowGroups

Zugriffsebene reduzieren oder Angriffsfläche Verringert Eindringversuche. Gängige Methoden umfassen Portänderungen, Benutzerbeschränkungen und Beschränkungen basierend auf IP-Adressen.

Standardport ändern:

Port 2222

Benutzer oder Gruppen einschränken:

AllowUsers deploy [email protected]/24
# or
AllowGroups sshusers

IP-basierte Beschränkung mit UFW:

sudo ufw allow from 203.0.113.5 to any port 2222 proto tcp

Deaktivierung risikoreicher Funktionen:

AllowTcpForwarding no
X11Forwarding no
PermitTunnel no

Zeit- und Arbeitsaufwand bei fehlgeschlagenen Anmeldeversuchen reduzieren:

LoginGraceTime 30
MaxAuthTries 3
MaxSessions 2

3) Schutz vor Brute-Force-Angriffen und Angriffsmanagement: Fail2Ban, UFW und Anti-DDoS

Automatisierte und Brute-Force-Angriffe sind weit verbreitet; Werkzeuge wie beispielsweise Fail2Ban Host-Firewalls können schädlichen Datenverkehr blockieren. Nutzen Sie außerdem Anti-DDoS-Dienste, um Angriffe der Schichten 4 und 7 abzuwehren.

Installation und Konfiguration von Fail2Ban:

sudo apt install fail2ban
# create /etc/fail2ban/jail.d/sshd.local with:
[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 3600

Grundlegende Firewall-Konfiguration mit UFW:

sudo apt install ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp
sudo ufw allow 80,443/tcp
sudo ufw enable

Wenn Sie einen stärkeren Schutz auf Netzwerkebene benötigen, verwenden Sie Anti-DDoS-Dienst Nutzen Sie unser Unternehmen. Unsere Anti-DDoS-Server lassen sich mit BGP/Anycast- und CDN-Netzwerken kombinieren, um schädlichen Datenverkehr am Netzwerkrand zu stoppen.

Vergleich von Standorten und deren Auswirkungen auf die Sicherheit

An den über 85 Standorten des Unternehmens weltweit verfügen einige Rechenzentren über Netzwerkfunktionen wie Edge-Firewalls, BGP und hardwarebasierten DDoS-Schutz. Für Handels- oder sicherheitskritische Server ist es wichtig, einen Standort mit DDoS-Schutz und kurzer Netzwerkverbindung zu den Finanzmärkten zu wählen (z. B. London, Frankfurt, New York, Singapur, Tokio).

4) Überwachung, Prüfung und Angriffserkennung

Es ist unerlässlich zu wissen, wer sich mit dem Server verbunden hat und welche Versuche fehlgeschlagen sind. Protokolle und Prüfwerkzeuge helfen dabei, Eindringversuche schnell zu erkennen.

Nützliche Befehle zum Überprüfen:

sshd -T
ss -tulpn | grep ssh
sudo tail -n 200 /var/log/auth.log
last -a

Zur Analyse von Protokollen können Sie Folgendes verwenden: rsyslog, Logwatch Alternativ können zentrale Logdienste (z. B. Elasticsearch/Graylog) verwendet werden. Weitere nützliche Tools sind: ssh-audit Und Lynis Und IDS/IPS wie OSSEC Oder Erdmännchen Sie sind.

5) Zwei-Faktor-Authentifizierung, Bastion und Zugriffsmanagement (PAM, 2FA)

Durch das Hinzufügen einer zweiten Authentifizierungsebene wird verhindert, dass Angreifer Zugriff erlangen, falls ein Schlüssel gestohlen oder das Konto kompromittiert wird. Zu den Optionen gehören die Verwendung von Google Authenticator (PAM), MFA-Diensten für Unternehmen und die Nutzung von Bastion/Jumphost.

Installieren Sie Google Authenticator PAM:

sudo apt install libpam-google-authenticator
# then run for each user:
google-authenticator

PAM und sshd konfigurieren:

# add to /etc/pam.d/sshd
auth required pam_google_authenticator.so

# in /etc/ssh/sshd_config
ChallengeResponseAuthentication yes
UsePAM yes

Für Organisationen, die MFA-Dienste wie Duo Oder Okta Es wird außerdem empfohlen, einen zu platzieren Bastion-Host Mit 2FA, zentralisierter Protokollierung und einheitlichen IAM-Richtlinien ist dies der beste Ansatz für große Teams.

Praktische Tipps für die Verwaltung von Schlüsseln und Kursen

Regelmäßige Schlüsselrotation, Entfernung inaktiver Schlüssel und die Nutzung von Identitätsmanagement (LDAP/AD/SSO) zur zentralen Steuerung sind für die Aufrechterhaltung der Sicherheit unerlässlich.

Vorschlag für eine sshd_config-Konfiguration

Das folgende Beispiel zeigt die empfohlenen Einstellungen (je nach Ihren spezifischen Bedürfnissen können weitere Anpassungen erforderlich sein):

Protocol 2
Port 2222
PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM yes
X11Forwarding no
AllowTcpForwarding no
ClientAliveInterval 300
ClientAliveCountMax 2
LogLevel VERBOSE
AllowUsers deploy [email protected]

Zusätzliche und praktische Tipps für konkrete Szenarien

Händler: Nutzen Sie einen dedizierten Trading-VPS in Börsennähe, messen Sie die Antwortzeiten mit Netzwerktools und beschränken Sie den SSH-Zugriff auf bestimmte IP-Adressen. Verwenden Sie DDoS-Schutz und BGP-Netzwerktechnologie.

Spiel: Für VPS-Gaming empfiehlt sich ein Standort mit niedrigem Ping und ein privates Netzwerk. Der administrative Zugriff sollte über Bastion gesteuert werden.

KI und Rendering: Wählen Sie GPU-Server an KI-spezifischen Standorten aus, beschränken Sie den SSH-Zugriff mit Schlüsseln und 2FA und verwenden Sie AllowGroups für verschiedene Teams.

Webserver und WordPress: Verwenden Sie SSH-Schlüssel für Administratoren, sicheres SFTP für Inhalts-Uploads und CI/CD mit SSH-Bereitstellungsschlüsseln.

Service- und Infrastrukturinformationen

Dienstleistungsunternehmen in mehr als 85 Standorte weltweit Angebot: Verschiedene Arten von VPS-Servern für Trading und Gaming, Hochleistungs-Cloud-Server, Grafikserver (GPU), Anti-DDoS-Server, Hosting- und Domain-Dienste, CDN und BGP-unterstütztes Netzwerk.

  • Für öffentliche Dienste nutzen Sie einen Standort mit Anti-DDoS-Schutz.
  • Für einen sicheren Zugriff empfiehlt sich Bastion in einem privaten Netzwerk mit Zugriff über VPN oder statische IP-Adresse.
  • Wählen Sie GPU-Server an KI-spezifischen Standorten, um die geringste Latenz zu erzielen.
  • Zum Schutz der Anwendungsschicht sollten neben anderen Sicherheitsmaßnahmen auch CDN und WAF eingesetzt werden.

Zusammenfassung und Checkliste für die schnelle Umsetzung

Checkliste mit 10 Schritten zur Umsetzung der oben genannten Punkte:

  1. Erstellen und Verwenden eines sicheren SSH-Schlüssels (ed25519 Oder RSA4096)
  2. Deaktivierung Passwortauthentifizierung Und PermitRootLogin
  3. Ändern Sie den Standard-SSH-Port und schränken Sie zusätzliche Berechtigungen ein.
  4. Installation Fail2Ban und Konfiguration UFW/iptables
  5. IP-Beschränkung und -Nutzung Benutzer zulassen/AllowGroups
  6. Protokollierung aktivieren und Protokolle an den zentralen Dienst senden
  7. Implementieren Sie 2FA oder MFA für sensible Zugriffe
  8. Verwendung von Bastion/Jumphost für den Fernzugriff
  9. Überprüfen Sie die Konfiguration mit sshd -T und Prüfwerkzeuge
  10. Überprüfen Sie regelmäßig die Schlüssel, entfernen Sie alte Schlüssel und tauschen Sie die Schlüssel aus.

Häufig gestellte Fragen

Das könnte Ihnen auch gefallen