Ubuntu nach der Erstinstallation sichern

TL;DR
Kurz und knapp: Nach der Erstinstallation ist Ubuntu zwar weniger angreifbar als viele andere Systeme, aber einige Standardkonfigurationen sind bewusst auf Komfort statt strikte Sicherheit ausgelegt. Dieser Leitfaden zeigt einfache, prüfbare Änderungen — Berechtigungen, Shared-Memory-Konfiguration, SSH- und su-Einschränkungen — die den größten, leicht behebbaren Teil der Angriffsfläche schließen.
Ein frisch installiertes Linux ist in der Regel weniger anfällig für Malware und Angriffe als ein frisch installiertes Windows. Trotzdem sind viele Distributionen — auch Ubuntu — standardmäßig auf Benutzerfreundlichkeit und sofortige Einsatzbereitschaft ausgelegt. Das kann Komfort bedeuten, aber auch voreingestellte Schwachstellen.
Dieser Artikel führt Sie Schritt für Schritt durch sinnvolle, risikoarme Änderungen, die wenig Aufwand, aber großen Sicherheitsgewinn bringen. Die meisten Maßnahmen erfordern Root-Rechte und das Bearbeiten von Konfigurationsdateien. Beispiele zeigen sowohl die Befehle als auch die Orte der Konfigurationsdateien.
Wichtige Begriffe in einer Zeile:
- Root: Systemadministrator mit vollen Rechten.
- fstab: Datei, die beschreibt, wie Datenträger und temporäre Dateisysteme beim Systemstart eingebunden werden.
- tmpfs: flüchtiges Dateisystem im Arbeitsspeicher.
Warum diese Maßnahmen sinnvoll sind
Die folgenden Schritte reduzieren Angriffsflächen, die häufig in Penetrationstests und Exploit-Kits genutzt werden: ausführbarer Shared-Memory, offene Home-Verzeichnisse, unnötige Root-Logins per SSH und unkontrollierter Zugriff auf su. Viele Angriffe nutzen genau diese Schwächen, weil sie auf Standardkonfigurationen angewiesen sind.
Wichtig: Änderungen sollten getestet werden. Einige Anwendungen (z. B. bestimmte Browser) erwarten beschreibbaren Shared-Memory und brechen bei restriktiven Mount-Optionen zusammen. Zu jeder Änderung finden Sie Hinweise, wie Sie Ausnahmen behandeln.
Vorbemerkung: Dateien als Root bearbeiten
Viele Konfigurationsdateien können nur mit Root-Rechten verändert werden. Übliche Methoden:
Mit Terminal:
sudoedit /file/config
Oder bei Gnome über “Alt + F2”:
gksudo gedit /file/config
Oder bei KDE über “Alt + F2”:
kdesu kate /file/config
Hinweis: In den folgenden Screenshots und Beispielen wurde sudoedit
im Terminal verwendet.
Grundlegende Maßnahmen
Diese Schritte orientieren sich daran, wie Sie Ihr System verwenden wollen:
- Passwort für Ihren Benutzer setzen: Auch wenn Sie allein am Gerät arbeiten, verhindert ein Passwort unbefugten physischen Zugriff.
- Gastzugänge bewusst anlegen: Erstellen Sie einen separaten Gastaccount statt den allgemeinen Gastmodus zu verwenden. Schützen Sie diesen Account ebenfalls mit einem Passwort.
- Multi-Benutzer-Modell nutzen: Linux ist von Beginn an als Mehrbenutzersystem konzipiert. Arbeiten mit separaten Accounts reduziert Risiken.
Weitere Informationen zu aktuellen Bedrohungen finden Sie in Sicherheitsbulletins und Distribution-Wikis.
Shared Memory (tmpfs) restriktiv einbinden
Standardmäßig ist der Shared-Memory-Pfad (/run/shm) schreib- und ausführbar. Das wird von Angreifern ausgenutzt, weil sich dort einfacher Schadcode platzieren lässt. Für Desktop- und Server-Systeme empfiehlt es sich, /run/shm restriktiver zu mounten.
Datei öffnen:
sudoedit /etc/fstab
Am Ende der Datei hinzufügen, um /run/shm schreibgeschützt zu machen:
none /run/shm tmpfs defaults,ro 00
Alternativ — wenn Programme wie Google Chrome benötigt werden, die einen beschreibbaren Shared-Memory erwarten — sollten Sie schreibbar, aber mit Ausführungsverbot mounten:
none /run/shm tmpfs rw,noexec,nosuid,nodev 00
Wichtige Hinweise:
- ro (read-only) erhöht die Sicherheit am stärksten, kann aber Inkompatibilitäten erzeugen.
- rw,noexec,nosuid,nodev erlaubt Schreiben, verbietet aber das Ausführen von dort abgelegten Binärdateien sowie das Setzen von SUID-Bits.
- Nach Änderung: per
mount -a
testen oder neu starten.
Wann diese Maßnahme nicht passt:
- Anwendungen mit hoher I/O-Anforderung auf /run/shm (z. B. bestimmte Container-/Browser-Konfigurationen). In diesem Fall preferieren Sie
rw,noexec,nosuid,nodev
.
“su” für Nicht-Admins sperren
Das Programm su
erlaubt, ein anderes Konto zu übernehmen — typischerweise root. Auf Systemen mit Gast-Accounts kann das missbräuchlich genutzt werden. Auf Ubuntu ist sudo
das bevorzugte Werkzeug, und su
sollte für normale Nutzer gesperrt werden.
Kommando (unverändert aus dem Originalbeispiel):
sudo dpkg-statoverride --update--add root sudo4750/bin/su
Anmerkung:
- Je nach Distribution und Version können Syntax/Parameter variieren. Prüfen Sie
man dpkg-statoverride
für die exakte Verwendung auf Ihrem System. - Alternativ lässt sich
su
durch Entfernen der Ausführungsrechte für Nicht-Privilegierte oder durch PAM-Regeln einschränken.
Home-Verzeichnis vor anderen Benutzern schützen
Standardmäßig sind Home-Verzeichnisse für andere Benutzer lesbar. Schützen Sie persönliche Dateien, indem Sie die Rechte anpassen.
Befehl (ersetzen Sie username
durch Ihren Nutzernamen):
chmod 0700 /home/username
Option: 0750 gewährt Leserecht für Gruppenmitglieder:
chmod 0750 /home/username
Wann 0700 vs. 0750:
- 0700: persönliche Dateien sind vollständig privat.
- 0750: nützlich, wenn Gruppenmitglieder (z. B. Entwicklerteam) Zugriff benötigen.
SSH: Root-Login deaktivieren
Ubuntu verhindert standardmäßig direkten SSH-Login als root, aber wenn Sie dennoch ein Root-Passwort gesetzt haben, ist dies eine Gefahrenquelle. Prüfen Sie zunächst, ob sshd installiert ist:
ssh localhost
Erhalten Sie “Connection refused”, ist kein SSH-Server installiert und Sie können die SSH-Tipps ignorieren. Andernfalls bearbeiten Sie die SSH-Konfiguration:
sudoedit /etc/ssh/sshd_config
Ersetzen Sie (falls vorhanden):
PermitRootLogin yes
durch:
PermitRootLogin no
Nach Änderung: SSH-Dienst neu starten (z. B. sudo systemctl restart sshd
) und vorher eine alternative Admin-Verbindung testen.
Zusätzliche SSH-Härtungen (Kurzliste):
- SSH-Authentifizierung via Public/Private-Key erzwingen und Passwort-Login deaktivieren.
- Root-Login sperren (wie oben).
- Unnötige Benutzer in AllowUsers/AllowGroups einschränken.
- Fail2Ban oder ähnliche Tools nutzen, um Brute-Force zu begrenzen.
Alternative und ergänzende Ansätze
- SELinux/AppArmor: Mandatory Access Control-Systeme (AppArmor ist standardmäßig bei Ubuntu verfügbar). Nutzt Profile, um Programmberechtigungen im Detail einzuschränken.
- Containerisierung: Dienste in Containern isolieren reduziert Seiteneffekte bei Kompromittierung.
- Minimale Installation: Installieren Sie nur notwendige Pakete und Dienste (Principle of Least Privilege).
Gegenbeispiele (wann diese Schritte nicht ausreichen):
- Vollständiger Schutz erfordert Netzwerksicherheit, Patch-Management und Benutzerbildung. Änderungen an fstab und Berechtigungen schließen gängige Wegbereiter, aber nicht alle Angriffsvektoren.
Prüfliste nach Rolle
Administrator (Einzelrechner / Dev):
- Passwort gesetzt und sudo-Konfiguration geprüft.
- /etc/fstab angepasst und gemountet getestet.
- SSH-Konfiguration geprüft und getestet.
- Home-Rechte auf 0700/0750 gesetzt.
Operator (Server-Umgebung):
- Automatisierte Konfigurations-Management-Tools (Ansible/Chef) zur Durchsetzung nutzen.
- Monitoring konfiguriert (Login-Anomalien, Dateiänderungen).
Gast/Standardbenutzer:
- Kein Root-Passwort setzen.
- Nur benötigte Anwendungen installieren.
Mini-SOP: schnelle Umsetzung (5 bis 15 Minuten)
- Terminal öffnen.
sudoedit /etc/fstab
→ Zeile für /run/shm hinzufügen (ro oder rw,noexec,…).chmod 0700 /home/username
(oder 0750 bei Bedarf).sudoedit /etc/ssh/sshd_config
→PermitRootLogin no
setzen,sudo systemctl restart sshd
.- Optional:
sudo dpkg-statoverride --update--add root sudo4750/bin/su
ausführen. - Testen:
mount -a
, SSH-Verbindungen prüfen, lokale Funktionalität der Anwendungen verifizieren.
Kriterien für die Abnahme
- /run/shm ist entsprechend gemountet (ro oder mit noexec) und gewünschte Anwendungen funktionieren.
- Home-Verzeichnis hat die eingestellten Berechtigungen und alle benötigten Teammitglieder haben weiterhin Zugriff (bei 0750).
- SSH verweigert Root-Logins, alternative Admin-Zugänge funktionieren.
su
ist für Gast-/Standardnutzer nicht mehr ausführbar.
Sicherheits-Härtung: weitere Maßnahmen
- Regelmäßige Updates: Sicherheitsupdates zeitnah einspielen (
apt update && sudo apt upgrade
). - Minimieren von offenen Ports: Dienste nur auf benötigten Schnittstellen lauschen lassen.
- Dateisystemintegritätsprüfungen (z. B. AIDE) einrichten.
- Backups und Wiederherstellungsplan erstellen und testen.
Risiken und Gegenmaßnahmen (Kurzmatrix):
- Risiko: Kompatibilitätsprobleme mit restriktivem /run/shm. Gegenmaßnahme: Temporär auf rw,noexec umstellen und Fehlersuche dokumentieren.
- Risiko: Verlust von Admin-Zugang bei fehlerhafter SSH-Konfiguration. Gegenmaßnahme: Lokalen Rootzugang nicht deaktivieren, bis alternativer Admin-Zugang getestet ist.
Datenschutz und lokale Rechtslage (Kurz)
Persönliche Dateien im Home-Verzeichnis sollten durch Dateiberechtigungen geschützt werden. Für produktive Umgebungen mit personenbezogenen Daten prüfen Sie zusätzlich lokale Datenschutzanforderungen (z. B. EU-DSGVO) und dokumentieren Zugriffskontrollen.
Faktenbox (qualitativ)
- Aufwand: Gering bis moderat — die meisten Änderungen sind Einzeiler oder eine Konfigurationszeile.
- Wirksamkeit: Hoch gegen Standard-Angriffsvektoren wie Exploits über Shared-Memory, offene Home-Verzeichnisse, Root-SSH und unkontrolliertes
su
. - Kompatibilität: Variiert — insbesondere Browser/Container können Write-Zugriff auf /run/shm benötigen.
Kurzes Glossar (je 1 Zeile)
- sudo: Werkzeug, um Befehle mit temporären Administratorrechten auszuführen.
- fstab: Tabelle, die beim Systemstart Einhängepunkte definiert.
- tmpfs: Temporäres RAM-basiertes Dateisystem.
- noexec: Mount-Option, die das Ausführen von Binärdateien vom betreffenden Dateisystem verbietet.
Fazit
Mit wenigen gezielten Konfigurationsänderungen lassen sich viele der häufig genutzten Angriffsflächen auf einem frisch installierten Ubuntu-System schließen. Testen Sie jede Änderung, dokumentieren Sie Ausnahmen und ergänzen Sie diese Basismaßnahmen mit Updates, Monitoring und, falls nötig, Mandatory Access Control (z. B. AppArmor). Sicherheit ist ein Prozess: regelmäßig wiederholen, prüfen und anpassen.
Wichtige Links und weitere Lektüre: Ubuntu Wiki, AppArmor-Dokumentation, relevante Sicherheits-Bulletins.
Ähnliche Materialien

Spiel auf Steam zurückgeben – schnelle Anleitung

Krypto mit Apple Pay kaufen — iPhone Anleitung

Öffentliches Snapchat-Profil erstellen – Anleitung

Open‑Source‑Apps: Windows/macOS auf Linux ersetzen

CyanogenMod auf Lenovo P780 installieren
