# German translation of Basic Firewall (2.0.0-beta7)
# Copyright (c) 2026 by the German translation team
#
msgid ""
msgstr ""
"Project-Id-Version: Basic Firewall (2.0.0-beta7)\n"
"POT-Creation-Date: 2026-09-13 18:40+0000\n"
"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
"Language-Team: German\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"

msgid "Body"
msgstr "Textkörper"
msgid "Status"
msgstr "Status"
msgid "Delete"
msgstr "Löschen"
msgid "Operations"
msgstr "Aktionen"
msgid "Value"
msgstr "Wert"
msgid "Username"
msgstr "Benutzername"
msgid "Item"
msgstr "Element"
msgid "Type"
msgstr "Typ"
msgid "yes"
msgstr "Ja"
msgid "List"
msgstr "Liste"
msgid "Subject"
msgstr "Betreff"
msgid "Cancel"
msgstr "Abbrechen"
msgid "Remove"
msgstr "Entfernen"
msgid "Log"
msgstr "Protokoll"
msgid "Disabled"
msgstr "Deaktiviert"
msgid "Enabled"
msgstr "Aktiviert"
msgid "unknown"
msgstr "unbekannt"
msgid "Requested"
msgstr "Angefordert"
msgid "Logging"
msgstr "Protokollierung"
msgid "Download"
msgstr "Herunterladen"
msgid "Version"
msgstr "Version"
msgid "File"
msgstr "Datei"
msgid "Edit"
msgstr "Bearbeiten"
msgid "Size"
msgstr "Größe"
msgid "Reset"
msgstr "Zurücksetzen"
msgid "None"
msgstr "Keine"
msgid "Scheme"
msgstr "Schema"
msgid "Test"
msgstr "Test"
msgid "Message"
msgstr "Benachrichtigung"
msgid "Response"
msgstr "Antwort"
msgid "Password"
msgstr "Passwort"
msgid "Weight"
msgstr "Gewichtung"
msgid "Variable"
msgstr "Variable"
msgid "none"
msgstr "keine"
msgid "Category"
msgstr "Kategorie"
msgid "Name"
msgstr "Name"
msgid "Import"
msgstr "Importieren"
msgid "Export"
msgstr "Exportieren"
msgid "General settings"
msgstr "Allgemeine Einstellungen"
msgid "Field"
msgstr "Feld"
msgid "Label"
msgstr "Beschriftung"
msgid "Summary"
msgstr "Zusammenfassung"
msgid "Format"
msgstr "Format"
msgid "Path"
msgstr "Pfad"
msgid "Refresh"
msgstr "Aktualisieren"
msgid "never"
msgstr "nie"
msgid "Theme"
msgstr "Theme"
msgid "name"
msgstr "Name"
msgid "Unknown"
msgstr "Unbekannt"
msgid "Email"
msgstr "E-Mail"
msgid "Error"
msgstr "Fehler"
msgid "no"
msgstr "Nein"
msgid "Include"
msgstr "Einschließen"
msgid "days"
msgstr "Tag(e)"
msgid "Points"
msgstr "Punkte"
msgid "Date format"
msgstr "Datumsformat"
msgid "Block"
msgstr "Block"
msgid "Host"
msgstr "Host"
msgid "Never"
msgstr "Nie"
msgid "Out of date"
msgstr "Veraltet"
msgid "Header"
msgstr "Kopfzeile"
msgid "Score"
msgstr "Punktzahl"
msgid "Filter"
msgstr "Filter"
msgid "Location"
msgstr "Ort"
msgid "Variable name"
msgstr "Variablenname"
msgid "Severity"
msgstr "Schweregrad"
msgid "Global settings"
msgstr "Globale Einstellungen"
msgid "Contains"
msgstr "Enthält"
msgid "Add condition"
msgstr "Bedingung hinzufügen"
msgid "Conditions"
msgstr "Bedingungen"
msgid "Mode"
msgstr "Modus"
msgid "Normal"
msgstr "Normal"
msgid "Warning"
msgstr "Warnung"
msgid "Advanced"
msgstr "Erweitert"
msgid "Cache directory"
msgstr "Cache-Verzeichnis"
msgid "Current"
msgstr "Aktuell"
msgid "Address"
msgstr "Adresse"
msgid "State"
msgstr "Status"
msgid "added"
msgstr "hinzugefügt"
msgid "General"
msgstr "Allgemein"
msgid "Method"
msgstr "Methode"
msgid "Table"
msgstr "Tabelle"
msgid "Security"
msgstr "Sicherheit"
msgid "Role"
msgstr "Rolle"
msgid "Allow"
msgstr "Zulassen"
msgid "Destination"
msgstr "Ziel"
msgid "Channel"
msgstr "Kanal"
msgid "Provider"
msgstr "Anbieter"
msgid "Operator"
msgstr "Operator"
msgid "Pattern"
msgstr "Muster"
msgid "Send to"
msgstr "Senden an"
msgid "Level"
msgstr "Ebene"
msgid "Expires"
msgstr "Läuft ab"
msgid "Postal code"
msgstr "Postleitzahl"
msgid "Latitude"
msgstr "Breitengrad"
msgid "Longitude"
msgstr "Längengrad"
msgid "Add rule"
msgstr "Regel hinzufügen"
msgid "Condition"
msgstr "Bedingung"
msgid "Delete rule"
msgstr "Regel löschen"
msgid "Rules"
msgstr "Regeln"
msgid "Database name"
msgstr "Datenbankname"
msgid "Port"
msgstr "Port"
msgid "Regular expression"
msgstr "Regulärer Ausdruck"
msgid "seconds"
msgstr "Sekunden"
msgid "Syslog"
msgstr "Systemprotokoll"
msgid "Token"
msgstr "Token"
msgid "API key"
msgstr "API-Key"
msgid "Secret key"
msgstr "Geheimer Schlüssel"
msgid "Last refresh"
msgstr "Letzte Aktualisierung"
msgid "Result"
msgstr "Ergebnis"
msgid "Source"
msgstr "Quelle"
msgid "Expired"
msgstr "Abgelaufen"
msgid "Limit"
msgstr "Begrenzung"
msgid "Query"
msgstr "Abfrage"
msgid "Period"
msgstr "Periode"
msgid "Exempt roles"
msgstr "Ausgenommene Rollen"
msgid "Negate"
msgstr "Negieren"
msgid "Notice"
msgstr "Hinweis"
msgid "Info"
msgstr "Info"
msgid "gzip"
msgstr "gzip"
msgid "Blocked"
msgstr "Gesperrt"
msgid "Reference"
msgstr "Referenz"
msgid "Rule ID"
msgstr "Regel-ID"
msgid "Match type"
msgstr "Übereinstimmungstyp"
msgid "Scoring"
msgstr "Wertung"
msgid "Driver"
msgstr "Treiber"
msgid "Match"
msgstr "Übereinstimmung"
msgid "Missing"
msgstr "Fehlt"
msgid "Document"
msgstr "Dokument"
msgid "Storage"
msgstr "Speicher"
msgid "high"
msgstr "hoch"
msgid "Reason"
msgstr "Grund"
msgid "URI"
msgstr "URI"
msgid "Headers"
msgstr "Kopfzeilen"
msgid "Client"
msgstr "Client"
msgid "Apply"
msgstr "Anwenden"
msgid "Select"
msgstr "Auswählen"
msgid "Timeout"
msgstr "Zeitüberschreitung"
msgid "Debug"
msgstr "Debuggen"
msgid "Exception"
msgstr "Exception"
msgid "Request"
msgstr "Anforderung"
msgid "Language code"
msgstr "Sprachkürzel"
msgid "current"
msgstr "aktuell"
msgid "Not configured"
msgstr "Nicht konfiguriert"
msgid "When"
msgstr "Wann"
msgid "Detail"
msgstr "Details"
msgid "Log only"
msgstr "Nur Protokollieren"
msgid "Preset"
msgstr "Voreinstellung"
msgid "Rebuild"
msgstr "Neu aufbauen"
msgid "Identifier"
msgstr "Bezeichner"
msgid "Edit rule"
msgstr "Regel bearbeiten"
msgid "Unblock"
msgstr "Entsperren"
msgid "unnamed"
msgstr "Unbenannt"
msgid "Case sensitive"
msgstr "Groß-/Kleinschreibung beachten"
msgid "User agent"
msgstr "User-Agent"
msgid "- Select -"
msgstr "- Auswählen -"
msgid "Save rule"
msgstr "Regel speichern"
msgid "Formatter"
msgstr "Anzeigeformat"
msgid "Not checked"
msgstr "Nicht markiert"
msgid "Effect"
msgstr "Effekt"
msgid "Rule"
msgstr "Regel"
msgid "Current state"
msgstr "Aktueller Status"
msgid "Presets"
msgstr "Voreinstellungen"
msgid "IP addresses"
msgstr "IP-Adressen"
msgid "City name"
msgstr "Ort"
msgid "Compression"
msgstr "Komprimierung"
msgid "Last week"
msgstr "Letzte Woche"
msgid "IP address"
msgstr "IP-Adresse"
msgid "Light"
msgstr "Hell"
msgid "Not writable"
msgstr "Nicht beschreibbar"
msgid "Entries"
msgstr "Einträge"
msgid "Path pattern"
msgstr "Pfadmuster"
msgid "Credentials"
msgstr "Zugangsdaten"
msgid "DSN"
msgstr "DSN"
msgid "CDN"
msgstr "CDN"
msgid "Last 30 days"
msgstr "Die letzten 30 Tage"
msgid "Field delimiter"
msgstr "Feldtrennzeichen"
msgid "Backend"
msgstr "Backend"
msgid "Newer"
msgstr "Neuer"
msgid "Older"
msgstr "Älter"
msgid "Site key"
msgstr "Website-Schlüssel"
msgid "- Any -"
msgstr "- Alle -"
msgid "View details"
msgstr "Details anzeigen"
msgid "Compact"
msgstr "Kompakt"
msgid "Available variables"
msgstr "Verfügbare Variablen"
msgid "Last day"
msgstr "Letzter Tag"
msgid "Rule type"
msgstr "Regeltyp"
msgid "Log file"
msgstr "Protokolldatei"
msgid "Search in"
msgstr "Suchen in"
msgid "Connection"
msgstr "Verbindung"
msgid "available"
msgstr "Verfügbar"
msgid "Emergency"
msgstr "Notfall"
msgid "Records"
msgstr "Datensätze"
msgid "Start over"
msgstr "Neu anfangen"
msgid "Alert"
msgstr "Alarm"
msgid "Critical"
msgstr "Kritisch"
msgid "Status code"
msgstr "Statuscode"
msgid "Action name"
msgstr "Aktionsname"
msgid "Request method"
msgstr "Abfragemethode"
msgid "Delivery"
msgstr "Lieferung"
msgid "Minimum score"
msgstr "Minimale Punktzahl"
msgid "Syslog facility"
msgstr "Syslog Ursprung"
msgid "Administrative label"
msgstr "Administrative Beschriftung"
msgid "Exact"
msgstr "Genau"
msgid "Minimum severity"
msgstr "Minimaler Schweregrad"
msgid "Cookies"
msgstr "Cookies"
msgid "Dark"
msgstr "Dunkel"
msgid "Event ID"
msgstr "Ereignis-ID"
msgid "HTTP method"
msgstr "HTTP Methode"
msgid "Geolocation"
msgstr "Geographische Koordinaten"
msgid "in @time"
msgstr "in @time"
msgid "Window"
msgstr "Fenster"
msgid "File storage"
msgstr "Dateispeicherplatz"
msgid "Username and password"
msgstr "Benutzername und Passwort"
msgid "Verification timeout"
msgstr "Zeitfenster für Verifizierung"
msgid "Blocked by"
msgstr "Gesperrt von"
msgid "Port number"
msgstr "Portnummer"
msgid "Parameter name"
msgstr "Name des Parameters"
msgid "Storage backend"
msgstr "Speicher-Backend"
msgid "Request path"
msgstr "URL-Pfad"
msgid "HTTP status code"
msgstr "HTTP-Statuscode"
msgid "Operating mode"
msgstr "Betriebsart"
msgid "Logging settings"
msgstr "Protokollierungseinstellungen"
msgid "Weight for @label"
msgstr "Gewichtung für @label"
msgid "Rate limit"
msgstr "Ratenbegrenzung"
msgid "Webhook URL"
msgstr "Webhook-URL"
msgid "Google reCAPTCHA"
msgstr "Google reCAPTCHA"
msgid "Path patterns"
msgstr "Pfadmuster"
msgid "Send from"
msgstr "Senden von"
msgid "unchanged"
msgstr "unverändert"
msgid "Export rule"
msgstr "Regel exportieren"
msgid "Path or URL"
msgstr "Pfad oder URL"
msgid "Window (seconds)"
msgstr "Fenster (Sekunden)"
msgid "Blocked client"
msgstr "Blockierter Client"
msgid "Look up by reference"
msgstr "Suchen Sie nach Referenz"
msgid ""
"The <em>@backend</em> storage could not be read, so nothing can be "
"listed. Check the Storage tab and the status report. The lookup above "
"still works if you know the address."
msgstr ""
"Der Speicher <em>@backend</em> konnte nicht gelesen werden, daher kann "
"nichts aufgelistet werden. Überprüfen Sie die Registerkarte "
"„Speicher“ und den Statusbericht. Die obige Suche funktioniert "
"immer noch, wenn Sie die Adresse kennen."
msgid "Back to blocked clients"
msgstr "Zurück zu blockierten Clients"
msgid "No client address was given."
msgstr "Es wurde keine Kundenadresse angegeben."
msgid "Why %key was blocked"
msgstr "Warum %key blockiert wurde"
msgid "The request that triggered the block"
msgstr "Die Anfrage, die die Blockierung ausgelöst hat"
msgid "Request headers (sensitive values redacted)"
msgstr "Anforderungsheader (sensible Werte geschwärzt)"
msgid "Unblock this client"
msgstr "Entsperren Sie diesen Client"
msgid ""
"The @backend storage backend cannot be enumerated, so it cannot be "
"searched by reference. Use basic-firewall:check with the client IP "
"instead."
msgstr ""
"Das Speicher-Backend @backend kann nicht aufgezählt werden und kann "
"daher nicht per Referenz durchsucht werden. Verwenden Sie stattdessen "
"„basic-firewall:check“ mit der Client-IP."
msgid ""
"The reference from the \"Request blocked\" message shown to the "
"visitor. Case does not matter."
msgstr ""
"Der Verweis aus der Meldung „Anfrage blockiert“, die dem Besucher "
"angezeigt wird. Der Fall spielt keine Rolle."
msgid "No currently blocked request matches reference %ref."
msgstr ""
"Keine derzeit blockierte Anfrage stimmt mit der Referenz %ref "
"überein."
msgid ""
"The %backend storage cannot be searched by reference. Look up the "
"client by IP address instead."
msgstr ""
"Der %backend-Speicher kann nicht per Referenz durchsucht werden. "
"Suchen Sie stattdessen nach der IP-Adresse des Clients."
msgid "Reference %ref belongs to %key"
msgstr "Referenz %ref gehört zu %key"
msgid "View full detail"
msgstr "Alle Details anzeigen"
msgid "Challenge provider for this rule"
msgstr "Anbieter der Anfechtung für diese Regel"
msgid "Challenge (@provider)"
msgstr "Herausforderung (@provider)"
msgid ""
"%provider needs its @keys configured on the <a href=\":url\">Challenge "
"tab</a> before a rule can use it. Without them the firewall refuses to "
"start."
msgstr ""
"%provider muss auf der Registerkarte <a "
"href=\":url\">„Challenge“</a> mit den entsprechenden @keys "
"konfiguriert werden, bevor eine Regel ihn verwenden kann. Ohne diese "
"Angaben weigert sich die Firewall, zu starten."
msgid "Use the site default (@provider)"
msgstr "Die Standardeinstellung der Website verwenden (@provider)"
msgid "@class (custom provider)"
msgstr "@class (benutzerdefinierter Provider)"
msgid "Challenge with"
msgstr "Herausforderung mit"
msgid ""
"Which challenge this rule asks for. The site default is "
"<em>@default</em>. A provider that verifies against a third party "
"needs its credentials filled in on the <a href=\":url\">Challenge "
"tab</a> before a rule can use it."
msgstr ""
"Welche Herausforderung diese Regel erfordert. Die Standardeinstellung "
"der Website lautet <em>@default</em>. Bei einem Anbieter, der die "
"Authentifizierung über einen Drittanbieter durchführt, müssen "
"dessen Anmeldedaten auf der <a href=\":url\">Registerkarte "
"„Challenge“</a> eingegeben werden, bevor eine Regel diesen "
"Anbieter nutzen kann."
msgid ""
"Evaluation happens before Drupal's own page cache, but <em>after</em> "
"any cache in front of Drupal. A reverse proxy or CDN serving a "
"response from its own store answers without reaching PHP, so no rule "
"is evaluated for that request at all. Responses earned by solving a "
"challenge are marked private so a shared cache will not keep them, but "
"a rule added to a path that is already cached at the edge does not "
"take effect there until that copy expires or is purged."
msgstr ""
"Die Auswertung erfolgt vor dem Drupal-eigenen Seiten-Cache, aber "
"<em>nach</em> jedem Cache, der vor Drupal liegt. Ein Reverse-Proxy "
"oder ein CDN, das eine Antwort aus seinem eigenen Speicher "
"bereitstellt, antwortet, ohne PHP zu erreichen, sodass für diese "
"Anfrage überhaupt keine Regel ausgewertet wird. Antworten, die durch "
"das Lösen einer Herausforderung gewonnen wurden, werden als "
"„privat“ gekennzeichnet, sodass ein gemeinsam genutzter Cache sie "
"nicht speichert; eine Regel, die einem Pfad hinzugefügt wird, der am "
"Edge bereits zwischengespeichert ist, wird dort jedoch erst wirksam, "
"wenn diese Kopie abläuft oder gelöscht wird."
msgid ""
"Matches are raised as exceptions for the host application to answer, "
"which is what a framework or a test suite wants rather than a live "
"site. A matching rule is refused with 403. <strong>Challenge rules "
"cannot be served in this mode</strong> — the library reports that an "
"interstitial is required without producing one, so those rules refuse "
"the visitor instead of offering the puzzle. Switch to \"Block\" for "
"challenges to work."
msgstr ""
"Übereinstimmungen werden als Ausnahmen ausgelöst, auf die die "
"Host-Anwendung reagieren muss – was eher den Anforderungen eines "
"Frameworks oder einer Testsuite entspricht als denen einer "
"Live-Website. Eine übereinstimmende Regel wird mit dem Status 403 "
"abgelehnt. <strong>Challenge-Regeln können in diesem Modus nicht "
"ausgeführt werden</strong> – die Bibliothek meldet, dass ein "
"Interstitial erforderlich ist, ohne jedoch eines zu erzeugen, sodass "
"diese Regeln den Besucher ablehnen, anstatt ihm das Rätsel "
"anzubieten. Wechseln Sie zu „Blockieren“, damit die Challenges "
"funktionieren."
msgid ""
"Matches are raised as exceptions for the host application to answer, "
"which is what a framework or a test suite wants rather than a live "
"site. A matching rule is refused with 403. Switch the operating mode "
"to \"Block\" to have the firewall serve its own rejection."
msgstr ""
"Übereinstimmungen werden als Ausnahmen ausgelöst, auf die die "
"Host-Anwendung reagieren muss – was eher den Anforderungen eines "
"Frameworks oder einer Testsuite entspricht als denen einer "
"Live-Website. Eine übereinstimmende Regel wird mit dem Statuscode 403 "
"abgelehnt. Wechseln Sie in den Betriebsmodus „Blockieren“, damit "
"die Firewall die Ablehnung selbst durchführt."
msgid ""
"A challenge rule matched but the firewall is in exception mode, which "
"cannot serve an interstitial, so the request was refused instead. "
"Path: @path, reason: @reason."
msgstr ""
"Eine Challenge-Regel wurde erfüllt, aber die Firewall befindet sich "
"im Ausnahmemodus, in dem keine Interstitials bereitgestellt werden "
"können, sodass die Anfrage stattdessen abgelehnt wurde. Pfad: @path, "
"Grund: @reason."
msgid "Imported rule lists will be refreshed on cron, at most once an hour."
msgstr ""
"Importierte Regellisten werden auf Cron höchstens einmal pro Stunde "
"aktualisiert."
msgid ""
"These rules use a condition that never matched before kanopi/firewall "
"2.18.0 and starts matching now — check them before this reaches "
"production: @rules"
msgstr ""
"Diese Regeln verwenden eine Bedingung, die vor Kanopi/Firewall 2.18.0 "
"noch nie erfüllt wurde und jetzt mit der Übereinstimmung beginnt – "
"überprüfen Sie sie, bevor sie in Produktion geht: @rules"
msgid "No rate limit rules needed pinning."
msgstr "Es sind keine Ratenbegrenzungsregeln erforderlich."
msgid ""
"These rate limit rules cap every path on the site, including paths "
"they do not list, and now say so on their edit form where it can be "
"turned off: @rules"
msgstr ""
"Diese Ratenbegrenzungsregeln begrenzen jeden Pfad auf der Website, "
"einschließlich der Pfade, die sie nicht auflisten, und geben dies "
"jetzt in ihrem Bearbeitungsformular an, wo es deaktiviert werden kann: "
"@rules"
msgid "The dead trusted proxies key was not present."
msgstr ""
"Der Schlüssel des toten vertrauenswürdigen Proxys war nicht "
"vorhanden."
msgid ""
"Removed the unused trusted_proxies_from_drupal setting. It was never "
"read: the firewall reuses Drupal's reverse proxy settings whenever "
"they are configured, decided in settings.php before Drupal exists, "
"where a configuration value cannot be consulted."
msgstr ""
"Die nicht verwendete Einstellung „trusted_proxies_from_drupal“ "
"wurde entfernt. Es wurde nie gelesen: Die Firewall verwendet die "
"Reverse-Proxy-Einstellungen von Drupal immer dann wieder, wenn sie "
"konfiguriert werden. Dies wird in der Datei „settings.php“ "
"festgelegt, bevor Drupal existiert, wo ein Konfigurationswert nicht "
"eingesehen werden kann."
msgid "Imported lists"
msgstr "Importierte Listen"
msgid "Imported rule list settings"
msgstr "Importierte Regellisteneinstellungen"
msgid ""
"Seconds between cron checking whether a list is due a refresh, 0 to "
"never refresh on cron"
msgstr ""
"Sekunden zwischen der Cron-Prüfung, ob eine Liste aktualisiert werden "
"muss, 0, um nie bei Cron zu aktualisieren"
msgid "Imported rule lists"
msgstr "Importierte Regellisten"
msgid "Imported rule list"
msgstr "Importierte Regelliste"
msgid "Name, used in logs and to attribute a match"
msgstr ""
"Name, der in Protokollen und zur Zuordnung einer Übereinstimmung "
"verwendet wird"
msgid "URL, path or stream URI the list is read from"
msgstr "URL, Pfad oder Stream-URI, aus der die Liste gelesen wird"
msgid "Wire format the list is published in"
msgstr "Wire-Format, in dem die Liste veröffentlicht wird"
msgid "Compression the list body arrives in"
msgstr "Komprimierung, in der der Listenkörper ankommt"
msgid "Dot-path selecting the records to keep"
msgstr "Punktpfad zur Auswahl der aufzubewahrenden Datensätze"
msgid "Filter rules, one per line, or a YAML sequence"
msgstr "Filterregeln, eine pro Zeile oder eine YAML-Sequenz"
msgid "Output shape for each record"
msgstr "Ausgabeform für jeden Datensatz"
msgid "Shape every entry must conform to"
msgstr "Jeder Eintrag muss der Form entsprechen"
msgid "Largest entry-count change a refresh may make, 0 for no limit"
msgstr ""
"Größte Änderung der Eintragsanzahl, die eine Aktualisierung "
"vornehmen kann, 0 für keine Begrenzung"
msgid "Seconds before the cached copy is revalidated, 0 for the default"
msgstr ""
"Sekunden, bevor die zwischengespeicherte Kopie erneut validiert wird, "
"0 für den Standardwert"
msgid "What happens when the list cannot be read"
msgstr "Was passiert, wenn die Liste nicht gelesen werden kann?"
msgid "Fail loudly rather than contributing nothing"
msgstr "Scheitern Sie lautstark, anstatt nichts beizutragen"
msgid "CSV and TSV: the first row names the columns"
msgstr "CSV und TSV: Die erste Zeile benennt die Spalten"
msgid "Text formats: comment marker, empty to keep comments"
msgstr "Textformate: Kommentarmarkierung, leer, um Kommentare beizubehalten"
msgid "CSV and TSV: field delimiter, empty for the format default"
msgstr "CSV und TSV: Feldtrennzeichen, leer für die Formatvorgabe"
msgid "How the list is requested"
msgstr "Wie die Liste angefordert wird"
msgid "Request headers, one \"Name: value\" per line"
msgstr "Anforderungsheader, ein „Name: Wert“ pro Zeile"
msgid "Seconds to wait, 0 for the default"
msgstr "Sekunden zum Warten, 0 für die Standardeinstellung"
msgid "Redirect hops to follow"
msgstr "Weiterleiten von Hops zum Folgen"
msgid "Credential scheme"
msgstr "Berechtigungsschema"
msgid "Header or query parameter name"
msgstr "Header- oder Abfrageparametername"
msgid "Header or query parameter value"
msgstr "Header- oder Abfrageparameterwert"
msgid "Permit a credential over plain http"
msgstr "Erlauben Sie Anmeldeinformationen über einfaches http"
msgid "Log table name"
msgstr "Name der Protokolltabelle"
msgid "Days of history to keep, 0 to keep everything"
msgstr "Tage der Geschichte, die es zu behalten gilt, 0, um alles zu behalten"
msgid "Hold records in memory and write them in one go"
msgstr ""
"Speichern Sie Aufzeichnungen im Gedächtnis und schreiben Sie sie in "
"einem Rutsch auf"
msgid "Where the log connection credentials come from"
msgstr "Woher die Anmeldeinformationen für die Protokollverbindung stammen"
msgid "Which list the bot condition consults"
msgstr "Welche Liste die Bot-Bedingung konsultiert"
msgid "Whether the location is looked up here or read from a CDN header"
msgstr ""
"Ob der Standort hier nachgeschlagen oder aus einem CDN-Header gelesen "
"wird"
msgid "Which CDN the geo headers come from"
msgstr "Von welchem ​​CDN die Geo-Header stammen"
msgid "Header names for a custom CDN, one \"field: Header-Name\" per line"
msgstr ""
"Header-Namen für ein benutzerdefiniertes CDN, ein „Feld: "
"Header-Name“ pro Zeile"
msgid "Limit paths with no rule of their own"
msgstr "Begrenzen Sie Wege ohne eigene Regel"
msgid "Fallback HTTP status code"
msgstr "Fallback-HTTP-Statuscode"
msgid "Fallback block duration in seconds"
msgstr "Dauer des Fallback-Blocks in Sekunden"
msgid "This is not valid YAML: @message"
msgstr "Dies ist kein gültiges YAML: @message"
msgid ""
"The YAML must describe a mapping of configuration keys, not a single "
"value."
msgstr ""
"Die YAML muss eine Zuordnung von Konfigurationsschlüsseln "
"beschreiben, nicht einen einzelnen Wert."
msgid ""
"The <code>@key</code> key is managed by the Presets tab and cannot be "
"set here, because doing so would drop the presets that are switched "
"on."
msgstr ""
"Die Taste <code>@key</code> wird von der Registerkarte "
"„Voreinstellungen“ verwaltet und kann hier nicht festgelegt "
"werden, da sonst die aktivierten Voreinstellungen verloren gehen "
"würden."
msgid "Plugin entry @index must be a mapping."
msgstr "Plugin-Eintrag @index muss eine Zuordnung sein."
msgid "Plugin entry @index has no <code>plugin</code> class name."
msgstr "Plugin-Eintrag @index hat keinen <code>plugin</code>-Klassennamen."
msgid ""
"The plugin class %class must not begin with a backslash; the library "
"will not resolve it."
msgstr ""
"Die Plugin-Klasse %class darf nicht mit einem Backslash beginnen; Die "
"Bibliothek wird es nicht lösen."
msgid ""
"The plugin class %class does not exist. In YAML, backslashes inside a "
"double quoted string must be doubled, for example "
"<code>\"Kanopi\\\\Firewall\\\\Plugins\\\\Url\"</code>."
msgstr ""
"Die Plugin-Klasse %class existiert nicht. In YAML müssen Backslashes "
"innerhalb einer Zeichenfolge in doppelte Anführungszeichen verdoppelt "
"werden, zum Beispiel "
"<code>\"Kanopi\\\\Firewall\\\\Plugins\\\\Url\"</code>."
msgid ""
"Plugin entry @index has an unknown response %response. Use allow, "
"block or challenge."
msgstr ""
"Plugin-Eintrag @index hat eine unbekannte Antwort %response. Verwenden "
"Sie „Zulassen“, „Blockieren“ oder „Herausfordern“."
msgid ""
"The preset @name is switched on in configuration but is not used by "
"this module, because @reason. Add the rules you want from it on the "
"Rules tab instead."
msgstr ""
"Die Voreinstellung @name ist in der Konfiguration eingeschaltet, wird "
"aber von diesem Modul nicht verwendet, da @reason. Fügen Sie "
"stattdessen die gewünschten Regeln auf der Registerkarte „Regeln“ "
"hinzu."
msgid ""
"An allow rule matched, so evaluation stopped there: no block rule, "
"challenge rule or rate limit after it was reached."
msgstr ""
"Eine Zulassungsregel stimmte überein, daher wurde die Auswertung an "
"dieser Stelle gestoppt: Keine Blockierungsregel, Herausforderungsregel "
"oder Ratenbegrenzung, nachdem diese erreicht wurde."
msgid ""
"The compiled firewall configuration was written but the library "
"refuses to start from it, so no traffic is being evaluated: @message"
msgstr ""
"Die kompilierte Firewall-Konfiguration wurde geschrieben, aber die "
"Bibliothek weigert sich, davon zu starten, daher wird kein "
"Datenverkehr ausgewertet: @message"
msgid ""
"Firewall rule \"@label\" imports @count list(s), but its rule type "
"cannot use them with the installed library. They were left out of the "
"compiled configuration."
msgstr ""
"Die Firewall-Regel „@label“ importiert @count-Liste(n), ihr "
"Regeltyp kann sie jedoch nicht mit der installierten Bibliothek "
"verwenden. Sie wurden in der kompilierten Konfiguration weggelassen."
msgid "Firewall rule \"@label\": @message"
msgstr "Firewall-Regel „@label“: @message"
msgid ""
"The compiled configuration the firewall reads is in "
"<strong>@compiled</strong> mode, but this site is configured for "
"<strong>@configured</strong>. The compiled value is the one in force "
"— check the Advanced tab, your enabled presets, and anything you "
"have imported."
msgstr ""
"Die kompilierte Konfiguration, die die Firewall liest, befindet sich "
"im Modus <strong>@compiled</strong>, aber diese Site ist für "
"<strong>@configured</strong> konfiguriert. Der kompilierte Wert ist "
"der gültige – überprüfen Sie die Registerkarte „Erweitert“, "
"Ihre aktivierten Voreinstellungen und alles, was Sie importiert haben."
msgid " — COMPILED AS @compiled, which is what is in force"
msgstr " — ZUSAMMENGESTELLT ALS @compiled, was in Kraft ist"
msgid "none, every rule started"
msgstr "keine, jede Regel begann"
msgid "@count NOT RUNNING: @reasons"
msgstr "@count LÄUFT NICHT: @reasons"
msgid "Declined, so the block list was left alone."
msgstr "Abgelehnt, daher wurde die Sperrliste in Ruhe gelassen."
msgid ""
"Refusing to clear the block list: there is nobody to ask. Re-run with "
"-y to accept."
msgstr ""
"Weigerung, die Sperrliste zu löschen: Es gibt niemanden, den man "
"fragen kann. Zum Akzeptieren erneut mit -y ausführen."
msgid "The installed kanopi/firewall release cannot import rule lists."
msgstr ""
"Die installierte Kanopi/Firewall-Version kann keine Regellisten "
"importieren."
msgid "No imported list is called: @names"
msgstr "Es wird keine importierte Liste aufgerufen: @names"
msgid "No rule imports a list."
msgstr "Keine Regel importiert eine Liste."
msgid "@name: @count entries from @upstream"
msgstr "@name: @count Einträge von @upstream"
msgid "@failed of @total list(s) failed."
msgstr "@failed von @total Liste(n) ist fehlgeschlagen."
msgid "@seconds s"
msgstr "@seconds s"
msgid "never fetched"
msgstr "nie abgeholt"
msgid "stale"
msgstr "abgestanden"
msgid "@name: @count entries, @state (@upstream)"
msgstr "@name: @count Einträge, @state (@upstream)"
msgid "No rule with the identifier: @ids"
msgstr "Keine Regel mit der Kennung: @ids"
msgid "Wrote @file. @count credential(s) were removed."
msgstr "Schrieb @file. @count-Anmeldeinformationen wurden entfernt."
msgid "Nothing could be read from @file."
msgstr "Von @file konnte nichts gelesen werden."
msgid "--mode must be merge or replace."
msgstr "--mode muss „merge“ oder „replace“ sein."
msgid "The document contains no rule with the identifier: @ids"
msgstr "Das Dokument enthält keine Regel mit der Kennung: @ids"
msgid "@state: @id (@label)"
msgstr "@state: @id (@label)"
msgid "Dry run — nothing was written."
msgstr "Probelauf – es wurde nichts geschrieben."
msgid "This deletes @count existing rule(s). Continue?"
msgstr "Dadurch werden @count vorhandene Regeln gelöscht. Weitermachen?"
msgid "Declined, so nothing was imported."
msgstr "Abgelehnt, daher wurde nichts importiert."
msgid ""
"Refusing to import: --mode=replace would delete @count existing "
"rule(s) and there is nobody to ask. Re-run with -y to accept, or "
"--mode=merge to keep the rules this document does not mention."
msgstr ""
"Wenn Sie den Import verweigern: --mode=replace, würden @count "
"vorhandene Regeln gelöscht und es gibt niemanden, den Sie fragen "
"könnten. Wiederholen Sie den Vorgang mit -y, um ihn zu akzeptieren, "
"oder mit --mode=merge, um die Regeln beizubehalten, die in diesem "
"Dokument nicht erwähnt werden."
msgid "Imported @count rule(s) and the sections: @sections"
msgstr "Importierte @count-Regel(n) und die Abschnitte: @sections"
msgid ""
"Everything the firewall does, in one document you can import on "
"another site. This is not a backup of this site — it carries no user "
"data, no blocked clients, and nothing about where this site is hosted."
msgstr ""
"Alles, was die Firewall tut, können Sie in einem Dokument auf einer "
"anderen Site importieren. Dies ist kein Backup dieser Site – es "
"enthält keine Benutzerdaten, keine blockierten Clients und nichts "
"darüber, wo diese Site gehostet wird."
msgid ""
"Rules on their own are the usual thing to share. The settings sections "
"describe how this particular site is set up, which is more often "
"something the receiving site has already decided for itself."
msgstr ""
"Es ist üblich, Regeln für sich zu teilen. In den "
"Einstellungsabschnitten wird beschrieben, wie diese bestimmte Site "
"eingerichtet wird. In den meisten Fällen hat die empfangende Site "
"dies bereits selbst festgelegt."
msgid "Rules to include"
msgstr "Einzuschließende Regeln"
msgid ""
"Sharing one rule is the usual reason to be here — somebody asks how "
"you block a particular thing, and the answer is that rule rather than "
"your whole ruleset."
msgstr ""
"Das Teilen einer Regel ist der übliche Grund, hier zu sein – jemand "
"fragt, wie Sie eine bestimmte Sache blockieren, und die Antwort ist "
"diese Regel und nicht Ihr gesamter Regelsatz."
msgid "Credentials removed"
msgstr "Anmeldeinformationen entfernt"
msgid ""
"These are not in the document below and have to be set up again on the "
"site that imports it: <code>@paths</code>. A value written as "
"<code>%env(NAME)%</code> was kept, because it names an environment "
"variable rather than holding a secret."
msgstr ""
"Diese sind nicht im folgenden Dokument enthalten und müssen auf der "
"Site, die sie importiert, erneut eingerichtet werden: "
"<code>@paths</code>. Ein als <code>%env(NAME)%</code> geschriebener "
"Wert wurde beibehalten, da er eine Umgebungsvariable benennt und kein "
"Geheimnis enthält."
msgid "None — no credential was found in the sections being exported."
msgstr ""
"Keine – In den exportierten Abschnitten wurden keine "
"Anmeldeinformationen gefunden."
msgid ""
"These rules use a rule type that is not installed here, so this site "
"cannot tell which of their settings are credentials and has left them "
"as they are — check them before sharing this: @rules"
msgstr ""
"Diese Regeln verwenden einen Regeltyp, der hier nicht installiert ist, "
"daher kann diese Site nicht erkennen, welche ihrer Einstellungen "
"Anmeldeinformationen sind, und hat sie unverändert gelassen – "
"überprüfen Sie sie, bevor Sie Folgendes teilen: @rules"
msgid ""
"Nothing is selected, so this document carries no configuration at all. "
"Tick at least one section."
msgstr ""
"Da nichts ausgewählt ist, enthält dieses Dokument überhaupt keine "
"Konfiguration. Kreuzen Sie mindestens einen Abschnitt an."
msgid "Imported list settings"
msgstr "Importierte Listeneinstellungen"
msgid "Enabled flag"
msgstr "Aktiviertes Flag"
msgid ""
"Paste a document produced by the <a href=\":url\">Export</a> tab, on "
"this site or another one. Nothing is written until you have seen what "
"it would change."
msgstr ""
"Fügen Sie ein über die Registerkarte <a "
"href=\":url\">Exportieren</a> erstelltes Dokument auf dieser oder "
"einer anderen Website ein. Nichts wird geschrieben, bis Sie gesehen "
"haben, was es ändern würde."
msgid "How to apply it"
msgstr "So wenden Sie es an"
msgid ""
"Merge — add rules that are new, update ones whose identifier "
"matches, and leave the rest alone"
msgstr ""
"Zusammenführen – Fügen Sie neue Regeln hinzu, aktualisieren Sie "
"diejenigen, deren Kennung übereinstimmt, und lassen Sie den Rest in "
"Ruhe"
msgid ""
"Replace — this document becomes the whole configuration, and rules "
"it does not mention are deleted"
msgstr ""
"Ersetzen – Dieses Dokument wird zur gesamten Konfiguration und "
"Regeln, die nicht erwähnt werden, werden gelöscht"
msgid "Rules to take"
msgstr "Zu beachtende Regeln"
msgid ""
"Untick anything you do not want. A document is often somebody's whole "
"ruleset when all you wanted was one rule out of it."
msgstr ""
"Deaktivieren Sie alles, was Sie nicht möchten. Bei einem Dokument "
"handelt es sich häufig um den gesamten Regelsatz einer anderen "
"Person, obwohl Sie nur eine einzige Regel davon haben wollten."
msgid "What this will change"
msgstr "Was sich dadurch ändern wird"
msgid "Sections carried by this document: <code>@sections</code>."
msgstr "In diesem Dokument enthaltene Abschnitte: <code>@sections</code>."
msgid "updated, replacing the rule with this identifier"
msgstr "aktualisiert und die Regel durch diese Kennung ersetzt"
msgid "DELETED — this document does not contain it"
msgstr "GELÖSCHT – dieses Dokument enthält es nicht"
msgid "This document contains no rules."
msgstr "Dieses Dokument enthält keine Regeln."
msgid ""
"Credentials were removed from this export and are not being imported. "
"Set them up on this site afterwards: <code>@paths</code>."
msgstr ""
"Anmeldeinformationen wurden aus diesem Export entfernt und werden "
"nicht importiert. Richten Sie sie anschließend auf dieser Site ein: "
"<code>@paths</code>."
msgid "Advanced YAML in this document"
msgstr "Erweitertes YAML in diesem Dokument"
msgid ""
"This is merged over the whole compiled configuration, so it can add "
"plugins and change the operating mode. Read it before importing."
msgstr ""
"Dies wird über die gesamte kompilierte Konfiguration "
"zusammengeführt, sodass Plugins hinzugefügt und der Betriebsmodus "
"geändert werden können. Lesen Sie es vor dem Import."
msgid ""
"Replace mode. Every rule marked DELETED above goes, and the settings "
"sections listed are overwritten with this document. There is no undo."
msgstr ""
"Ersetzungsmodus. Alle oben als GELÖSCHT gekennzeichneten Regeln "
"werden gelöscht und die aufgeführten Einstellungsabschnitte werden "
"mit diesem Dokument überschrieben. Es gibt kein Rückgängigmachen."
msgid "Replace the configuration"
msgstr "Ersetzen Sie die Konfiguration"
msgid "Apply these changes"
msgstr "Wenden Sie diese Änderungen an"
msgid "The document was lost before it could be applied. Paste it again."
msgstr ""
"Das Dokument ging verloren, bevor es angewendet werden konnte. Fügen "
"Sie es erneut ein."
msgid ""
"Imported @count rule(s) and the sections: @sections. The configuration "
"has been recompiled."
msgstr ""
"Importierte @count-Regel(n) und die Abschnitte: @sections. Die "
"Konfiguration wurde neu kompiliert."
msgid ""
"No log handler is writing to a database table, so there is nothing to "
"report on. Add one on the <a href=\":url\">Logging</a> tab — a file "
"can be tailed, but it cannot answer \"which rule blocked the most "
"clients this week\"."
msgstr ""
"Da kein Protokollhandler in eine Datenbanktabelle schreibt, gibt es "
"nichts, worüber man berichten könnte. Fügen Sie eine auf der "
"Registerkarte <a href=\":url\">Protokollierung</a> hinzu – eine "
"Datei kann verfolgt werden, sie kann jedoch nicht beantworten, "
"„welche Regel diese Woche die meisten Clients blockiert hat“."
msgid ""
"Records name the rule that produced them, so a rule can be asked what "
"it has actually been doing."
msgstr ""
"Datensätze benennen die Regel, die sie erstellt hat, sodass eine "
"Regel gefragt werden kann, was sie tatsächlich getan hat."
msgid "Client address"
msgstr "Kundenadresse"
msgid "Matched as a prefix, so <code>203.0.113.</code> covers the range."
msgstr ""
"Wird als Präfix abgeglichen, sodass <code>203.0.113.</code> den "
"Bereich abdeckt."
msgid "Message or path contains"
msgstr "Nachricht oder Pfad enthält"
msgid "All history"
msgstr "Alles Geschichte"
msgid "Records per rule"
msgstr "Datensätze pro Regel"
msgid "@count record(s) in @table"
msgstr "@count Datensatz(e) in @table"
msgid ""
"Nothing has been recorded that matches. A firewall in log-only mode "
"records what it would have done; one that has never matched anything "
"records nothing, which is also an answer."
msgstr ""
"Es wurde nichts Passendes aufgezeichnet. Eine Firewall im "
"Nur-Protokoll-Modus zeichnet auf, was sie getan hätte; jemand, der "
"noch nie mit irgendetwas übereinstimmt, zeichnet nichts auf, was "
"ebenfalls eine Antwort ist."
msgid "(not recorded)"
msgstr "(nicht aufgezeichnet)"
msgid ""
"Created on first write if it is not there. Drupal's table prefix is "
"applied only when the log shares Drupal's own database — a table in "
"a schema you named yourself is left as typed."
msgstr ""
"Wird beim ersten Schreiben erstellt, wenn es nicht vorhanden ist. Das "
"Tabellenpräfix von Drupal wird nur angewendet, wenn das Protokoll die "
"eigene Datenbank von Drupal gemeinsam nutzt – eine Tabelle in einem "
"Schema, das Sie selbst benannt haben, bleibt wie eingegeben."
msgid "Keep history for"
msgstr "Behalten Sie die Geschichte für"
msgid ""
"0 keeps everything, which for a busy firewall is a table that only "
"grows. Older rows are removed on cron."
msgstr ""
"0 behält alles, was für eine ausgelastete Firewall eine Tabelle ist, "
"die nur wächst. Ältere Zeilen werden auf Cron entfernt."
msgid "Hold records and write them in one go"
msgstr "Halten Sie Aufzeichnungen und schreiben Sie sie in einem Rutsch"
msgid ""
"On by default, and worth leaving on. Unbuffered means one insert per "
"record while the request is being served, and the requests that "
"produce the most records are the ones already under attack."
msgstr ""
"Standardmäßig aktiviert und es lohnt sich, es eingeschaltet zu "
"lassen. Ungepuffert bedeutet eine Einfügung pro Datensatz, während "
"die Anfrage bearbeitet wird, und die Anfragen, die die meisten "
"Datensätze produzieren, sind diejenigen, die bereits angegriffen "
"werden."
msgid "Drupal's own database"
msgstr "Drupals eigene Datenbank"
msgid "A separate database, entered as fields"
msgstr "Eine separate Datenbank, eingegeben als Felder"
msgid "A separate database, entered as a DSN"
msgstr "Eine separate Datenbank, eingetragen als DSN"
msgid ""
"Reusing Drupal's connection is the usual choice, and its credentials "
"are read fresh on each request rather than written into the compiled "
"configuration. A separate database keeps the log out of the one a "
"compromised site can reach."
msgstr ""
"Die Wiederverwendung der Drupal-Verbindung ist die übliche Wahl, und "
"ihre Anmeldeinformationen werden bei jeder Anfrage neu gelesen, "
"anstatt in die kompilierte Konfiguration geschrieben zu werden. Eine "
"separate Datenbank hält das Protokoll von der Datenbank fern, auf die "
"eine gefährdete Site zugreifen kann."
msgid ""
"For example <code>mysql://user:pass@host:3306/database</code>. A DSN "
"embeds the password, so use <code>%env(YOUR_VARIABLE)%</code> for the "
"whole string to keep it out of exported configuration."
msgstr ""
"Zum Beispiel <code>mysql://user:pass@host:3306/database</code>. Ein "
"DSN bettet das Passwort ein. Verwenden Sie daher "
"<code>%env(YOUR_VARIABLE)%</code> für die gesamte Zeichenfolge, um "
"sie aus der exportierten Konfiguration herauszuhalten."
msgid ""
"The library's own Drupal hardening presets are not listed here. They "
"are written for the firewall installed on its own in front of Drupal, "
"and both block the administrative pages you would need to switch them "
"back off. Add the rules you want from them on the <a "
"href=\":url\">Rules</a> tab, where each pattern is visible and any "
"allow rule you have set up is evaluated first."
msgstr ""
"Die bibliothekseigenen Drupal-Härtungsvoreinstellungen werden hier "
"nicht aufgeführt. Sie sind für die Firewall geschrieben, die einzeln "
"vor Drupal installiert ist, und beide blockieren die "
"Verwaltungsseiten, die Sie zum Wiederausschalten benötigen würden. "
"Fügen Sie die gewünschten Regeln auf der Registerkarte <a "
"href=\":url\">Regeln</a> hinzu, wo jedes Muster sichtbar ist und alle "
"von Ihnen eingerichteten Zulassungsregeln zuerst ausgewertet werden."
msgid "1 rule"
msgid_plural "@count rules"
msgstr[0] "1 Regel"
msgstr[1] "@count Regeln"
msgid "1 imported list"
msgid_plural "@count imported lists"
msgstr[0] "1 importierte Liste"
msgstr[1] "@count importierte Listen"
msgid ""
"Some of these rules are overridden, from settings.php or by a module. "
"What is listed here is what the firewall is enforcing; it is not what "
"is stored, and it is not what an export will contain. Changes you make "
"here are saved to the stored values, and the override continues to "
"win."
msgstr ""
"Einige dieser Regeln werden von der Datei „settings.php“ oder von "
"einem Modul überschrieben. Hier wird aufgeführt, was die Firewall "
"durchsetzt. Es ist nicht das, was gespeichert wird, und es ist nicht "
"das, was ein Export enthalten wird. Änderungen, die Sie hier "
"vornehmen, werden in den gespeicherten Werten gespeichert und die "
"Überschreibung hat weiterhin Vorrang."
msgid "Also imports: @names"
msgstr "Importiert auch: @names"
msgid ""
"The installed kanopi/firewall release cannot import rule lists. Update "
"the library to use this feature."
msgstr ""
"Die installierte Kanopi/Firewall-Version kann keine Regellisten "
"importieren. Aktualisieren Sie die Bibliothek, um diese Funktion zu "
"nutzen."
msgid ""
"Rules take their entries from these lists. Copies are refreshed on "
"cron and from the command line, never while a visitor waits — so a "
"list showing as stale is being enforced from the last copy that "
"loaded, and one showing as never fetched is contributing nothing at "
"all."
msgstr ""
"Regeln entnehmen ihre Einträge diesen Listen. Kopien werden auf Cron "
"und über die Befehlszeile aktualisiert, niemals während ein Besucher "
"wartet – eine Liste, die als veraltet angezeigt wird, wird also ab "
"der letzten geladenen Kopie erzwungen, und eine Liste, die als nie "
"abgerufen angezeigt wird, trägt überhaupt nichts bei."
msgid ""
"No rule imports a list yet. Add one from the <a "
"href=\":url\">Rules</a> tab: open a rule and expand \"Imported "
"lists\"."
msgstr ""
"Noch importiert keine Regel eine Liste. Fügen Sie eine über die "
"Registerkarte <a href=\":url\">Regeln</a> hinzu: Öffnen Sie eine "
"Regel und erweitern Sie „Importierte Listen“."
msgid "@ago ago. Cached copies are written to <code>@dir</code>."
msgstr ""
"@ago vor. Zwischengespeicherte Kopien werden in <code>@dir</code> "
"geschrieben."
msgid "Never. Cached copies would be written to <code>@dir</code>."
msgstr ""
"Niemals. Zwischengespeicherte Kopien würden in <code>@dir</code> "
"geschrieben."
msgid "Force a full re-download"
msgstr "Erzwingen Sie einen vollständigen erneuten Download"
msgid ""
"Refreshing here fetches over the network while this page loads, which "
"is fine for a handful of lists and slow for a large one. On a deploy "
"or a schedule, run <code>drush basic-firewall:sources</code> instead."
msgstr ""
"Durch die Aktualisierung hier werden Daten über das Netzwerk "
"abgerufen, während diese Seite geladen wird. Dies ist für eine "
"Handvoll Listen in Ordnung und für eine große Liste langsam. Führen "
"Sie bei einer Bereitstellung oder einem Zeitplan stattdessen "
"<code>drush basic-firewall:sources</code> aus."
msgid "Never fetched — contributing nothing"
msgstr "Nie abgeholt – nichts beigetragen"
msgid "Stale, due a refresh (every @ttl)"
msgstr "Veraltet, Aktualisierung fällig (alle @ttl)"
msgid ""
"Which list to refresh could not be determined. Try again from the "
"reloaded page."
msgstr ""
"Es konnte nicht ermittelt werden, welche Liste aktualisiert werden "
"soll. Versuchen Sie es erneut auf der neu geladenen Seite."
msgid ""
"%name is no longer declared by any rule, so there was nothing to "
"refresh."
msgstr ""
"%name wird von keiner Regel mehr deklariert, daher musste nichts "
"aktualisiert werden."
msgid ""
"Nothing was refreshed. Either no rule imports a list, or the "
"configuration declares one that could not be interpreted — check the "
"log."
msgstr ""
"Es wurde nichts aktualisiert. Entweder importiert keine Regel eine "
"Liste, oder die Konfiguration deklariert eine Liste, die nicht "
"interpretiert werden konnte – überprüfen Sie das Protokoll."
msgid "%name could not be refreshed: @message"
msgstr "%name konnte nicht aktualisiert werden: @message"
msgid "%name: @count entries."
msgstr "%name: @count Einträge."
msgid "Refreshed @count lists."
msgstr "@count Listen aktualisiert."
msgid "Allowed — nothing matched"
msgstr "Erlaubt – keine Übereinstimmung"
msgid "Allowed by a rule"
msgstr "Durch eine Regel erlaubt"
msgid "Rule (one of these)"
msgstr "Regel (eine davon)"
msgid "As logged"
msgstr "Wie protokolliert"
msgid "Why more than one"
msgstr "Warum mehr als einer"
msgid ""
"These rules are the same type and response, and the firewall logs them "
"under one name, so the log cannot say which of them matched."
msgstr ""
"Diese Regeln haben den gleichen Typ und die gleiche Reaktion, und die "
"Firewall protokolliert sie unter einem Namen, sodass das Protokoll "
"nicht sagen kann, welche davon übereinstimmten."
msgid ""
"A rule can take its entries from a list published somewhere else — a "
"threat feed, a cloud provider's address ranges, a file your team keeps "
"in the repository — instead of having them typed in and kept up to "
"date by hand. Add one by editing a rule and expanding <em>Imported "
"lists</em>."
msgstr ""
"Eine Regel kann ihre Einträge einer an anderer Stelle "
"veröffentlichten Liste entnehmen – einem Bedrohungs-Feed, den "
"Adressbereichen eines Cloud-Anbieters, einer Datei, die Ihr Team im "
"Repository speichert –, anstatt sie manuell eintippen und auf dem "
"neuesten Stand halten zu müssen. Fügen Sie eine hinzu, indem Sie "
"eine Regel bearbeiten und <em>Importierte Listen</em> erweitern."
msgid ""
"The firewall never fetches a list while serving a request. Doing so "
"would make a visitor wait on somebody else's HTTP server, inside the "
"firewall, before Drupal's page cache has even been consulted — and "
"when a list expired under load, every concurrent request would go "
"after the same URL at once. Copies are refreshed on cron instead, or "
"by running <code>drush basic-firewall:sources</code> from a deploy "
"step. The consequence is worth knowing: <strong>a list that has never "
"been fetched contributes nothing</strong>, and the rule importing it "
"matches nothing, until the first refresh has run."
msgstr ""
"Die Firewall ruft während der Bearbeitung einer Anfrage niemals eine "
"Liste ab. Dies würde dazu führen, dass ein Besucher auf dem "
"HTTP-Server einer anderen Person innerhalb der Firewall wartet, bevor "
"der Seitencache von Drupal überhaupt abgefragt wurde – und wenn "
"eine Liste unter Last abläuft, würde jede gleichzeitige Anfrage "
"gleichzeitig dieselbe URL ansprechen. Kopien werden stattdessen auf "
"cron oder durch Ausführen von <code>drush "
"basic-firewall:sources</code> in einem Bereitstellungsschritt "
"aktualisiert. Die Konsequenz ist wissenswert: <strong>Eine Liste, die "
"noch nie abgerufen wurde, trägt nichts bei</strong> und die Regel, "
"die sie importiert, stimmt mit nichts überein, bis die erste "
"Aktualisierung ausgeführt wurde."
msgid ""
"To accept the latency instead and let the firewall fetch during a "
"request, set <code>$settings['basic_firewall_sources_offline'] = "
"FALSE;</code> in settings.php."
msgstr ""
"Um stattdessen die Latenz zu akzeptieren und die Firewall während "
"einer Anfrage abholen zu lassen, legen Sie in der Datei "
"„settings.php“ <code>$settings['basic_firewall_sources_offline'] = "
"FALSE;</code> fest."
msgid ""
"Every record here names the rule that produced it, so this is where "
"\"which rule is blocking that client\" gets answered. Records are "
"written by the database log handler on the Logging tab; a file handler "
"produces the same events, but only this one can be grouped and "
"filtered."
msgstr ""
"Jeder Datensatz hier benennt die Regel, die ihn erstellt hat. Daher "
"wird hier die Frage beantwortet, welche Regel diesen Client blockiert. "
"Datensätze werden vom Datenbankprotokollhandler auf der Registerkarte "
"„Protokollierung“ geschrieben. Ein Dateihandler erzeugt dieselben "
"Ereignisse, aber nur dieses kann gruppiert und gefiltert werden."
msgid ""
"Levels decide what appears. Blocks and challenges are recorded at "
"warning and above; <em>debug</em> records a row for every allowed "
"request too, which is worth switching on while working out why a rule "
"does not match and worth switching off afterwards."
msgstr ""
"Die Ebenen entscheiden darüber, was angezeigt wird. Blockaden und "
"Herausforderungen werden bei Warnung und darüber aufgezeichnet; "
"<em>debug</em> zeichnet auch eine Zeile für jede zulässige Anfrage "
"auf. Es lohnt sich, diese Option einzuschalten, während man "
"herausfindet, warum eine Regel nicht übereinstimmt, und es lohnt "
"sich, sie anschließend auszuschalten."
msgid "Removed @count expired firewall log record(s)."
msgstr "@count abgelaufene Firewall-Protokolleinträge entfernt."
msgid "Basic Firewall edge geolocation"
msgstr "Grundlegende Geolokalisierung des Firewall-Edges"
msgid "Not trusted"
msgstr "Nicht vertrauenswürdig"
msgid ""
"These rules read the visitor's country from a CDN header, but Drupal's "
"reverse proxy settings are not configured, so the firewall will not "
"believe the header and the rules match nothing: @rules. Set "
"<code>$settings['reverse_proxy']</code> and "
"<code>$settings['reverse_proxy_addresses']</code> to your CDN's "
"ranges."
msgstr ""
"Diese Regeln lesen das Land des Besuchers aus einem CDN-Header, aber "
"die Reverse-Proxy-Einstellungen von Drupal sind nicht konfiguriert, "
"sodass die Firewall den Header nicht glaubt und die Regeln mit nichts "
"übereinstimmen: @rules. Legen Sie "
"<code>$settings['reverse_proxy']</code> und "
"<code>$settings['reverse_proxy_addresses']</code> auf die Bereiche "
"Ihres CDN fest."
msgid "Basic Firewall imported lists"
msgstr "Importierte Listen der Basic Firewall"
msgid "@missing of @total never fetched"
msgstr "@missing von @total wurde nie abgerufen"
msgid ""
"These lists have no cached copy, so the rules importing them are "
"contributing nothing: @names. Run <code>drush "
"basic-firewall:sources</code>, wait for cron, or <a "
"href=\":url\">refresh them now</a>."
msgstr ""
"Diese Listen haben keine zwischengespeicherte Kopie, daher tragen die "
"Regeln, die sie importieren, nichts bei: @names. Führen Sie "
"<code>drush basic-firewall:sources</code> aus, warten Sie auf Cron "
"oder <a href=\":url\">aktualisieren Sie sie jetzt</a>."
msgid "@count list(s), @entries entries"
msgstr "@count Liste(n), @entries Einträge"
msgid "Basic Firewall compiled mode"
msgstr "Kompilierter Basis-Firewall-Modus"
msgid "Compiled as @compiled, configured as @configured"
msgstr "Kompiliert als @compiled, konfiguriert als @configured"
msgid ""
"The compiled configuration the firewall actually reads is in "
"<strong>@compiled</strong> mode, but this site is configured for "
"<strong>@configured</strong>. Something is overriding it — most "
"likely the Advanced tab, a preset, or an imported document. The "
"compiled value is the one in force."
msgstr ""
"Die kompilierte Konfiguration, die die Firewall tatsächlich liest, "
"befindet sich im Modus <strong>@compiled</strong>, diese Site ist "
"jedoch für <strong>@configured</strong> konfiguriert. Etwas "
"überschreibt es – höchstwahrscheinlich die Registerkarte "
"„Erweitert“, eine Voreinstellung oder ein importiertes Dokument. "
"Der kompilierte Wert ist der gültige."
msgid "Basic Firewall storage backend"
msgstr "Grundlegendes Firewall-Speicher-Backend"
msgid ""
"File storage costs more the longer the block list gets, so it slows "
"down exactly when the firewall is busiest, and it cannot be shared "
"between web nodes. Measured per storage call: an empty list reads in "
"0.003 ms against the database's 0.035 ms, and 2,000 blocked clients "
"read in 0.817 ms against 0.069 ms — so file is faster while the list "
"is small and loses once it passes roughly a hundred clients, which an "
"attack reaches in seconds. Consider the database on the <a "
"href=\":url\">Storage</a> tab if this site runs more than one web node "
"or expects to block at that scale. Two things to know first: the block "
"list does not move with the change, so anything currently blocked is "
"forgotten, and database storage does not work on the optional "
"settings.php evaluation path."
msgstr ""
"Die Dateispeicherung kostet umso mehr, je länger die Sperrliste wird. "
"Daher wird sie genau dann langsamer, wenn die Firewall am stärksten "
"ausgelastet ist, und sie kann nicht von Webknoten gemeinsam genutzt "
"werden. Gemessen pro Speicheraufruf: Eine leere Liste liest 0,003 ms "
"im Vergleich zu 0,035 ms in der Datenbank und 2.000 blockierte Clients "
"lesen in 0,817 ms im Vergleich zu 0,069 ms – die Datei ist also "
"schneller, während die Liste klein ist, und verliert, sobald sie "
"ungefähr hundert Clients passiert, die ein Angriff in Sekunden "
"erreicht. Ziehen Sie die Datenbank auf der Registerkarte <a "
"href=\":url\">Speicher</a> in Betracht, wenn auf dieser Site mehr als "
"ein Webknoten ausgeführt wird oder eine Blockierung in dieser "
"Größenordnung erwartet wird. Zwei Dinge, die Sie zunächst wissen "
"sollten: Die Sperrliste wird mit der Änderung nicht verschoben, "
"sodass alles, was derzeit blockiert ist, vergessen wird und die "
"Datenbankspeicherung auf dem optionalen Auswertungspfad "
"„settings.php“ nicht funktioniert."
msgid "Basic Firewall rules not running"
msgstr "Grundlegende Firewallregeln werden nicht ausgeführt"
msgid ""
"The compiled configuration is valid and these rules are in it, but the "
"library could not start them or cannot reach what they depend on. "
"Traffic they were meant to handle is not being handled."
msgstr ""
"Die kompilierte Konfiguration ist gültig und diese Regeln sind darin "
"enthalten, aber die Bibliothek konnte sie nicht starten oder kann "
"nicht erreichen, wovon sie abhängen. Der Verkehr, den sie bewältigen "
"sollten, wird nicht abgewickelt."
msgid "Basic Firewall rate limit scope"
msgstr "Bereich der grundlegenden Firewall-Ratenbegrenzung"
msgid "@count rule(s) limit every path"
msgstr "@count-Regel(n) begrenzen jeden Pfad"
msgid ""
"These rules list particular paths and also apply their fallback limit "
"to every other path on the site, per address. Every request to every "
"URL therefore reads and writes the counter store. Untick \"Apply this "
"limit to every other path too\" on the rule to limit only what it "
"lists."
msgstr ""
"Diese Regeln listen bestimmte Pfade auf und wenden ihr Fallback-Limit "
"auch auf jeden anderen Pfad auf der Site pro Adresse an. Jede Anfrage "
"an jede URL liest und schreibt daher den Zählerspeicher. Deaktivieren "
"Sie in der Regel das Kontrollkästchen „Diese Beschränkung auch auf "
"alle anderen Pfade anwenden“, um nur die darin aufgeführten Pfade "
"einzuschränken."
msgid "The firewall log table could not be reached: @message"
msgstr "Die Firewall-Protokolltabelle konnte nicht erreicht werden: @message"
msgid ""
"No cache directory is set, so this rule shares the firewall's own "
"cache directory with everything else that caches. It works, but naming "
"a directory of its own makes the cached verdicts findable and "
"separately clearable."
msgstr ""
"Es ist kein Cache-Verzeichnis festgelegt, daher teilt diese Regel das "
"eigene Cache-Verzeichnis der Firewall mit allen anderen Caches. Es "
"funktioniert, aber die Benennung eines eigenen Verzeichnisses macht "
"die zwischengespeicherten Urteile auffindbar und separat löschbar."
msgid "Where the location comes from"
msgstr "Woher der Standort kommt"
msgid "A MaxMind database, looked up here"
msgstr "Eine MaxMind-Datenbank, hier nachgeschlagen"
msgid "The lookup your CDN already did, read from a request header"
msgstr ""
"Die Suche, die Ihr CDN bereits durchgeführt hat, wurde aus einem "
"Anforderungsheader gelesen"
msgid ""
"The conditions above are written the same way either way, so a rule "
"can move between the two without being rewritten. Reading from the "
"edge means no database to ship, update or pay for."
msgstr ""
"Die oben genannten Bedingungen sind in beiden Fällen gleich "
"formuliert, sodass eine Regel zwischen den beiden Bedingungen wechseln "
"kann, ohne dass sie neu geschrieben werden muss. Das Lesen vom Edge "
"aus bedeutet, dass keine Datenbank versendet, aktualisiert oder "
"bezahlt werden muss."
msgid "CDN headers"
msgstr "CDN-Header"
msgid ""
"<strong>A geo header is a claim, not a fact.</strong> Anything that "
"can reach this site directly can send <code>CF-IPCountry: US</code> "
"and pick its own country. The firewall therefore believes these "
"headers only on a request that arrived through a configured trusted "
"proxy — so <code>$settings['reverse_proxy']</code> and "
"<code>$settings['reverse_proxy_addresses']</code> must name your CDN, "
"which a site behind one needs anyway for the client IP to be right. "
"Without that, this rule matches nothing and says so in the log on "
"every request."
msgstr ""
"<strong>Ein Geo-Header ist eine Behauptung, keine Tatsache.</strong> "
"Jeder, der diese Website direkt erreichen kann, kann "
"<code>CF-IPCountry: US</code> senden und sein eigenes Land auswählen. "
"Daher glaubt die Firewall diesen Headern nur bei einer Anfrage, die "
"über einen konfigurierten vertrauenswürdigen Proxy eingegangen ist "
"– daher müssen <code>$settings['reverse_proxy']</code> und "
"<code>$settings['reverse_proxy_addresses']</code> Ihr CDN benennen, "
"was eine Site dahinter sowieso benötigt, damit die Client-IP richtig "
"ist. Ohne dies entspricht diese Regel nichts und sagt dies bei jeder "
"Anfrage im Protokoll."
msgid ""
"Cloudflare — sends the country unasked; the rest needs Managed "
"Transforms"
msgstr ""
"Cloudflare – sendet das Land ungefragt; Der Rest benötigt "
"verwaltete Transformationen"
msgid "CloudFront — add the headers to the cache or origin request policy"
msgstr ""
"CloudFront – Fügen Sie die Header zur Cache- oder "
"Ursprungsanforderungsrichtlinie hinzu"
msgid "Akamai — needs EdgeScape enabled"
msgstr "Akamai – erfordert die Aktivierung von EdgeScape"
msgid "Fastly — set the headers in VCL"
msgstr "Fastly – Legen Sie die Header in VCL fest"
msgid "Google Cloud — add X-Client-Geo-Location as a custom request header"
msgstr ""
"Google Cloud – X-Client-Geo-Location als benutzerdefinierten "
"Anforderungsheader hinzufügen"
msgid "Something else — name the headers yourself"
msgstr "Noch etwas: Benennen Sie die Überschriften selbst"
msgid ""
"Only Cloudflare sends anything without being asked, and only the "
"country. Every other field on every other CDN is opt-in at the edge "
"— a field it did not send matches nothing rather than matching "
"wrongly."
msgstr ""
"Nur Cloudflare sendet unaufgefordert etwas und nur das Land. Jedes "
"zweite Feld in jedem anderen CDN ist am Rande opt-in – ein Feld, das "
"nicht gesendet wurde, stimmt mit nichts überein, statt mit einer "
"falschen Übereinstimmung."
msgid "Header names"
msgstr "Header-Namen"
msgid ""
"One <code>field: Header-Name</code> per line, for example "
"<code>country: X-Geo-Country</code>. Fields are the ones listed under "
"\"Available variables\" above."
msgstr ""
"Ein <code>Feld: Header-Name</code> pro Zeile, zum Beispiel <code>Land: "
"X-Geo-Land</code>. Die Felder sind diejenigen, die oben unter "
"„Verfügbare Variablen“ aufgeführt sind."
msgid ""
"Name at least one header, as <code>field: Header-Name</code>. A custom "
"provider naming no headers is a configuration the firewall refuses to "
"start on, which would stop every rule being enforced rather than just "
"this one."
msgstr ""
"Benennen Sie mindestens einen Header als <code>Feld: "
"Header-Name</code>. Ein benutzerdefinierter Anbieter, der keine Header "
"benennt, ist eine Konfiguration, bei der die Firewall den Start "
"verweigert, was dazu führen würde, dass nicht alle Regeln "
"durchgesetzt werden, sondern nur diese."
msgid ""
"These are not fields the firewall knows how to read: @list. Use one "
"of: @known."
msgstr ""
"Dies sind keine Felder, die die Firewall lesen kann: @list. Verwenden "
"Sie eines von: @known."
msgid ""
"One entry per line, or empty when every address comes from an imported "
"list. Lines beginning with <code>#</code> are ignored. Accepted "
"formats: a single address (<code>203.0.113.10</code>, "
"<code>2001:db8::1</code>), a CIDR block (<code>10.0.0.0/8</code>, "
"<code>2001:db8::/32</code>), or an inclusive range "
"(<code>192.0.2.10-192.0.2.20</code>)."
msgstr ""
"Ein Eintrag pro Zeile oder leer, wenn jede Adresse aus einer "
"importierten Liste stammt. Zeilen, die mit <code>#</code> beginnen, "
"werden ignoriert. Akzeptierte Formate: eine einzelne Adresse "
"(<code>203.0.113.10</code>, <code>2001:db8::1</code>), ein CIDR-Block "
"(<code>10.0.0.0/8</code>, <code>2001:db8::/32</code>) oder ein "
"inklusiver Bereich (<code>192.0.2.10-192.0.2.20</code>)."
msgid "Enter at least one IP address, or import a list on this form."
msgstr ""
"Geben Sie mindestens eine IP-Adresse ein oder importieren Sie eine "
"Liste in dieses Formular."
msgid "Fallback limit"
msgstr "Rückfallgrenze"
msgid ""
"Used by any path limit below that does not set its own rate, and — "
"if you tick the box — by every other path on the site as well. When "
"it covers every other path, that is <em>one</em> count per address "
"across all of them together, not one per path."
msgstr ""
"Bei Verwendung durch alle darunter liegenden Pfade wird keine eigene "
"Rate festgelegt, und – wenn Sie das Kästchen ankreuzen – auch "
"durch alle anderen Pfade auf der Website. Wenn es alle anderen Pfade "
"abdeckt, ist das <em>ein</em> Zählwert pro Adresse für alle "
"zusammen, nicht einer pro Pfad."
msgid "Requests allowed per address"
msgstr "Anfragen pro Adresse zulässig"
msgid "Apply this limit to every other path too"
msgstr "Wenden Sie dieses Limit auch auf jeden anderen Pfad an"
msgid ""
"Leave this unticked to limit only the paths listed below. Ticking it "
"caps <em>the whole site</em> at the rate above, per address, including "
"paths this rule does not mention — and every request to every URL "
"then reads and writes the counter store."
msgstr ""
"Lassen Sie diese Option deaktiviert, um nur die unten aufgeführten "
"Pfade einzuschränken. Wenn Sie diese Option aktivieren, wird <em>die "
"gesamte Website</em> auf die oben angegebene Rate pro Adresse "
"begrenzt, einschließlich Pfaden, die diese Regel nicht erwähnt – "
"und jede Anfrage an jede URL liest und schreibt dann den "
"Zählerspeicher."
msgid ""
"This limit applies to <em>every</em> path on the site, including paths "
"not listed below, because the installed kanopi/firewall release cannot "
"confine a rate limit to the paths it lists. Upgrade to 2.20.0 or later "
"to choose."
msgstr ""
"Diese Beschränkung gilt für <em>jeden</em> Pfad auf der Site, "
"einschließlich Pfaden, die unten nicht aufgeführt sind, da die "
"installierte Kanopi-/Firewall-Version keine Ratenbegrenzung auf die "
"aufgeführten Pfade beschränken kann. Upgrade auf 2.20.0 oder höher "
"zur Auswahl."
msgid ""
"Limits that apply to particular paths. Anything not matched here gets "
"the fallback above."
msgstr ""
"Beschränkungen, die für bestimmte Pfade gelten. Alles, was hier "
"nicht übereinstimmt, erhält den oben genannten Fallback."
msgid ""
"<strong>One count per address, per pattern.</strong> The counter is "
"keyed on the visitor's address and the pattern that matched, not on "
"the path they asked for — so <code>/api/*</code> at 100 per minute "
"is 100 requests across everything below <code>/api/</code> combined, "
"not 100 for each endpoint. A visitor browsing five pages covered by "
"one pattern has spent five of its allowance."
msgstr ""
"<strong>Eine Zählung pro Adresse, pro Muster.</strong> Der Zähler "
"basiert auf der Adresse des Besuchers und dem Muster, das "
"übereinstimmte, nicht auf dem von ihm angeforderten Pfad. Daher "
"entspricht <code>/api/*</code> bei 100 pro Minute 100 Anfragen für "
"alles unter <code>/api/</code> zusammengenommen, nicht 100 für jeden "
"Endpunkt. Ein Besucher, der fünf von einem Muster abgedeckte Seiten "
"durchblättert, hat fünf von seinem Kontingent ausgegeben."
msgid ""
"Two consequences worth knowing before you rely on this. Visitors "
"sharing an address share a count — one office behind one NAT is one "
"bucket, so a busy floor can exhaust a limit meant for one person. And "
"<strong>a limit cannot depend on who is asking</strong>: the account "
"is not part of the key, so a different allowance for authenticated, "
"anonymous or premium users cannot be expressed here. A premium "
"<em>endpoint</em> can have its own limit; a premium <em>user</em> "
"cannot."
msgstr ""
"Zwei Konsequenzen, die Sie kennen sollten, bevor Sie sich darauf "
"verlassen. Besucher, die eine Adresse teilen, teilen sich eine "
"Zählung – ein Büro hinter einem NAT ist ein Bucket, sodass eine "
"belebte Etage ein für eine Person vorgesehenes Limit ausschöpfen "
"kann. Und <strong>ein Limit kann nicht davon abhängen, wer "
"nachfragt</strong>: Das Konto ist nicht Teil des Schlüssels, daher "
"kann hier kein unterschiedlicher Freibetrag für authentifizierte, "
"anonyme oder Premium-Benutzer ausgedrückt werden. Ein "
"Premium-<em>Endpunkt</em> kann sein eigenes Limit haben; Ein "
"Premium-<em>Benutzer</em> kann dies nicht."
msgid "Fallback: @rate requests per @sample seconds"
msgstr "Fallback: @rate Anfragen pro @sample Sekunden"
msgid "Limits EVERY path, including ones not listed"
msgstr "Beschränkt JEDEN Pfad, auch die nicht aufgeführten"
msgid "Limits only the paths listed"
msgstr "Beschränkt nur die aufgeführten Pfade"
msgid ""
"<strong>Use <code>automated</code> rather than <code>bot</code> to "
"stop scanners.</strong> <code>bot</code> comes from a curated database "
"of known crawlers, which by default does not classify "
"<code>sqlmap</code>, <code>nikto</code>, <code>curl</code>, "
"<code>python-requests</code> or <code>Go-http-client</code> as bots "
"— so a rule written as <code>bot equals true</code> lets all of "
"those through. <code>automated</code> is that database plus a broader "
"crawler list, and always has been. To widen <code>bot</code> itself "
"instead, change the detection source below."
msgstr ""
"<strong>Verwenden Sie <code>automated</code> anstelle von "
"<code>bot</code>, um Scanner zu stoppen.</strong> <code>bot</code> "
"stammt aus einer kuratierten Datenbank bekannter Crawler, die "
"<code>sqlmap</code>, <code>nikto</code>, <code>curl</code>, "
"<code>python-requests</code> oder <code>Go-http-client</code> "
"standardmäßig nicht als Bots klassifiziert – also ein Die als "
"<code>bot equal true</code> geschriebene Regel lässt alle diese "
"durch. <code>automatisiert</code> ist diese Datenbank plus eine "
"breitere Crawler-Liste, und das war schon immer der Fall. Um "
"stattdessen <code>bot</code> selbst zu erweitern, ändern Sie unten "
"die Erkennungsquelle."
msgid "What <code>bot</code> means"
msgstr "Was <code>bot</code> bedeutet"
msgid ""
"The curated bot database (default) — well-behaved crawlers that "
"identify themselves"
msgstr ""
"Die kuratierte Bot-Datenbank (Standard) – gut erzogene Crawler, die "
"sich selbst identifizieren"
msgid ""
"The wider crawler list — adds sqlmap, nikto, curl, python-requests, "
"Go-http-client"
msgstr ""
"Die breitere Crawler-Liste – fügt sqlmap, nikto, curl, "
"python-requests und Go-http-client hinzu"
msgid "Either list — the broadest reading"
msgstr "Beide Listen – die umfassendste Lesart"
msgid ""
"Only affects conditions on <code>bot</code> and <code>bot.name</code>. "
"<code>automated</code> is the union of both lists whatever is chosen "
"here, which is why it is the better condition to write in the first "
"place. Widening this changes what an existing <code>bot</code> rule "
"blocks, so change it in log-only mode first. <code>bot.category</code> "
"and <code>bot.producer</code> are only populated by the curated "
"database, and stay empty for an agent only the wider list recognized."
msgstr ""
"Betrifft nur Bedingungen für <code>bot</code> und "
"<code>bot.name</code>. <code>automatisiert</code> ist die Vereinigung "
"beider Listen, was auch immer hier ausgewählt wird, weshalb es die "
"bessere Bedingung ist, überhaupt zu schreiben. Durch die Erweiterung "
"wird geändert, was eine vorhandene <code>bot</code>-Regel blockiert. "
"Ändern Sie sie daher zunächst im Nur-Protokoll-Modus. "
"<code>bot.category</code> und <code>bot.producer</code> werden nur von "
"der kuratierten Datenbank ausgefüllt und bleiben für einen Agenten "
"leer, der nur von der breiteren Liste erkannt wird."
msgid ""
"A stream URI such as "
"<code>private://basic_firewall/device-detector</code>, or an absolute "
"path. Leave empty to use the firewall's own cache directory inside the "
"private files directory."
msgstr ""
"Ein Stream-URI wie "
"<code>private://basic_firewall/device-detector</code> oder ein "
"absoluter Pfad. Lassen Sie das Feld leer, um das eigene "
"Cache-Verzeichnis der Firewall innerhalb des Verzeichnisses für "
"private Dateien zu verwenden."
msgid ""
"Add at least one condition or import a list, otherwise this rule can "
"never match."
msgstr ""
"Fügen Sie mindestens eine Bedingung hinzu oder importieren Sie eine "
"Liste, andernfalls kann diese Regel niemals zutreffen."
msgid ""
"Take this rule's entries from a list published somewhere else — a "
"file on disk, a URL, a feed your team maintains. Entries from every "
"list are evaluated first, in the order the lists appear here, and "
"anything typed into this rule's own fields is evaluated after them. <a "
"href=\":url\">Review what each list currently contributes</a>."
msgstr ""
"Nehmen Sie die Einträge dieser Regel aus einer Liste, die an anderer "
"Stelle veröffentlicht wurde – einer Datei auf der Festplatte, einer "
"URL oder einem Feed, den Ihr Team verwaltet. Einträge aus jeder Liste "
"werden zuerst in der Reihenfolge ausgewertet, in der die Listen hier "
"erscheinen, und alles, was in die eigenen Felder dieser Regel "
"eingegeben wird, wird danach ausgewertet. <a "
"href=\":url\">Überprüfen Sie, was jede Liste derzeit beiträgt</a>."
msgid "No lists are imported into this rule."
msgstr "In diese Regel werden keine Listen importiert."
msgid "List @number"
msgstr "Liste @number"
msgid ""
"What this list is called in the firewall log, in the report of what "
"each list contributed, and when a match is attributed back to the list "
"that caused it. A URL derived from the location would answer none of "
"those questions well, so name it after what it holds — "
"<code>tor-exits</code>, <code>ci-ranges</code>."
msgstr ""
"Wie diese Liste im Firewall-Protokoll heißt, im Bericht darüber, was "
"jede Liste beigetragen hat und wann eine Übereinstimmung der Liste "
"zugeordnet wird, die sie verursacht hat. Eine vom Standort abgeleitete "
"URL würde keine dieser Fragen gut beantworten. Benennen Sie sie daher "
"nach dem, was sie enthält – <code>tor-exits</code>, "
"<code>ci-ranges</code>."
msgid ""
"An <code>https://</code> URL, a stream URI such as "
"<code>private://basic_firewall/lists/tor-exits.txt</code>, or an "
"absolute path. A stream URI is resolved when the configuration is "
"compiled, because the firewall runs before Drupal registers its stream "
"wrappers."
msgstr ""
"Eine <code>https://</code>-URL, ein Stream-URI wie "
"<code>private://basic_firewall/lists/tor-exits.txt</code> oder ein "
"absoluter Pfad. Ein Stream-URI wird beim Kompilieren der Konfiguration "
"aufgelöst, da die Firewall ausgeführt wird, bevor Drupal seine "
"Stream-Wrapper registriert."
msgid ""
"How the list is decoded, which part of it to keep, and what shape each "
"entry should take. <em>Select</em>, <em>keep only</em>, <em>shape</em> "
"and <em>validate</em> run after decoding and apply to every format; "
"the options below the format itself belong to one family of formats "
"and appear only for it."
msgstr ""
"Wie die Liste dekodiert wird, welcher Teil davon beibehalten werden "
"soll und welche Form jeder Eintrag annehmen soll. <em>Auswählen</em>, "
"<em>Nur behalten</em>, <em>Form</em> und <em>Validieren</em> werden "
"nach der Dekodierung ausgeführt und auf jedes Format angewendet; Die "
"Optionen unterhalb des Formats selbst gehören zu einer Formatfamilie "
"und werden nur für diese angezeigt."
msgid "txt — one value per line"
msgstr "txt – ein Wert pro Zeile"
msgid "json — one document"
msgstr "json – ein Dokument"
msgid "ndjson — one document per line"
msgstr "ndjson – ein Dokument pro Zeile"
msgid "yaml — one document"
msgstr "yaml – ein Dokument"
msgid "csv — comma separated rows"
msgstr "csv – durch Kommas getrennte Zeilen"
msgid "tsv — tab separated rows"
msgstr "tsv – tabulatorgetrennte Zeilen"
msgid ""
"Stated rather than guessed from the file name, and written into the "
"compiled configuration so nothing guesses later either. A name is poor "
"evidence: an endpoint like <code>/v1/ranges</code> serving JSON has no "
"extension to read, and a <code>.txt</code> list declared as "
"<code>yaml</code> produces nothing at all — YAML folds "
"newline-delimited lines into one long scalar and the parse succeeds "
"with no records in it."
msgstr ""
"Angegeben, nicht anhand des Dateinamens erraten, und in die "
"kompilierte Konfiguration geschrieben, sodass auch später nichts "
"erraten werden kann. Ein Name ist ein schlechter Beweis: Ein Endpunkt "
"wie <code>/v1/ranges</code>, der JSON bereitstellt, hat keine "
"Erweiterung zum Lesen, und eine als <code>yaml</code> deklarierte "
"<code>.txt</code>-Liste erzeugt überhaupt nichts – YAML faltet "
"durch Zeilenumbrüche getrennte Zeilen in einen langen Skalar und die "
"Analyse ist erfolgreich, ohne dass Datensätze darin enthalten sind."
msgid ""
"A separate axis from the format, so a gzipped JSON list is "
"<code>json</code> plus <code>gzip</code> rather than a format of its "
"own."
msgstr ""
"Eine vom Format getrennte Achse, daher besteht eine gzip-komprimierte "
"JSON-Liste aus <code>json</code> plus <code>gzip</code> und nicht aus "
"einem eigenen Format."
msgid ""
"A dot-path naming the records inside a structured document: "
"<code>prefixes.*</code>, <code>data.regions.*.ranges.*</code>, or "
"<code>{prefixes,ipv6_prefixes}.*</code> to span two keys one list was "
"split across. Leave empty when the document already is the list."
msgstr ""
"Ein Punktpfad, der die Datensätze in einem strukturierten Dokument "
"benennt: <code>prefixes.*</code>, <code>data.regions.*.ranges.*</code> "
"oder <code>{prefixes,ipv6_prefixes}.*</code>, um zwei Schlüssel zu "
"umfassen, auf die eine Liste aufgeteilt wurde. Leer lassen, wenn das "
"Dokument bereits in der Liste enthalten ist."
msgid "Keep only records where"
msgstr "Bewahren Sie nur Aufzeichnungen auf, wo"
msgid ""
"One condition per line, in the same "
"<code>variable@operator:value</code> form the rule conditions use — "
"for example <code>service:EC2</code> or "
"<code>region@starts_with:us-</code>. <strong>Every line has to "
"match</strong>, unlike a rule's own conditions. To accept either of "
"two values, write a YAML sequence instead, starting with "
"<code>-</code>, and use a group."
msgstr ""
"Eine Bedingung pro Zeile, in derselben <code>Variable "
"@operator:value</code>-Form, die die Regelbedingungen verwenden – "
"zum Beispiel <code>service:EC2</code> oder "
"<code>region@starts_with:us-</code>. <strong>Jede Zeile muss "
"übereinstimmen</strong>, im Gegensatz zu den eigenen Bedingungen "
"einer Regel. Um einen von zwei Werten zu akzeptieren, schreiben Sie "
"stattdessen eine YAML-Sequenz, beginnend mit <code>-</code>, und "
"verwenden Sie eine Gruppe."
msgid "Shape each entry as"
msgstr "Gestalten Sie jeden Eintrag als"
msgid ""
"<code>{value}</code> is the record; index into it when it is "
"structured — <code>{value[ip_prefix]}</code>, "
"<code>{value[ip_prefix|ipv6_prefix]}</code> for whichever key exists. "
"An IP rule takes bare addresses, so a list of addresses needs nothing "
"here; every other rule takes rule strings such as "
"<code>asn:{value[asn]}</code>, which no upstream publishes, so those "
"normally do. A record whose placeholder cannot be resolved is dropped "
"rather than half-filled. Write a template across several lines to "
"build a grouped condition; a single line is always taken literally."
msgstr ""
"<code>{value}</code> ist der Datensatz; Indizieren Sie es, wenn es "
"strukturiert ist – <code>{value[ip_prefix]}</code>, "
"<code>{value[ip_prefix|ipv6_prefix]}</code> für den vorhandenen "
"Schlüssel. Eine IP-Regel akzeptiert bloße Adressen, sodass eine "
"Liste von Adressen hier nicht erforderlich ist; Jede andere Regel "
"benötigt Regelzeichenfolgen wie <code>asn:{value[asn]}</code>, die "
"kein Upstream veröffentlicht, was bei diesen normalerweise der Fall "
"ist. Ein Datensatz, dessen Platzhalter nicht aufgelöst werden kann, "
"wird gelöscht und nicht zur Hälfte gefüllt. Schreiben Sie eine "
"Vorlage über mehrere Zeilen, um eine gruppierte Bedingung zu "
"erstellen. eine einzelne Zeile wird immer wörtlich genommen."
msgid "Every entry must be"
msgstr "Jeder Eintrag muss sein"
msgid "An address, CIDR block or range"
msgstr "Eine Adresse, ein CIDR-Block oder ein Bereich"
msgid "A single address"
msgstr "Eine einzige Adresse"
msgid "A pattern that compiles"
msgstr "Ein Muster, das kompiliert"
msgid "Any non-empty string"
msgstr "Jede nicht leere Zeichenfolge"
msgid ""
"Individual bad entries are dropped and logged; one malformed line does "
"not take the rest of the list with it. Worth setting for any list you "
"do not publish yourself."
msgstr ""
"Einzelne fehlerhafte Einträge werden verworfen und protokolliert; "
"Eine fehlerhafte Zeile nimmt den Rest der Liste nicht mit. Wertvolle "
"Einstellung für jede Liste, die Sie nicht selbst veröffentlichen."
msgid "Comment marker"
msgstr "Kommentarmarkierung"
msgid ""
"Everything from this marker to the end of the line is stripped, but "
"only where it begins a line or follows whitespace, so a value "
"containing one survives. Empty keeps comments as part of the value."
msgstr ""
"Alles von dieser Markierung bis zum Ende der Zeile wird entfernt, aber "
"nur dort, wo eine Zeile beginnt oder auf ein Leerzeichen folgt, sodass "
"ein Wert, der eine solche enthält, erhalten bleibt. Empty behält "
"Kommentare als Teil des Werts bei."
msgid "The first row names the columns"
msgstr "Die erste Zeile benennt die Spalten"
msgid ""
"With this on, address a column by name — <code>{value[asn]}</code>. "
"With it off, by position — <code>{value[0]}</code>."
msgstr ""
"Wenn diese Option aktiviert ist, adressieren Sie eine Spalte nach "
"Namen – <code>{value[asn]}</code>. Wenn es deaktiviert ist, nach "
"Position – <code>{value[0]}</code>."
msgid "Empty uses the format default: a comma, or a tab."
msgstr "Empty verwendet das Standardformat: ein Komma oder einen Tabulator."
msgid "Freshness and failure"
msgstr "Frische und Scheitern"
msgid "Revalidate after"
msgstr "Danach erneut validieren"
msgid ""
"0 uses the default of one hour. Refreshing happens on cron and from "
"the command line, not while a visitor waits."
msgstr ""
"0 verwendet den Standardwert von einer Stunde. Die Aktualisierung "
"erfolgt über Cron und über die Befehlszeile, nicht während ein "
"Besucher wartet."
msgid "Reject a refresh that changes the entry count by more than"
msgstr ""
"Eine Aktualisierung ablehnen, die die Anzahl der Einträge um mehr als "
"ändert"
msgid ""
"A fraction: <code>0.25</code> refuses a change of more than a quarter "
"either way. 0 turns the check off. This is what stops an upstream that "
"starts answering with an error page from quietly emptying the list. "
"The first load has nothing to compare against, so it is never "
"rejected."
msgstr ""
"Ein Bruch: <code>0.25</code> verweigert in beiden Richtungen eine "
"Änderung von mehr als einem Viertel. 0 schaltet die Prüfung aus. "
"Dies verhindert, dass ein Upstream, der mit einer Fehlerseite "
"antwortet, die Liste stillschweigend leert. Die erste Ladung hat "
"keinen Vergleich und wird daher nie abgelehnt."
msgid "When the list cannot be read"
msgstr "Wenn die Liste nicht gelesen werden kann"
msgid "Use the last copy that loaded, and contribute nothing if there is none"
msgstr ""
"Verwenden Sie die zuletzt geladene Kopie und tragen Sie nichts bei, "
"wenn keine vorhanden ist"
msgid "Contribute nothing and carry on"
msgstr "Tragen Sie nichts bei und machen Sie weiter"
msgid "Refuse to start the firewall"
msgstr "Weigern Sie sich, die Firewall zu starten"
msgid "This list is required"
msgstr "Diese Liste ist erforderlich"
msgid ""
"Fails the firewall outright rather than degrading, whatever is chosen "
"above. Right for an <em>allow</em> list: silently dropping a CI "
"provider's ranges means deploys start getting blocked, with a log line "
"nobody is watching as the only warning. Wrong for a block list, where "
"losing some coverage beats losing the site."
msgstr ""
"Führt zu einem völligen Ausfall der Firewall und nicht zu einer "
"Verschlechterung, unabhängig davon, was oben ausgewählt wurde. "
"Richtig für eine <em>Zulassungsliste</em>: Das stille Löschen der "
"Bereiche eines CI-Anbieters bedeutet, dass Bereitstellungen blockiert "
"werden, mit einer Protokollzeile, die niemand beobachtet, als einzige "
"Warnung. Falsch für eine Sperrliste, bei der der Verlust einer "
"gewissen Abdeckung besser ist als der Verlust der Website."
msgid ""
"How the list is asked for. Only used for an <code>http</code> or "
"<code>https</code> location."
msgstr ""
"Wie die Liste abgefragt wird. Wird nur für einen <code>http</code>- "
"oder <code>https</code>-Standort verwendet."
msgid ""
"Sent as the request body, for a feed that takes a query rather than "
"serving a fixed list — for example "
"<code>{\"scope\":\"active\"}</code> with a matching "
"<code>Content-Type</code> header below."
msgstr ""
"Wird als Anforderungstext für einen Feed gesendet, der eine Abfrage "
"entgegennimmt, anstatt eine feste Liste bereitzustellen – zum "
"Beispiel <code>{\"scope\":\"active\"}</code> mit einem passenden "
"<code>Content-Type</code>-Header unten."
msgid ""
"One <code>Name: value</code> per line. These are request headers; the "
"CSV option about a first row of column names is under Decoding "
"options."
msgstr ""
"Ein <code>Name: value</code> pro Zeile. Dies sind Anforderungsheader. "
"Die CSV-Option für eine erste Zeile mit Spaltennamen befindet sich "
"unter Dekodierungsoptionen."
msgid "0 uses the default of five seconds."
msgstr "0 verwendet den Standardwert von fünf Sekunden."
msgid "Redirects to follow"
msgstr "Weiterleitungen folgen"
msgid ""
"0 refuses to follow any. Credentials and headers are dropped on a hop "
"that changes host, scheme or port, so they are never sent to whoever "
"answered a redirect."
msgstr ""
"0 weigert sich, irgendjemandem zu folgen. Anmeldeinformationen und "
"Header werden bei einem Hop abgelegt, der Host, Schema oder Port "
"ändert, sodass sie niemals an denjenigen gesendet werden, der auf "
"eine Weiterleitung geantwortet hat."
msgid ""
"Stored in configuration as typed, so a secret entered here appears in "
"any configuration export and in your repository. Write "
"<code>%env(FEED_TOKEN)%</code> to read it from the environment "
"instead. The firewall redacts credentials from every log line and "
"every page that shows a location."
msgstr ""
"Wird wie eingegeben in der Konfiguration gespeichert, sodass ein hier "
"eingegebenes Geheimnis in jedem Konfigurationsexport und in Ihrem "
"Repository angezeigt wird. Schreiben Sie "
"<code>%env(FEED_TOKEN)%</code>, um es stattdessen aus der Umgebung zu "
"lesen. Die Firewall entfernt Anmeldeinformationen aus jeder "
"Protokollzeile und jeder Seite, auf der ein Standort angezeigt wird."
msgid "API key in a header"
msgstr "API-Schlüssel in einem Header"
msgid "API key in a query parameter"
msgstr "API-Schlüssel in einem Abfrageparameter"
msgid ""
"Accepts <code>%env(FEED_TOKEN)%</code> to read the value from an "
"environment variable at load time, which keeps the secret out of this "
"configuration and out of any export of it. Anything else is stored "
"exactly as typed."
msgstr ""
"Akzeptiert <code>%env(FEED_TOKEN)%</code>, um den Wert aus einer "
"Umgebungsvariablen zur Ladezeit zu lesen, wodurch das Geheimnis aus "
"dieser Konfiguration und jeglichem Export davon ferngehalten wird. "
"Alles andere wird genau so gespeichert, wie Sie es eingegeben haben."
msgid "Accepts <code>%env(FEED_USER)%</code>, as the password does."
msgstr "Akzeptiert <code>%env(FEED_USER)%</code>, wie es das Passwort tut."
msgid "Allow this credential over plain http"
msgstr "Erlauben Sie diese Anmeldeinformationen über einfaches http"
msgid ""
"A credential sent over <code>http://</code> travels in clear text, so "
"the firewall refuses one by default. Only for an address on a network "
"you trust."
msgstr ""
"Über <code>http://</code> gesendete Anmeldeinformationen werden im "
"Klartext übertragen, sodass die Firewall diese standardmäßig "
"ablehnt. Nur für eine Adresse in einem Netzwerk, dem Sie vertrauen."
msgid ""
"Two imported lists on this rule are both called %name. Give them names "
"that tell them apart, so the log can say which one a match came from."
msgstr ""
"Zwei importierte Listen dieser Regel heißen beide %name. Geben Sie "
"ihnen Namen, die sie voneinander unterscheiden, damit das Protokoll "
"erkennen kann, von wem eine Übereinstimmung stammt."
msgid ""
"The imported list %name sends a credential to a plain "
"<code>http://</code> address, where it would travel in clear text. Use "
"<code>https://</code>, or tick \"Allow this credential over plain "
"http\" if the address is on a network you trust."
msgstr ""
"Die importierte Liste %name sendet Anmeldeinformationen an eine "
"einfache <code>http://</code>-Adresse, wo sie im Klartext übertragen "
"werden. Verwenden Sie <code>https://</code> oder aktivieren Sie "
"„Diese Anmeldeinformationen über einfaches http zulassen“, wenn "
"sich die Adresse in einem Netzwerk befindet, dem Sie vertrauen."
msgid ""
"The credential for the imported list %name cannot be resolved here: "
"@problem While that remains true the whole firewall configuration "
"fails to load and no rules are enforced. This is expected if the "
"variable is only set in another environment."
msgstr ""
"Die Anmeldeinformationen für die importierte Liste %name können hier "
"nicht aufgelöst werden: @problem Während dies weiterhin der Fall "
"ist, schlägt das Laden der gesamten Firewall-Konfiguration fehl und "
"es werden keine Regeln erzwungen. Dies ist zu erwarten, wenn die "
"Variable nur in einer anderen Umgebung festgelegt wird."
msgid "The imported list %name cannot be used: @message"
msgstr "Die importierte Liste %name kann nicht verwendet werden: @message"
msgid ""
"The compiled firewall configuration could not be read while "
"enumerating imported lists, so some may be missing: @message"
msgstr ""
"Die kompilierte Firewall-Konfiguration konnte beim Aufzählen "
"importierter Listen nicht gelesen werden, daher fehlen möglicherweise "
"einige: @message"
msgid ""
"Imported lists could not be listed because the configuration declares "
"one that cannot be interpreted: @message"
msgstr ""
"Importierte Listen konnten nicht aufgelistet werden, da die "
"Konfiguration eine nicht interpretierbare Liste deklariert: @message"
msgid ""
"Imported lists could not be refreshed because the configuration "
"declares one that cannot be interpreted: @message"
msgstr ""
"Importierte Listen konnten nicht aktualisiert werden, da die "
"Konfiguration eine nicht interpretierbare Liste deklariert: @message"
msgid "The imported list \"@name\" could not be refreshed: @message"
msgstr ""
"Die importierte Liste „@name“ konnte nicht aktualisiert werden: "
"@message"
msgid "The document is empty."
msgstr "Das Dokument ist leer."
msgid "The document is not valid YAML: @message"
msgstr "Das Dokument ist kein gültiges YAML: @message"
msgid "The document is not a configuration mapping."
msgstr "Das Dokument ist keine Konfigurationszuordnung."
msgid ""
"This is not a Basic Firewall export. A document produced by the Export "
"tab begins with a <code>_meta</code> section naming the format."
msgstr ""
"Dies ist kein Basic-Firewall-Export. Ein über die Registerkarte "
"„Exportieren“ erstelltes Dokument beginnt mit einem Abschnitt "
"<code>_meta</code>, der das Format benennt."
msgid ""
"This export was written by a newer version of the module (format "
"@found, this site reads @known). Update the module before importing "
"it."
msgstr ""
"Dieser Export wurde von einer neueren Version des Moduls geschrieben "
"(Format @found, diese Site lautet @known). Aktualisieren Sie das "
"Modul, bevor Sie es importieren."
msgid "Rule @position is not a mapping."
msgstr "Regel @position ist keine Zuordnung."
msgid "Rule @position has no identifier."
msgstr "Regel @position hat keine Kennung."
msgid "The document contains two rules with the identifier %id."
msgstr "Das Dokument enthält zwei Regeln mit der Kennung %id."
msgid ""
"The rule %id needs the rule type %type, which is not available on this "
"site."
msgstr ""
"Die Regel %id benötigt den Regeltyp %type, der auf dieser Site nicht "
"verfügbar ist."
msgid "(none named)"
msgstr "(kein Name genannt)"
msgid "The <code>advanced_yaml</code> section must be a string of YAML."
msgstr ""
"Der Abschnitt <code>advanced_yaml</code> muss eine YAML-Zeichenfolge "
"sein."
msgid "Advanced YAML: @message"
msgstr "Erweitertes YAML: @message"
msgid "The rule %id: @problem"
msgstr "Die Regel %id: @problem"
msgid ""
"This export had @count credential(s) removed, which this site has to "
"supply after importing: @paths"
msgstr ""
"Bei diesem Export wurden @count Anmeldeinformationen entfernt, die "
"diese Site nach dem Import bereitstellen muss: @paths"
msgid "Imported firewall configuration: @sections (@mode), @count rule(s)."
msgstr ""
"Importierte Firewall-Konfiguration: @sections (@mode), @count "
"Regel(n)."
