diff --git a/messages/de-DE.json b/messages/de-DE.json
index cf7c2ae6b..dba3bc5bf 100644
--- a/messages/de-DE.json
+++ b/messages/de-DE.json
@@ -26,7 +26,7 @@
"trialBannerMessage": "Ihre Testversion läuft in {countdown} ab. Upgraden, um den Zugriff zu behalten.",
"trialBannerExpired": "Ihre Testversion ist abgelaufen. Jetzt upgraden, um den Zugriff wiederherzustellen.",
"billingTrialBannerTitle": "Kostenlose Testversion aktiv",
- "billingTrialBannerDescription": "Sie nutzen derzeit eine kostenlose Testversion auf der Business-Tarif. Wenn die Testversion endet, wird Ihr Konto automatisch auf die Funktionen und Beschränkungen der Basis-Tarif zurückgesetzt. Upgraden Sie jederzeit, um weiterhin Zugriff auf die Funktionen Ihres aktuellen Plans zu behalten.",
+ "billingTrialBannerDescription": "Sie nutzen derzeit eine kostenlose Testversion auf dem {tier}-Tarif. Wenn die Testversion endet, wird Ihr Konto automatisch auf die Funktionen und Beschränkungen des Basis-Tarifs zurückgesetzt. Upgraden Sie jederzeit, um weiterhin Zugriff auf die Funktionen Ihres aktuellen Plans zu behalten.",
"billingTrialBannerUpgrade": "Jetzt upgraden",
"billingTrialBadge": "Kostenlose Testversion",
"trialActive": "Kostenlose Testversion aktiv",
@@ -132,7 +132,7 @@
"siteRestartDialogMessage": "Sind Sie sicher, dass Sie den WireGuard-Tunnel für {name} neu starten möchten? Der Standort wird kurzzeitig die Konnektivität verlieren.",
"siteRestartWarning": "Der Standort wird kurzzeitig getrennt, während der Tunnel neu gestartet wird.",
"siteRestarted": "Standort neu gestartet",
- "siteRestartedDescription": "Der WireGuard-Tunnel wurde neu gestartet.",
+ "siteRestartedDescription": "Die Seite wurde neu gestartet.",
"siteErrorRestart": "Fehler beim Neustart des Standorts",
"siteErrorRestartDescription": "Ein Fehler ist aufgetreten, während der Standort neu gestartet wurde.",
"siteSettingDescription": "Standorteinstellungen konfigurieren",
@@ -234,6 +234,9 @@
"clientResourceDescription": "Erstelle und verwalte Ressourcen, die nur über einen verbundenen Client zugänglich sind",
"privateResourcesBannerTitle": "Zero-Trust-Zugriff auf private Ressourcen",
"privateResourcesBannerDescription": "Private Ressourcen nutzen Zero-Trust und stellen sicher, dass Benutzer und Maschinen nur auf Ressourcen zugreifen können, die Sie explizit gewähren. Verbinden Sie Benutzergeräte oder Maschinen-Clients, um auf diese Ressourcen über ein sicheres virtuelles privates Netzwerk zuzugreifen.",
+ "licenseBillingBannerTitle": "Lizenzabrechnung verwalten",
+ "licenseBillingBannerDescription": "Um die Abrechnung für Ihre Lizenzschlüssel zu verwalten, einschließlich Zahlungsmethoden und Rechnungen, besuchen Sie die Abrechnungsseite. Sie können unten zusätzliche Lizenzen generieren, um die Serverkapazität zu erhöhen oder mehr Instanzen bereitzustellen.",
+ "licenseBillingBannerButton": "Zur Abrechnung gehen",
"resourcesSearch": "Suche Ressourcen...",
"resourceAdd": "Ressource hinzufügen",
"resourceErrorDelte": "Fehler beim Löschen der Ressource",
@@ -304,6 +307,8 @@
"privateResourceTypeCidrDescription": "Einen CIDR-Bereich im Netzwerk der Seite für angeschlossene Clients verfügbar machen",
"privateResourceTypeHttpDescription": "Auf einen HTTP- oder HTTPS-Dienst über eine Domain zugreifen",
"privateResourceTypeSshDescription": "Auf einen SSH-Server von verbundenen Clients aus zugreifen",
+ "privateResourceTypeGatewayDescription": "Senden Sie den gesamten Internetverkehr über das Seitennetzwerk.",
+ "resourceTypeGatewayDescription": "Senden Sie den gesamten Internetverkehr über das Seitennetzwerk.",
"resourceDomainDescription": "Die Ressource wird unter diesem vollständig qualifizierten Domainnamen bereitgestellt.",
"resourceHTTPSSettings": "HTTPS-Einstellungen",
"resourceHTTPSSettingsDescription": "Konfigurieren Sie den Zugriff auf die Ressource über HTTPS",
@@ -555,6 +560,10 @@
"licenseBannerDescription": "Schalten Sie Unternehmensfunktionen für Ihre selbstgehostete Pangolin-Instanz frei. Kaufen Sie einen Lizenzschlüssel, um Premium-Funktionen zu aktivieren, und fügen Sie ihn dann unten hinzu.",
"licenseBannerGetLicense": "Lizenz erhalten",
"licenseBannerViewDocs": "Dokumentation anzeigen",
+ "licenseUpgradeBannerTitle": "Mehr Kapazität benötigt?",
+ "licenseUpgradeBannerDescription": "Wenn Sie die Kapazität Ihrer Seite oder Benutzer erhöhen müssen, können Sie im Portal app.pangolin.net mehr Lizenzen kaufen und diese unten hinzufügen, um Ihre Instanz zu aktualisieren.",
+ "licenseUpgradeBannerButton": "Mehr Lizenzen kaufen",
+ "licenseMultipleKeysDescription": "Sie haben mehrere Lizenzen auf diesem Server aktiviert. Der höchste Tarif wird verwendet.",
"communityEdition": "Community-Edition",
"licenseAboutDescription": "Dies ist für Geschäfts- und Unternehmensanwender, die Pangolin in einem kommerziellen Umfeld einsetzen. Wenn Sie Pangolin für den persönlichen Gebrauch verwenden, können Sie diesen Abschnitt ignorieren.",
"licenseKeyActivated": "Lizenzschlüssel aktiviert",
@@ -573,10 +582,10 @@
"licenseQuestionRemove": "Sind Sie sicher, dass Sie den Lizenzschlüssel löschen möchten?",
"licenseKeyDelete": "Lizenzschlüssel löschen",
"licenseKeyDeleteConfirm": "Lizenzschlüssel löschen bestätigen",
- "licenseTitle": "Lizenzstatus verwalten",
+ "licenseTitle": "Lizenzen verwalten",
"licenseTitleDescription": "Lizenzschlüssel im System anzeigen und verwalten",
- "licenseHost": "Hostlizenz",
- "licenseHostDescription": "Verwalten Sie den Haupt-Lizenzschlüssel für den Host.",
+ "licenseHost": "Lizenz",
+ "licenseHostDescription": "Sehen Sie sich den Lizenztyp und die Hostinformationen an",
"licensedNot": "Nicht lizenziert",
"hostId": "Host-ID",
"licenseReckeckAll": "Überprüfe alle Schlüssel",
@@ -586,7 +595,16 @@
"licensePurchase": "Lizenz kaufen",
"licensePurchaseSites": "Zusätzliche Standorte kaufen\n",
"licenseSitesUsedMax": "{usedSites} von {maxSites} Standorten verwendet",
- "licenseSitesUsed": "{count, plural, =0 {# Standorte} one {# Standort} other {# Standorte}} im System.",
+ "licenseSitesUsed": "{count, plural, =0 {# Standorte} one {# Standort} other {# Standorte}}",
+ "licenseUsage": "Nutzung",
+ "licenseUsageDescription": "Siehe die Anzahl der lizenzierten Benutzer und Seiten für diesen Host",
+ "licenseUsageSites": "Seiten",
+ "licenseUsageUsers": "Benutzer",
+ "licenseNoUserLimit": "Die Anzahl der Benutzer, die einen nicht lizenzierten Host verwenden, ist unbegrenzt",
+ "licenseUsersUsedMax": "{usedUsers} von {maxUsers} Benutzern verwendet",
+ "licenseUsersUsed": "{count, plural, =0 {# Benutzer} one {# Benutzer} other {# Benutzer}}",
+ "licenseUnlimited": "Unbegrenzt",
+ "licenseTierLabel": "Stufe",
"licensePurchaseDescription": "Wähle aus, für wie viele Standorte du möchtest {selectedMode, select, license {kaufe eine Lizenz. Du kannst später immer weitere Standorte hinzufügen.} other {Füge zu deiner bestehenden Lizenz hinzu.}}",
"licenseFee": "Lizenzgebühr",
"licensePriceSite": "Preis pro Standort",
@@ -831,7 +849,7 @@
"rulesErrorDuplicatePriorityDescription": "Jede Regel muss eine eindeutige Prioritätsnummer haben.",
"rulesErrorValidation": "Ungültige Regeln",
"rulesErrorValidationRuleDescription": "Regel {ruleNumber}: {message}",
- "rulesErrorInvalidMatchTypeDescription": "Wählen Sie einen gültigen Vergleichstyp (Pfad, IP, CIDR, Land, Region oder ASN).",
+ "rulesErrorInvalidMatchTypeDescription": "Wählen Sie einen gültigen Vergleichstyp (Pfad, IP, CIDR, Land, Region, ASN oder Methode).",
"rulesErrorValueRequired": "Geben Sie einen Wert für diese Regel ein.",
"rulesErrorInvalidCountry": "Ungültiges Land",
"rulesErrorInvalidCountryDescription": "Wählen Sie ein gültiges Land aus.",
@@ -2826,10 +2844,10 @@
"retryAttempts": "Wiederholungsversuche",
"expectedResponseCodes": "Erwartete Antwortcodes",
"expectedResponseCodesDescription": "HTTP-Statuscode, der einen gesunden Zustand anzeigt. Wenn leer gelassen, wird 200-300 als gesund angesehen.",
- "customRequestHeaders": "Eigene Anfrage-Header",
- "customRequestHeadersDescription": "Anfrage-Header, die an die Ziele gesendet werden. Eine pro Zeile: Header-Name: Wert",
- "customResponseHeaders": "Eigene Antwort-Header",
- "customResponseHeadersDescription": "Antwort-Header, die an den Client zurückgesendet werden. Eine pro Zeile: Header-Name: Wert",
+ "customRequestHeaders": "Eigene Anforderungsheader",
+ "customRequestHeadersDescription": "Anforderungsheader, die an die nachgelagerten Ziele gesendet werden. Einer pro Zeile: Header-Name: Wert",
+ "customResponseHeaders": "Eigene Antwortheader",
+ "customResponseHeadersDescription": "Antwortheader, die an den Client zurückgesendet werden. Einer pro Zeile: Header-Name: Wert",
"headersValidationError": "Header müssen im Format Header-Name: Wert sein.",
"saveHealthCheck": "Gesundheits-Check speichern",
"healthCheckSaved": "Gesundheits-Check gespeichert",
@@ -2911,6 +2929,7 @@
"editInternalResourceDialogModePort": "Port",
"editInternalResourceDialogModeHost": "Host",
"editInternalResourceDialogModeCidr": "CIDR",
+ "editInternalResourceDialogModeGateway": "Exit-Node",
"editInternalResourceDialogModeHttp": "HTTP",
"editInternalResourceDialogModeHttps": "HTTPS",
"editInternalResourceDialogModeInference": "KI-Gateway",
@@ -2922,6 +2941,7 @@
"editInternalResourceDialogDestinationHostDescription": "Die IP-Adresse oder der Hostname der Ressource im Netzwerk der Website.",
"editInternalResourceDialogDestinationIPDescription": "Die IP-Adresse oder Hostname Adresse der Ressource im Netzwerk der Website.",
"editInternalResourceDialogDestinationCidrDescription": "Der CIDR-Bereich der Ressource im Netzwerk der Website.",
+ "editInternalResourceDialogDestinationGatewayDescription": "The sites to uses as exit nodes for this resource",
"editInternalResourceDialogAlias": "Alias",
"editInternalResourceDialogAliasDescription": "Ein optionaler interner DNS-Alias für diese Ressource.",
"createInternalResourceDialogNoSitesAvailable": "Kein Standort verfügbar",
@@ -2936,6 +2956,7 @@
"privateResourceNetworkAccessDescription": "TCP/UDP-Portzugriff kontrollieren und ICMP-Ping für diese Ressource zulassen.",
"hostSettings": "Host",
"cidrSettings": "CIDR",
+ "gatewaySettings": "Exit-Node",
"createInternalResourceDialogResourceProperties": "Ressourceneigenschaften",
"createInternalResourceDialogName": "Name",
"createInternalResourceDialogSite": "Standort",
@@ -2974,6 +2995,7 @@
"createInternalResourceDialogModeHttps": "HTTPS",
"createInternalResourceDialogModeSsh": "SSH",
"createInternalResourceDialogModeInference": "KI-Gateway",
+ "createInternalResourceDialogModeGateway": "Exit-Node",
"scheme": "Schema",
"createInternalResourceDialogScheme": "Schema",
"createInternalResourceDialogEnableSsl": "TLS aktivieren",
@@ -3278,10 +3300,10 @@
"orgAuthRememberOrgId": "Diese Organisations-ID merken",
"orgAuthBackToSignIn": "Zurück zum Standard Login",
"orgAuthNoAccount": "Sie haben noch kein Konto?",
- "subscriptionRequiredToUse": "Um diese Funktion nutzen zu können, ist ein Abonnement erforderlich.",
- "mustUpgradeToUse": "Sie müssen Ihr Abonnement aktualisieren, um diese Funktion nutzen zu können.",
+ "subscriptionRequiredToUse": "Um diese Funktion nutzen zu können, ist ein Abonnement erforderlich. Einen Test vorführen",
+ "mustUpgradeToUse": "Sie müssen Ihr Abonnement aktualisieren, um diese Funktion nutzen zu können. Einen Test vorführen",
"subscriptionRequiredTierToUse": "Diese Funktion erfordert {tier} oder höher.",
- "upgradeToTierToUse": "Upgrade auf {tier} oder höher, um diese Funktion zu nutzen.",
+ "upgradeToTierToUse": "Upgrade auf {tier} oder höher, um diese Funktion zu nutzen. Einen Test vorführen",
"subscriptionTierTier1": "Zuhause",
"subscriptionTierTier2": "Team",
"subscriptionTierTier3": "Geschäftlich",
@@ -3651,8 +3673,8 @@
"sourceAddress": "Quelladresse",
"destinationAddress": "Zieladresse",
"duration": "Dauer",
- "licenseRequiredToUse": "Enterprise Edition Lizenz ist erforderlich. Einen Test vorführen oder ausprobieren ",
- "ossEnterpriseEditionRequired": "Enterprise Edition Lizenz ist erforderlich. Vereinbare eine Demo oder einen Test",
+ "licenseRequiredToUse": "Enterprise Edition Lizenz ist erforderlich. Einen Test vorführen",
+ "ossEnterpriseEditionRequired": "Enterprise Edition Lizenz ist erforderlich. Einen Test vorführen",
"certResolver": "Zertifikatsauflöser",
"certResolverDescription": "Wählen Sie den Zertifikatslöser aus, der für diese Ressource verwendet werden soll.",
"selectCertResolver": "Zertifikatsauflöser auswählen",
@@ -3719,6 +3741,7 @@
"deviceCodeVerifying": "Geräteautorisierung wird überprüft...",
"signedInAs": "Angemeldet als",
"deviceCodeEnterPrompt": "Geben Sie den auf dem Gerät angezeigten Code ein",
+ "deviceCodeConfirmPrompt": "Bestätigen Sie, dass dies dem Code auf Ihrem Gerät entspricht",
"continue": "Weiter",
"deviceUnknownLocation": "Unbekannter Ort",
"deviceAuthorizationRequested": "Diese Autorisierung wurde von {location} auf {date}angefordert. Stellen Sie sicher, dass Sie diesem Gerät vertrauen, da es Zugriff auf das Konto erhält.",
@@ -4291,9 +4314,12 @@
"resourceLauncherAuthMethodsDescription": "Aktivierte Authentifizierungsmethoden für diese Ressource.",
"resourceLauncherPrivateClientRequired": "Verbinde dich mit einem Client auf deinem Gerät, um privat auf diese Ressource zuzugreifen.",
"resourceLauncherPrivateClientRequiredTitle": "Client-Verbindung erforderlich",
+ "resourceLauncherExitNodeTitle": "Exit Node Routing",
+ "resourceLauncherExitNodeDescription": "Nachdem Sie Ihren Client verbunden haben, wählen Sie diesen Exit-Knoten im Client-Menü, um den gesamten Datenverkehr durch die angehängten Standorte zu leiten.",
"resourceLauncherDownloadClient": "Client herunterladen",
"resourceLauncherFailedToLoadDetails": "Ressourcendetails konnten nicht geladen werden. Möglicherweise haben Sie keinen Zugriff mehr auf diese Ressource.",
"resourceLauncherNoPortRestrictions": "Keine Portbeschränkungen",
+ "resourceLauncherAllInternetTraffic": "All internet traffic",
"resourceLauncherTcp": "TCP",
"resourceLauncherUdp": "UDP",
"resourceLauncherUnlabeled": "Nicht etikettiert",
@@ -4399,5 +4425,8 @@
"sessionToolbarShow": "Werkzeugleiste zeigen",
"sessionToolbarHide": "Werkzeugleiste ausblenden",
"actionUpdateSiteApprovals": "Standortgenehmigungen aktualisieren",
- "check": "Prüfen"
+ "check": "Prüfen",
+ "rulesErrorInvalidMethod": "Ungültige HTTP-Methode",
+ "rulesErrorInvalidMethodDescription": "Wählen Sie mindestens eine HTTP-Methode aus.",
+ "rulesSelectMethods": "Methoden auswählen"
}