Security-Check in Nextcloud
Nextcloud Admin-Panel → Einstellungen → Übersicht
→ Sicherheits- und Einrichtungswarnungen prüfen
# Kommandozeile (occ)
sudo -u www-data php /var/www/nextcloud/occ check
sudo -u www-data php /var/www/nextcloud/occ status
HTTPS-Sicherheits-Header (Nginx)
# /etc/nginx/sites-available/nextcloud
server {
listen 443 ssl http2;
server_name cloud.firma.de;
ssl_certificate /etc/letsencrypt/live/cloud.firma.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/cloud.firma.de/privkey.pem;
# Security Headers (Nextcloud-Empfehlungen)
add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-XSS-Protection "1; mode=block" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=(self)" always;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
client_max_body_size 512M;
proxy_max_temp_file_size 2048M;
}
}
Brute-Force-Schutz (eingebaut)
# Nextcloud hat eingebauten Brute-Force-Schutz
# /var/www/nextcloud/config/config.php
sudo -u www-data php /var/www/nextcloud/occ config:system:set bruteForce.protection.enabled --value=true --type=boolean
# Fail2ban für Nextcloud
cat > /etc/fail2ban/filter.d/nextcloud.conf << 'EOF'
[Definition]
failregex = ^.* Login failed: .* Remote IP: <HOST>
^.* Trusted domain error. .* Remote IP: '<HOST>'
ignoreregex =
journalmatch = _SYSTEMD_UNIT=php8.2-fpm.service
EOF
cat >> /etc/fail2ban/jail.local << 'EOF'
[nextcloud]
enabled = true
filter = nextcloud
backend = systemd
maxretry = 5
bantime = 3600
findtime = 600
EOF
systemctl reload fail2ban
Zwei-Faktor-Authentifizierung
# TOTP-App aktivieren (Nextcloud Admin-Panel)
# Einstellungen → Sicherheit → Zwei-Faktor-Authentifizierung
# OCC-Verwaltung
# 2FA für alle Benutzer erzwingen
sudo -u www-data php /var/www/nextcloud/occ config:app:set twofactor_totp enforced --value=yes
# 2FA für bestimmte Gruppe
sudo -u www-data php /var/www/nextcloud/occ twofactorauth:enforce --on --group=Mitarbeiter
Datei-Speicherort härten
# Daten-Verzeichnis außerhalb des Web-Root!
# /var/www/nextcloud/config/config.php:
# 'datadirectory' => '/opt/nextcloud-data',
# Berechtigungen prüfen
ls -la /opt/nextcloud-data/
# → www-data:www-data, 0750
# Direkt vom Web-Root sichern
chmod 0755 /var/www/nextcloud
find /var/www/nextcloud/ -type f -print0 | xargs -0 chmod 0640
find /var/www/nextcloud/ -type d -print0 | xargs -0 chmod 0750
chown -R www-data:www-data /var/www/nextcloud
FAQ
Sind Nextcloud-Daten verschlüsselt?
Nextcloud unterstützt serverseitige Verschlüsselung (E2EE für Dateien). Standardmäßig liegen Dateien unverschlüsselt auf dem Server-Disk – das Disk-Verschlüsselung (LUKS) absichern.
Fazit
Eine sichere Nextcloud-Instanz benötigt HTTPS-Header, 2FA, Brute-Force-Schutz und regelmäßige Updates – dann ist sie DSGVO-konform und produktionstauglich.
Nextcloud-Hosting und Sicherheit für KMU in Heidelberg, Mannheim und der Rhein-Neckar-Region. Anfragen.