ls ~/errors
Fehlercode-Lexikon.
Die Meldungen, die im Support immer wieder auftauchen — was sie bedeuten, wie Sie sie prüfen und was hilft.
550 5.7.1SMTP 550 5.7.1: Relay access denied und Policy-AblehnungDer Server lehnt die Mail aus Richtliniengründen ab – meist, weil der Absender nicht authentifiziert ist und der Server die Mail an eine fremde Domain weiterleiten (relayen) müsste.550 5.7.26SMTP 550 5.7.26 und 5.7.23: Mail nicht authentifiziertGmail (und ähnlich Microsoft mit 5.7.509/5.7.515) lehnt die Mail ab, weil sie weder per SPF noch per DKIM passend zur Absenderdomain authentifiziert ist.421 4.7.0SMTP 421 4.7.0: Vorübergehend gedrosselt (try again later)Der Empfangsserver nimmt vorübergehend keine weiteren Mails von Ihrer IP an, weil Volumen, Reputation oder Authentifizierung auffällig sind – die Mails bleiben in der Queue und werden später erneut versucht.554 5.7.1SMTP 554 5.7.1: Abgelehnt wegen Blocklist oder SpamDer Empfänger lehnt die Verbindung oder Mail dauerhaft ab, weil die sendende IP auf einer DNS-Blocklist (DNSBL) steht oder der Inhalt als Spam eingestuft wurde.451 4.7.1SMTP 451 4.7.1: Greylisting und vorübergehende AblehnungDer Empfänger lehnt den ersten Zustellversuch eines unbekannten Absenders bewusst vorübergehend ab; ein korrekt arbeitender Mailserver liefert nach einigen Minuten erneut ein.535 5.7.8SMTP 535 5.7.8: Authentication failed – Anmeldung abgelehntDer Server hat die SMTP-AUTH-Anmeldung abgelehnt. Die Verbindung steht, aber Benutzername, Passwort oder Anmeldeverfahren passen nicht zu dem, was das Backend (meist Dovecot SASL) erwartet.530 5.7.0SMTP 530 5.7.0: Must issue a STARTTLS command firstDer Server akzeptiert auf diesem Port weder AUTH noch MAIL FROM über eine unverschlüsselte Verbindung. Der Client muss zuerst STARTTLS senden oder direkt TLS auf Port 465 nutzen.552 5.2.2SMTP 552 5.2.2: Mailbox full / Quota exceededDer Empfangsserver nimmt die Mail nicht an, weil das Postfach des Empfängers sein Quota-Limit erreicht hat. Der Absender bekommt einen Bounce, die Mail ist nicht zugestellt.550 5.1.1SMTP 550 5.1.1: User unknown / Recipient address rejectedDer Zielserver kennt die Empfängeradresse nicht und lehnt die Mail endgültig ab. Entweder ist die Adresse falsch oder sie fehlt in den Tabellen des Servers.553 5.7.1SMTP 553 5.7.1: Sender address rejected: not owned by userPostfix vergleicht die Absenderadresse (MAIL FROM) mit dem angemeldeten SASL-Benutzer. Gehört die Adresse laut smtpd_sender_login_maps nicht zu diesem Benutzer, wird die Mail abgelehnt.does not resolve to addressPostfix-Warnung: hostname … does not resolve to addressPostfix hat zur IP des verbindenden Servers per PTR einen Namen gefunden, dieser Name zeigt aber nicht zurück auf dieselbe IP. Der Client gilt dann als „unknown“.auth failedDovecot: imap-login Disconnected (auth failed)Ein Client hat sich bei IMAP oder POP3 angemeldet und wurde abgewiesen. Das kann ein einzelner Benutzer mit falschem Passwort sein, eine fehlerhafte passdb oder ein Angriff.status=deferred Connection timed outPostfix: status=deferred (connect to …:25: Connection timed out)Dein Mailserver kann keine Verbindung zum Server des Empfängers auf Port 25 aufbauen, behält die Nachricht deshalb in der Warteschlange und versucht es später erneut. Sehr oft ist ein gesperrter ausgehender Port 25 die Ursache.Host or domain name not foundPostfix: Host or domain name not found. Name service error for name=… type=MXPostfix konnte die Empfängerdomain nicht im DNS auflösen. Entweder funktioniert der Resolver deines Servers nicht (oft ein Postfix im Chroot ohne resolv.conf), oder die Domain selbst hat ein Problem.SASL authentication failedPostfix: SASL authentication failed; cannot authenticate to server (no mechanism available)Postfix wollte sich an deinem Smarthost (Relay) anmelden und ist gescheitert. Das ist die ausgehende Seite: Dein Server ist der Client. Die Ursache ist ein fehlendes SASL-Modul, falsche Zugangsdaten oder eine Anmeldung, die erst nach dem Start von TLS angeboten wird.Dovecot Permission deniedDovecot: Error: open() failed: Permission denied (Postfach)Der Benutzer, unter dem Dovecot dieses Postfach betreibt, darf die Mail-Dateien nicht lesen oder schreiben. Typisch nach einer Migration, einem neuen Server oder wenn Postfix unter einem anderen Benutzer zustellt, als Dovecot liest.dkim=fail body hash did not verifyDKIM: dkim=fail (body hash did not verify)Die Signatur ist intakt, aber der Text der Nachricht passt nicht mehr zum signierten Hash. Etwas hat den Text nach dem Signieren verändert: ein Footer, ein Virenbanner, ein Disclaimer, umgeschriebene Links oder sogar geänderte Zeilenenden.not accepted due to domain's DMARC policy550 5.7.1 Unauthenticated email is not accepted due to domain's DMARC policyDer Empfänger hat die DMARC-Richtlinie deiner Domain geprüft, und die Nachricht hat weder SPF noch DKIM so bestanden, dass es zur From-Domain passt. Deshalb wurde sie so abgelehnt, wie die Richtlinie es vorsieht (p=reject oder quarantine).554 5.7.1 Relay access deniedSMTP: 554 5.7.1 Relay access deniedDer Server soll Mail an eine Domain zustellen, die ihm nicht gehört, und zwar von einem Client, dem er nicht vertraut. Das abzulehnen ist richtig, es verhindert ein offenes Relay. Die Aufgabe ist herauszufinden, ob dein Client sich hätte anmelden müssen oder deine eigene Domain nicht eingerichtet ist.450 4.1.8 Sender address rejected: Domain not foundSMTP: 450 4.1.8 Sender address rejected: Domain not foundDer empfangende Server hat die Domain in der Absenderadresse nachgeschlagen und weder einen A- noch einen MX-Eintrag gefunden und lehnt die Mail mit reject_unknown_sender_domain ab. Typische Quellen sind Server, die als root@hostname.localdomain senden.mail for example.com loops back to myselfPostfix: mail for example.com loops back to myselfPostfix hat nachgeschlagen, wohin die Mail soll, und ist bei sich selbst gelandet, daher bricht es ab, statt endlos zu kreisen. Das Routing sagt, dieser Host sei zuständig, aber die lokale Konfiguration nimmt die Domain nicht an.550 5.4.1 Recipient address rejected: Access deniedSMTP: 550 5.4.1 Recipient address rejected: Access deniedDiese Abweisung kommt von Exchange Online, wenn es sich gegen das Abgreifen von Adressen schützt. Die Mail wird am Rand abgelehnt, weil der Empfänger im Verzeichnis nicht gefunden wird. Es klingt nach einem Rechteproblem, bedeutet aber fast immer, dass die Adresse dort nicht existiert.Connection timed out on port 25Port 25 gesperrt: SMTP-Timeout beim direkten VersandDer eigene Mailserver kommt nicht an den MX-Server des Empfängers, weil Port 25 ausgehend blockiert wird. Die Mails bleiben in der Queue und werden erneut versucht.502HTTP 502 Bad Gateway mit nginx und PHP-FPMnginx konnte vom Upstream (PHP-FPM, Node.js, Gunicorn, Docker-Container) keine gültige Antwort bekommen – der Backend-Dienst läuft nicht, ist nicht erreichbar oder ist abgestürzt.504HTTP 504 Gateway Timeout mit nginxnginx hat das Backend erreicht, aber innerhalb des eingestellten Timeouts (Standard 60 Sekunden) keine Antwort bekommen.413HTTP 413 Request Entity Too Large bei nginxDer Request-Body (meist ein Upload) ist größer als das Limit, das nginx oder ein vorgeschalteter Proxy erlaubt – die Anfrage erreicht die Anwendung gar nicht.403HTTP 403 Forbidden (nginx): directory index is forbiddennginx kennt den Benutzer bzw. die Anfrage, verweigert aber den Zugriff. Der genaue Grund steht fast immer im error.log – „directory index … is forbidden“, „Permission denied“ oder „access forbidden by rule“.500HTTP 500 Internal Server Error: Ursache in den Logs findenDie Anwendung oder der Webserver ist beim Verarbeiten der Anfrage gescheitert. Der Statuscode sagt nichts über den Grund – der steht im error.log von nginx, im PHP-FPM-Log oder im Log der Anwendung.503HTTP 503 Service Unavailable: wer liefert den Fehler?Der Dienst ist vorübergehend nicht verfügbar. Zuerst klären, wer den 503 erzeugt: nginx selbst (Rate-Limit, return 503), die Anwendung (Wartungsmodus) oder ein vorgeschalteter Load Balancer.400400 Bad Request: Request Header Or Cookie Too LargeEin einzelner Request-Header oder die Cookie-Zeile ist größer als der Puffer, den nginx dafür reserviert. Standard sind 4 Puffer à 8 KB – große SSO-Cookies oder JWTs sprengen das schnell.ERR_TOO_MANY_REDIRECTSERR_TOO_MANY_REDIRECTS: example.com hat dich zu oft weitergeleitetZwei Stellen schicken den Browser immer wieder zueinander. Der Browser folgt den Weiterleitungen, gibt nach einem Limit auf und zeigt diesen Fehler. Die Schleife liegt immer im Zusammenspiel von Server, CDN und Anwendung.Error 521 / 522 (origin unreachable behind CDN)Error 521 (Web server is down) und 522 (Connection timed out) hinter einem CDNDiese Codes kommen vom CDN (zum Beispiel Cloudflare), nicht von deinem Server. Das CDN war an seinem eigenen Edge erreichbar, konnte aber nicht mit deinem Origin sprechen: 521 heißt, die Verbindung wurde verweigert, 522, sie lief in ein Timeout.Mixed Content: requested an insecure resourceMixed Content: The page was loaded over HTTPS, but requested an insecure resource ... This request has been blockedDie Seite selbst nutzt HTTPS, versucht aber, ein Skript, Stylesheet, eine Schrift, ein Bild oder eine Anfrage über unverschlüsseltes HTTP zu laden. Browser blockieren aktive Inhalte (Skripte, Styles, Anfragen) und warnen oder aktualisieren passive Inhalte wie Bilder. Styles und Skripte laden dann nicht.429 Too Many RequestsHTTP 429 Too Many RequestsDer Server oder eine Zwischenschicht meldet, dass dieser Client in einer bestimmten Zeit zu viele Anfragen gesendet hat. Ein Rate-Limit arbeitet wie vorgesehen. Die Aufgabe ist herauszufinden, welche Ebene es anwendet und ob das Limit oder der Client falsch ist.404 Not Foundnginx: 404 Not Foundnginx hat unter dem Pfad gesucht, den es aus root oder alias und der Anfrage-URI gebildet hat, und nichts gefunden. Das Error-Log zeigt den genauen Pfad. Meist ist der Pfad, die Routing-Regel oder der Server-Block falsch.too big headernginx: upstream sent too big header while reading response headerDie Antwort-Header des Backends (meist Cookies) sind größer als der Puffer, den nginx dafür reserviert hat; nginx bricht ab und liefert 502 Bad Gateway.Primary script unknownnginx + PHP-FPM: „Primary script unknown“ / „File not found.“nginx reicht die Anfrage an PHP-FPM weiter, aber PHP-FPM findet unter dem übergebenen Pfad keine Datei oder darf sie nicht lesen. Im Browser erscheint nur „File not found.“.111: Connection refusednginx: connect() failed (111: Connection refused) to upstreamnginx erreicht den Backend-Host, aber auf dem Zielport lauscht niemand. Das Betriebssystem lehnt die Verbindung sofort ab, der Benutzer sieht 502 Bad Gateway.98: Address already in usenginx: bind() failed (98: Address already in use)nginx kann seinen Port nicht öffnen, weil schon ein anderer Prozess darauf lauscht – oft Apache, ein zweiter nginx oder ein Docker-Container.110: Connection timed outnginx: upstream timed out (110: Connection timed out)Das Backend (PHP-FPM, Node, Gunicorn) hat nicht innerhalb der nginx-Frist geantwortet, nginx gibt auf und liefert 504 Gateway Timeout.rewrite or internal redirection cyclenginx: rewrite or internal redirection cycle while internally redirecting to "/index.html"nginx hat die Anfrage intern immer wieder umgeleitet und nach 10 Schritten aufgegeben, mit einem 500. Typisch fällt try_files auf eine Datei zurück, die unter dem aktuellen Root nicht existiert.worker_connections are not enoughnginx: [alert] 768 worker_connections are not enoughEin nginx-Worker hat alle Verbindungen verbraucht, die er gleichzeitig halten darf. Neue Anfragen warten oder scheitern. Mit proxy_pass braucht jede Anfrage zwei Verbindungen (Client und Upstream), das Limit ist also früher erreicht, als die Besucherzahl vermuten lässt.could not build server_names_hashnginx: [emerg] could not build server_names_hash, you should increase server_names_hash_bucket_sizenginx legt alle server_name-Werte in einer Hash-Tabelle ab. Ein sehr langer Name oder viele Namen passen nicht mehr in einen Bucket, deshalb scheitert der Konfigurationstest und nginx startet oder lädt nicht neu.upstream prematurely closed connectionnginx: upstream prematurely closed connection while reading response header from upstreamnginx hat die Anfrage ans Backend geschickt, aber das Backend hat die Verbindung geschlossen, bevor es antwortete. Der Nutzer sieht 502 Bad Gateway. Das Backend ist abgestürzt, wurde beendet, neu gestartet oder spricht nicht das Protokoll, das nginx nutzt.connect() to unix:/run/php/php-fpm.sock failed (13: Permission denied)nginx: connect() to unix:/run/php/php-fpm.sock failed (13: Permission denied) while connecting to upstreamnginx findet den PHP-FPM-Socket, darf ihn aber nicht öffnen. Der Besucher sieht 502 Bad Gateway. Besitzer, Gruppe oder Modus des Sockets passen nicht zum Benutzer, unter dem nginx läuft.cannot load certificatenginx: [emerg] cannot load certificate (PEM no start line, key values mismatch)nginx konnte das Zertifikat oder den Schlüssel nicht lesen und startet oder lädt deshalb nicht neu. Die Datei fehlt oder ist nicht lesbar, ist kein PEM, ist die falsche Datei, oder der Schlüssel gehört nicht zum Zertifikat.423 LockedNextcloud: „File is locked“ und HTTP 423 LockedNextcloud verweigert den Zugriff, weil für die Datei noch eine Sperre im Transactional File Locking existiert – meist eine verwaiste Sperre nach einem abgebrochenen Upload oder Absturz.maintenance modeNextcloud: „Maintenance mode is enabled“ behebenNextcloud ist im Wartungsmodus und blockiert Web, Clients und die meisten occ-Befehle – entweder bewusst gesetzt oder nach einem Update, das nicht sauber abgeschlossen wurde.untrusted domainNextcloud: Zugriff über eine nicht vertrauenswürdige DomainNextcloud wurde über einen Hostnamen oder eine IP aufgerufen, die nicht in trusted_domains steht, und verweigert deshalb die Anmeldung.data directory readableNextcloud: „Your data directory is readable by other users“Nextcloud prüft beim Start, ob andere Systembenutzer das Datenverzeichnis lesen oder auflisten können. Ist das der Fall, verweigert Nextcloud den Betrieb bzw. zeigt die Warnung.Internal Server ErrorNextcloud: Internal Server Error mit Request IDNextcloud ist beim Verarbeiten der Anfrage auf einen Fehler gestoßen. Die angezeigte Request ID ist der Schlüssel: Mit ihr finden Sie im nextcloud.log genau den zugehörigen Eintrag.CSRF check failedNextcloud: CSRF check failed beim Login oder SpeichernDas CSRF-Token im Formular passt nicht zur Session auf dem Server. Fast immer ist die Session zwischen Laden und Absenden verloren gegangen – nicht ein Angriff.APCu not availableNextcloud: Memcache \OC\Memcache\APCu not available for local cacheNextcloud ist auf APCu als lokalen Cache konfiguriert, aber die PHP-Instanz, die gerade läuft, hat APCu nicht aktiv. Fast immer betrifft das nur PHP-CLI – also occ und cron.php.missing indexesNextcloud: „The database is missing some indexes“Nach einem Update hat Nextcloud neue Indizes definiert, sie aber nicht automatisch angelegt, weil das auf großen Tabellen lange dauern kann. Ohne sie werden Abfragen langsam.Last background jobNextcloud: „Last background job execution ran … ago“Nextcloud führt Aufräumarbeiten, Benachrichtigungen, Dateiversionen und Papierkorb über Hintergrundjobs aus. Die Warnung heißt: Diese Jobs liefen schon länger nicht mehr.reverse proxy header configuration is incorrectNextcloud: Die Reverse-Proxy-Header-Konfiguration ist nicht korrektNextcloud sieht weitergeleitete Header (X-Forwarded-For) von einem Proxy, dem es nicht vertraut, oder es ist kein Proxy eingetragen, obwohl einer davor steht. Besucher erscheinen dann mit der falschen IP, oder Weiterleitungen und Links nutzen http statt https.Cannot write into "config" directoryNextcloud: Cannot write into "config" directory!Der Webserver-Benutzer darf nicht in config/ schreiben, deshalb können Installer, Updates oder Einstellungen die config.php nicht speichern. Meist sind Besitzer oder Rechte nach Kopieren, Wiederherstellen oder Verschieben falsch.Too many requestsNextcloud: Too many requests. Es gab zu viele Anfragen aus Ihrem NetzwerkDer Brute-Force-Schutz von Nextcloud hat deine IP-Adresse nach wiederholten fehlgeschlagenen Anmeldungen gebremst oder gesperrt. Oft ist die echte Ursache ein Proxy, der alle Nutzer wie eine Adresse aussehen lässt.Your data directory is invalidNextcloud: Your data directory is invalid (.ocdata fehlt)Nextcloud startet nicht, weil es die Markierungsdatei .ocdata im Datenverzeichnis nicht findet. Das ist ein Schutz: Nextcloud schreibt nicht in einen Ordner, der ein leerer, nicht eingehängter Einhängepunkt sein könnte.RedisException: Redis went awayNextcloud: RedisException: Redis went awayNextcloud nutzt Redis für File Locking und Caching. Reißt die Verbindung ab, schlagen Anfragen fehl, Uploads hängen oder du siehst 500er-Fehler. Die Frage ist, ob Redis weg ist oder Nextcloud es nicht erreicht.Your web server is not properly set up to resolve "/.well-known/caldav"Nextcloud: Your web server is not properly set up to resolve "/.well-known/caldav"Kalender- und Kontakte-Apps finden deinen Server über die Adressen /.well-known/caldav und /.well-known/carddav. Die Übersicht warnt, wenn diese nicht auf /remote.php/dav weiterleiten. Die Synchronisierung klappt trotzdem, wenn du die volle DAV-Adresse von Hand einträgst.Some files have not passed the integrity checkNextcloud: Some files have not passed the integrity checkNextcloud vergleicht seine Code-Dateien mit einer signierten Liste von Prüfsummen. Alles, was im Programmordner geändert, gelöscht oder hinzugefügt wurde, wird gemeldet. Das ist eine Warnung zu deinen Dateien, kein Datenverlust.Updates between multiple major versions and downgrades are unsupportedNextcloud: Updates between multiple major versions and downgrades are unsupportedNextcloud aktualisiert nur von einer Hauptversion zur nächsten. Die Meldung erscheint, wenn du eine Hauptversion überspringst oder der installierte Code älter ist als die in der Datenbank vermerkte Version. Erzwinge es nie durch Ändern der Versionsnummer.SAML signatureSAML-Fehler: Signature validation failed in NextcloudNextcloud (user_saml mit php-saml) konnte die Signatur der SAML-Antwort mit dem hinterlegten IdP-Zertifikat nicht verifizieren und lehnt den Login ab.invalid_grantOIDC/OAuth2: invalid_grant am Token-EndpointDer Identity Provider lehnt den Authorization Code oder Refresh Token ab, den der Client eintauschen will. Der Login scheitert direkt nach der Rückleitung vom IdP.redirect_uri_mismatchOIDC: redirect_uri_mismatch / Invalid redirect_uriDer Client schickt im Authorize-Request eine redirect_uri, die beim Identity Provider nicht exakt so registriert ist. Der IdP bricht ab, bevor sich der Benutzer anmelden kann.NotBeforeSAML: „not yet valid“ – Clock Skew bei NotBeforeJede SAML-Assertion ist nur in einem Zeitfenster gültig (NotBefore bis NotOnOrAfter). Weicht die Uhr des Service Providers von der des IdP ab, gilt die Assertion als noch nicht oder nicht mehr gültig.Invalid audience for this ResponseSAML: Invalid audience for this Response (AudienceRestriction)Der Identity Provider richtet seine Assertion an eine Zielgruppe, die Entity ID des Service Providers. Deine App prüft, ob dieser Wert ihrer eigenen Entity ID entspricht, und lehnt sonst ab. Signatur- und Zeitprüfung sind getrennt, hier geht es also rein um eine Namensabweichung.invalid_clientOIDC: invalid_client (Client-Authentifizierung fehlgeschlagen)Nach der Anmeldung des Nutzers ruft deine App den Token-Endpunkt auf und muss sich mit Client-ID und Secret ausweisen. invalid_client heißt, dieser Nachweis wurde abgelehnt. Es geht um die Identität der App, nicht um den Code des Nutzers oder die Redirect-Adresse.acme:error:unauthorizedLet's Encrypt: urn:ietf:params:acme:error:unauthorizedLet's Encrypt konnte die Challenge-Datei unter /.well-known/acme-challenge/ nicht vom richtigen Server abrufen und verweigert deshalb das Zertifikat.unable to get local issuer certificateSSL: unable to get local issuer certificateDer Client kann die Kette vom Serverzertifikat bis zu einer vertrauenswürdigen Root-CA nicht aufbauen. Entweder schickt der Server die Zwischenzertifikate nicht mit, oder dem Client fehlt die Root-CA.SSL_ERROR_RX_RECORD_TOO_LONGSSL_ERROR_RX_RECORD_TOO_LONG in FirefoxDer Browser erwartet auf Port 443 einen TLS-Handshake, bekommt aber Klartext, meist eine HTTP-Antwort. Firefox interpretiert diese Bytes als viel zu langen TLS-Record und bricht ab.ERR_CERT_COMMON_NAME_INVALIDNET::ERR_CERT_COMMON_NAME_INVALIDDas Zertifikat ist gültig, aber nicht für diesen Namen ausgestellt. Browser prüfen ausschließlich die Subject Alternative Names (SAN) – fehlt der aufgerufene Hostname dort, kommt dieser Fehler.certificate has expiredSSL: certificate has expired / ERR_CERT_DATE_INVALIDDas ausgelieferte Zertifikat ist außerhalb seiner Gültigkeit. Oft wurde es längst erneuert, aber der Webserver liefert noch die alte Datei aus dem Speicher.rateLimitedLet's Encrypt: too many certificates already issuedLet's Encrypt begrenzt, wie viele Zertifikate in einem Zeitraum ausgestellt werden. Die Fehlermeldung nennt das betroffene Limit und den Zeitpunkt, ab dem es wieder geht („retry after“).Timeout during connect (likely firewall problem)Certbot: Timeout during connect (likely firewall problem)Let's Encrypt konnte keine Verbindung zu deinem Server auf Port 80 aufbauen, um die Challenge-Datei abzurufen. Unterwegs blockiert etwas: eine Firewall, eine falsche Adresse oder eine IPv6-Adresse, die nicht antwortet.ERR_SSL_VERSION_OR_CIPHER_MISMATCHERR_SSL_VERSION_OR_CIPHER_MISMATCH (SSL_ERROR_NO_CYPHER_OVERLAP)Browser und Server konnten sich nicht auf eine TLS-Version oder Cipher einigen. Entweder bietet der Server nur veraltete Protokolle an, oder seine Einstellungen sind so streng, dass moderne Clients keinen Treffer finden.NET::ERR_CERT_AUTHORITY_INVALIDNET::ERR_CERT_AUTHORITY_INVALID: Zertifizierungsstelle nicht vertrauenswürdigDer Browser hat ein Zertifikat bekommen, kann es aber nicht auf eine Zertifizierungsstelle zurückführen, der er vertraut. Es geht darum, wer es signiert hat, nicht um Datum oder Name.NET::ERR_CERT_DATE_INVALIDNET::ERR_CERT_DATE_INVALID: Zertifikatsdatum ungültigEin Zertifikat gilt nur zwischen zwei Daten. Der Browser vergleicht sie mit seiner eigenen Uhr. Der Fehler heißt, dass heute, aus Sicht des Clients, außerhalb dieses Zeitraums liegt: Entweder ist das Zertifikat veraltet, oder die Uhr des Clients geht falsch.Failed to renew certificatecertbot renew: Failed to renew certificate (alle Erneuerungen fehlgeschlagen)Let's-Encrypt-Zertifikate halten nur kurz, die Erneuerung muss also selbstständig laufen. Scheitert certbot renew, altert das Zertifikat weiter, bis der Browser eine Ablaufwarnung zeigt. Die Ursache liegt meist in den gespeicherten Erneuerungs-Einstellungen, nicht bei Let's Encrypt.SERVFAILDNS SERVFAIL: Ursache finden und behebenDer Resolver konnte keine gültige Antwort ermitteln – entweder weil die autoritativen Nameserver nicht sauber antworten oder weil die DNSSEC-Validierung fehlschlägt.NXDOMAINDNS NXDOMAIN: Domain oder Hostname existiert nichtDer zuständige Nameserver hat verbindlich geantwortet, dass es diesen Namen nicht gibt. Das ist etwas anderes als SERVFAIL oder ein Timeout – die Frage ist, welcher Server das behauptet und warum.CNAME at apexDNS: CNAME an der Apex – „CNAME and other data“Ein CNAME darf nicht neben anderen Records desselben Namens stehen. An der Zonen-Apex (example.com) gibt es aber immer SOA und NS – deshalb ist dort kein CNAME erlaubt.status: REFUSEDDNS: status: REFUSED (Anfrage abgelehnt)Der Server wurde erreicht und hat bewusst mit „nein“ geantwortet. Das ist eine Richtlinien-Entscheidung, kein Timeout. Entweder bedient er die Zone nicht, nach der du fragst, oder er macht für deine Adresse keine Rekursion.connection timed out; no servers could be reachedDNS: connection timed out; no servers could be reachedDie Anfrage hat gar keine Antwort bekommen, nicht einmal eine Ablehnung. Das Paket kam nicht an, oder die Antwort kam nicht zurück. Das deutet auf den Weg oder den Serverprozess, nicht auf die Domain.curl: (6) Could not resolve hostcurl: (6) Could not resolve hostcurl konnte den Hostnamen nicht in eine IP-Adresse umsetzen und hat deshalb gar nicht versucht, sich zu verbinden. Die Frage ist, ob der Name falsch ist, der DNS-Eintrag fehlt oder nur diese Maschine ihn nicht auflösen kann.ENOSPCNo space left on device, obwohl df freien Speicher zeigtDer Kernel meldet ENOSPC, weil eine Ressource des Dateisystems erschöpft ist – nicht zwingend der Speicherplatz, sondern oft die Inodes oder Platz, der von gelöschten, noch offenen Dateien belegt wird.Permission denied (publickey)SSH: Permission denied (publickey)Der Server erlaubt nur Schlüssel-Anmeldung und hat keinen der angebotenen Schlüssel akzeptiert. Die Ursache steht im Client mit -vvv und im Server-Log.EROFSLinux: Read-only file system (EROFS)Ein Schreibzugriff wurde abgelehnt, weil das Dateisystem nur lesbar ist. Oft hat der Kernel es nach einem Fehler selbst umgeschaltet, um weiteren Schaden zu verhindern.EMFILELinux: Too many open files (EMFILE, Fehler 24)Ein Prozess hat sein Limit an Dateideskriptoren erreicht. Dazu zählen Dateien, aber auch Sockets und Pipes – bei Webservern also vor allem offene Verbindungen.Out of memoryLinux: Out of memory – Killed process (OOM Killer)Dem System oder einer cgroup ging der Arbeitsspeicher aus. Der Kernel hat deshalb den Prozess mit der höchsten OOM-Bewertung beendet – nicht unbedingt den, der das Problem verursacht hat.control process exitedsystemd: Job for X.service failed (control process exited)systemd hat versucht, den Dienst zu starten oder neu zu laden, und der Startbefehl (ExecStart oder ExecStartPre) hat mit Fehler geendet. Die eigentliche Ursache steht im Journal des Dienstes.permission denied docker.sockDocker: permission denied beim Verbinden mit dem Daemon-SocketDein Benutzer darf /var/run/docker.sock nicht nutzen. Nur root und Mitglieder der Gruppe docker dürfen mit dem Docker-Daemon sprechen.REMOTE HOST IDENTIFICATION HAS CHANGEDSSH: WARNING: REMOTE HOST IDENTIFICATION HAS CHANGEDDer Server zeigt einen anderen Host-Schlüssel als den in deiner known_hosts gespeicherten. Oft harmlos (ein Neuaufbau), aber genau diese Warnung erscheint auch bei einem Man-in-the-Middle-Angriff.port 22: Connection timed outSSH: connect to host port 22: Connection timed outDeine Pakete bekommen gar keine Antwort. Anders als bei „Connection refused“ antwortet nichts: Eine Firewall verwirft den Verkehr, die Adresse ist falsch oder die Maschine ist aus oder nicht erreichbar.start-limit-hitsystemd: Start request repeated too quickly (start-limit-hit)Der Dienst ist in kurzer Zeit immer wieder abgestürzt, deshalb startet systemd ihn nicht mehr neu, um das System zu schützen. Das Limit ist nur das Symptom – der Dienst scheitert aus einem anderen Grund.Could not get lock /var/lib/dpkg/lock-frontendapt: Could not get lock /var/lib/dpkg/lock-frontendEin anderer Prozess nutzt gerade das Paketsystem, meist der automatische Updater. apt und dpkg erlauben nur einen zur Zeit, dein Befehl muss also warten.Too many authentication failuresSSH: Received disconnect: Too many authentication failuresDer Server zählt jeden Schlüssel, den dein SSH-Agent anbietet, als Fehlversuch. Sind viele Schlüssel geladen, ist MaxAuthTries (standardmäßig 6) erreicht, bevor dein Passwort oder der richtige Schlüssel überhaupt probiert wird.E: Unable to locate packageapt: E: Unable to locate packageapt findet das Paket in keiner Paketliste, die es kennt. Entweder sind die Listen leer oder alt, der Name passt nicht zu deinem Release, oder das Repository mit dem Paket ist nicht aktiviert.dpkg was interrupted, you must manually run 'dpkg --configure -a'dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problemEine frühere Installation oder ein Upgrade wurde nicht fertig. dpkg hat Pakete halb entpackt oder halb konfiguriert zurückgelassen und verweigert neue Arbeit, bis sie abgeschlossen sind. Meist behebt ein Befehl das.Temporary failure in name resolutionTemporary failure in name resolution (ping, apt, curl, ssh)Das Programm hat den System-Resolver nach einer IP-Adresse gefragt und gar keine Antwort bekommen. Das ist nicht „Domain existiert nicht“. Der Server erreicht keinen funktionierenden DNS-Server oder hat keinen eingestellt.is not in the sudoers file. This incident will be reported.sudo: Benutzer is not in the sudoers file. This incident will be reported.sudo läuft, aber die Richtlinie erlaubt diesem Benutzer nichts. Bei Debian und Ubuntu gilt meist: Mitglieder der Gruppe sudo dürfen es nutzen. Der Benutzer ist nicht in dieser Gruppe, oder die Gruppenänderung ist noch nicht aktiv.Argument list too longbash: /usr/bin/rm: Argument list too longDie Shell hat * durch alle passenden Dateinamen ersetzt, und die Liste wurde größer, als der Kernel für einen Befehl erlaubt. Der Befehl wurde gar nicht gestartet. Es ist ein Limit des Aufrufs, nicht der Platte.wrong fs type, bad option, bad superblockmount: wrong fs type, bad option, bad superblock on /dev/sdX, missing codepage or helper programmount nennt hier nur eine Sammelmeldung. Der Kernel oder ein Hilfsprogramm konnte das Gerät mit dem angegebenen Typ und den Optionen nicht einbinden. Das Kernel-Log nennt meist den eigentlichen Grund.Bind for 0.0.0.0:80 failed: port is already allocatedDocker: Bind for 0.0.0.0:80 failed – port is already allocatedDocker kann den Host-Port nicht belegen, weil ihn bereits ein anderer Prozess hält: ein Container, ein Host-Dienst oder ein hängender docker-proxy.ssh: connect to host port 22: Connection refusedssh: connect to host … port 22: Connection refusedDas Paket kam an und wurde aktiv abgelehnt: Auf diesem Port lauscht kein Dienst. Das unterscheidet den Fehler von einem Timeout durch eine Firewall.rsync error: some files/attrs were not transferred (code 23)rsync error: some files/attrs were not transferred (code 23)rsync hat den Lauf beendet, aber nicht alles übertragen. Code 23 ist eine Sammelmeldung – die Zeilen davor nennen Datei und Grund.gzip: stdin: unexpected end of filetar/gzip: Unexpected EOF in archive – unexpected end of fileDas Archiv endet mitten in den Daten. Es fehlen Bytes, deshalb kann tar das letzte Mitglied nicht lesen und bricht ab.NO_PUBKEY – The following signatures couldn't be verifiedapt: NO_PUBKEY – The following signatures couldn't be verifiedapt kennt den öffentlichen Schlüssel nicht, mit dem das Repository signiert ist. Bis der Key da ist, werden Pakete aus dieser Quelle nicht installiert.cron: job is listed but never runsCronjob läuft nicht – obwohl der Eintrag existiertCron startet mit einer minimalen Umgebung. Skripte, die in der Shell funktionieren, scheitern dort an PATH, relativen Pfaden oder fehlenden Variablen.ERROR 2002 (HY000)MySQL / MariaDB: ERROR 2002 (HY000) – Verbindung über Socket nicht möglichDer Client sucht die Unix-Socket-Datei des Servers und findet dort keinen laufenden Server – meist ist die Datenbank gestoppt, oder Client und Server nutzen verschiedene Socket-Pfade.ERROR 1045 (28000)MySQL / MariaDB: ERROR 1045 (28000) Zugriff verweigertDer Server wurde erreicht, lehnt die Anmeldung aber ab: falsches Passwort, ein Benutzer, den es für diesen Host nicht gibt, oder ein Anmelde-Plugin, das kein Passwort erlaubt.ERROR 1040 (08004): Too many connectionsMySQL / MariaDB: ERROR 1040 (08004): Too many connectionsDer Server hat max_connections erreicht und lehnt jeden neuen Client ab. Das Limit allein anzuheben löst es selten. Die Frage ist, warum Verbindungen offen bleiben: undichte Apps, langsame Abfragen oder eine Lastspitze.MySQL server has gone awayERROR 2006 (HY000): MySQL server has gone awayDer Client hat eine Abfrage über eine Verbindung geschickt, die der Server schon geschlossen hatte. Es ist ein Symptom mit drei häufigen Quellen: Der Server hat eine untätige Verbindung geschlossen, die Abfrage war zu groß, oder der Server wurde neu gestartet.FATAL: password authentication failed for userPostgreSQL: FATAL: password authentication failed for userDer Server hat eine passende pg_hba.conf-Zeile gefunden, die ein Passwort verlangt, und das Passwort wurde nicht akzeptiert. Das Server-Log nennt die passende Zeile und meist den Grund.FATAL: no pg_hba.conf entry for hostPostgreSQL: FATAL: no pg_hba.conf entry for host, user, databaseDer Server ist erreichbar, aber seine Zugriffsdatei pg_hba.conf hat keine Zeile, die zu diesem Client passt: Adresse, Benutzer, Datenbank und SSL-Modus. Er lehnt ab, noch bevor er ein Passwort verlangt.Table is marked as crashed and should be repairedMariaDB / MySQL: Table is marked as crashed and should be repaired (ERROR 1194 / 145)Die Tabellendateien einer MyISAM- oder Aria-Tabelle sind inkonsistent, meist weil der Server mitten in einem Schreibvorgang stehen blieb. Die Tabelle ist gesperrt, bis sie geprüft und repariert wird. InnoDB-Tabellen erholen sich selbst und zeigen das selten.ERROR 1064 (42000)MariaDB/MySQL: ERROR 1064 (42000) – SyntaxfehlerDer Server hat das Statement nicht verstanden: Die Syntax ist falsch – oft ein reserviertes Wort als Spaltenname, MySQL-8-Syntax auf MariaDB oder ein nicht escaptes Anführungszeichen.ERROR 1067 (42000)ERROR 1067 (42000): Invalid default value for …Der Server lehnt den Default-Wert einer Spalte ab: Er ist für den Typ ungültig oder widerspricht dem aktiven sql_mode, etwa ein Null-Datum unter NO_ZERO_DATE.ERROR 2003 (HY000)ERROR 2003 (HY000): Can't connect to MySQL server (10061)Der Client hat den Server erreicht, aber der Port hat die Verbindung abgelehnt: Der Dienst läuft nicht, lauscht nur auf 127.0.0.1 oder eine Firewall verwirft das Paket.FATAL: sorry, too many clients alreadyPostgreSQL: FATAL – sorry, too many clients alreadyPostgreSQL hat alle Verbindungsslots belegt. Neue Clients werden abgelehnt, bis eine Verbindung frei wird – die Ursache ist fast immer ein Pool oder ein Leak, nicht das Limit.OOM command not allowed when used memory > 'maxmemory'Redis: OOM command not allowed when used memory > 'maxmemory'Der Speicher liegt über maxmemory und die Policy noeviction verbietet das Verdrängen. Schreibende Befehle werden abgelehnt, lesende funktionieren weiter.Allowed memory size exhaustedPHP Fatal error: Allowed memory size exhaustedEin PHP-Skript hat mehr Speicher verbraucht, als memory_limit erlaubt, und PHP hat es gestoppt. Die Voreinstellung von 128 MB ist für Bildverarbeitung, Importe oder große Plugins oft zu wenig.Maximum execution time exceededPHP Fatal error: Maximum execution time of 30 seconds exceededEin PHP-Skript lief länger als max_execution_time (für Webanfragen standardmäßig 30 Sekunden) und PHP hat es abgebrochen.server reached pm.max_children settingPHP-FPM: [pool www] server reached pm.max_children setting, consider raising itAlle PHP-Worker des Pools sind beschäftigt. Neue Anfragen warten, bis einer frei wird, die Seiten werden langsam, und nginx kann 502 oder 504 liefern. Die Ursache sind entweder zu wenige Worker für die Last oder Worker, die an etwas Langsamem hängen.Call to undefined function mysqli_connect()PHP Fatal error: Uncaught Error: Call to undefined function mysqli_connect()Das PHP, das deine Seite ausführt, hat keine mysqli-Erweiterung geladen. Der Code ist in Ordnung, das Modul fehlt für diese PHP-Version oder diese SAPI (CLI und PHP-FPM haben getrennte Konfigurationen).Cannot modify header information - headers already sentPHP Warning: Cannot modify header information - headers already sent by (output started at ...)PHP sendet HTTP-Header (Weiterleitung, Cookie, Session) nur vor jeder Ausgabe im Body. Etwas hat vorher Text ausgegeben, auch nur ein Leerzeichen oder ein verstecktes Byte. Die Meldung nennt Datei und Zeile, in der die Ausgabe begann.The uploaded file exceeds the upload_max_filesize directive in php.iniPHP: The uploaded file exceeds the upload_max_filesize directive in php.iniPHP hat den Upload abgelehnt, weil die Datei größer als upload_max_filesize ist oder die ganze Anfrage größer als post_max_size. Mehrere Limits greifen in einer Kette, vom Webserver bis zu PHP.PHP Parse error: syntax error, unexpected tokenPHP Parse error: syntax error, unexpected tokenPHP konnte die Datei nicht kompilieren und führt sie gar nicht aus. Die gemeldete Zeile ist häufig nur die Folge eines Fehlers davor.FRITZ!BoxFRITZ!Box Passwort vergessen – so kommen Sie wieder reinSie erreichen die Anmeldeseite, kennen aber das Kennwort nicht mehr. Meist steht das Standardkennwort auf der Geräteunterseite, wenn es nie geändert wurde.fritz.box öffnet nichtfritz.box lässt sich nicht öffnen – was tun?Die Adresse fritz.box funktioniert nur im eigenen Heimnetz und braucht eine funktionierende Verbindung zur Box. Oft hilft der Weg über die IP-Adresse 192.168.178.1.WerkseinstellungenFRITZ!Box auf Werkseinstellungen zurücksetzenEin Zurücksetzen löscht alle eigenen Einstellungen. Es ist der letzte Ausweg, nicht der erste. Sichern Sie vorher, wenn Sie noch Zugriff haben.Kein InternetFRITZ!Box: Kein Internet – was Sie selbst prüfen könnenDas WLAN funktioniert, aber es kommt keine Verbindung ins Internet. Dann hilft eine Unterscheidung: Ist nur ein Gerät betroffen, die ganze Box oder die Leitung?WLAN-KennwortFRITZ!Box: WLAN-Passwort finden oder ändernDas WLAN-Kennwort (Netzwerkschlüssel) steht ab Werk auf dem Aufkleber der Box. Es lässt sich auch in der Oberfläche ansehen und ändern, wenn Sie Zugang haben.WLANWLAN langsam: Woran es liegen kann und was Sie prüfen könnenIhr Gerät ist mit dem WLAN verbunden, aber alles reagiert träge. Oft liegt es nicht am Anschluss des Providers, sondern am Funkweg zwischen Router und Gerät oder an einem überlasteten Netz.WLAN-AbbruchWLAN bricht immer wieder ab: Ursachen und PrüfungDie Verbindung steht, fällt dann kurz aus und kommt zurück. Das deutet meist auf schwaches oder gestörtes Funksignal, einen Gerätefehler oder einen Router hin, der überlastet ist.WLAN-KanalWLAN-Kanal wechseln: 2,4 GHz oder 5 GHz, was passt?Viele WLAN-Probleme entstehen, weil sich Netze gegenseitig stören. Mit dem passenden Band und einem freien Kanal wird die Verbindung oft stabiler.Repeater/MeshWLAN Repeater oder Mesh: Was ist für Ihr Zuhause sinnvoll?Wenn das WLAN nicht in jeden Raum reicht, gibt es mehrere Wege. Ein Repeater ist meist die einfachere Lösung, ein Mesh-System die umfassendere. Entscheidend sind Aufstellung und Anbindung.Kein InternetWLAN verbunden, aber kein Internet: Ursachen und PrüfungDas Gerät ist mit dem Router verbunden, aber Webseiten und Apps laden nicht. Der Fehler kann am Gerät, am Router, an der Leitung des Anbieters oder an der Namensauflösung liegen.RouterRouter richtig neu starten – und wann es etwas bringtEin Neustart löst viele kleine Störungen: hängende Verbindungen, volle Tabellen im Router oder eine verlorene Einwahl. Wichtig ist die richtige Reihenfolge, sonst bekommen Geräte keine saubere Adresse.GatewayIP-Adresse und Gateway im Heimnetz findenDas Gateway ist in einem Heimnetz fast immer der Router. Seine Adresse brauchen Sie, um das Router-Menü zu öffnen. Ihre eigene IP-Adresse zeigt, ob Sie überhaupt im Netz angekommen sind.DNSDNS-Server wechseln: wann, wo und mit welchen RisikenDNS übersetzt Namen wie example.com in Adressen. Antwortet der DNS-Server Ihres Anbieters nicht, scheinen die Webseiten tot, obwohl die Leitung funktioniert. Ein anderer DNS-Server kann das umgehen.SpeedtestSpeedtest zeigt weniger als im Vertrag: woran es liegtDie Vertragsgeschwindigkeit ist die Leistung der Leitung bis zum Router. Was an Ihrem Gerät ankommt, hängt von WLAN, Kabel, Gerät und Auslastung ab. Ein einzelner Test im WLAN sagt darum wenig.PortfreigabePortfreigabe geht nicht: DS-Lite, CGNAT, FirewallEine Portfreigabe leitet Anfragen von außen an ein Gerät im Heimnetz weiter. Sie scheitert oft nicht an der Einstellung, sondern daran, dass Ihr Anschluss gar keine öffentliche IPv4-Adresse hat.DruckerDrucker im Heimnetz nicht gefunden: Was tun?Der Drucker ist eingeschaltet, doch PC, Mac oder Handy finden ihn nicht. Meist sind Gerät und Drucker nicht im selben Netz, oder der Drucker hat eine neue IP-Adresse bekommen.Smart-TVSmart-TV oder Chromecast verbindet nicht mit dem WLANStreamen vom Handy zum Fernseher funktioniert nur, wenn beide im selben lokalen Netz sind. Dienste wie Casting und AirPlay nutzen mDNS, das nicht über Netzgrenzen hinweg läuft.GastnetzGastnetz im Router einrichten: wie und warumEin Gastnetz gibt Besuchern Internet, trennt sie aber von Ihrem Heimnetz. Genau diese Trennung ist gewollt, hat aber zur Folge, dass Drucker, Fernseher und NAS dort nicht erreichbar sind.Doppel-NATZwei Router hintereinander: Doppel-NAT erkennenHängt ein Router hinter einem anderen, übersetzt jeder die Adressen einmal. Das nennt man Doppel-NAT. Portfreigaben, Online-Spiele und Fernzugriff funktionieren dann oft nicht.FernzugriffNAS oder Heim-PC von unterwegs erreichenVon außen kommen Sie nur ins Heimnetz, wenn der Router den Zugriff erlaubt. Am sichersten ist ein VPN. Eine Portfreigabe ins Internet ist möglich, aber riskanter.