feat: convert ssh tunnels into a plugin

This commit is contained in:
LukeGus committed 2026-09-23 17:27:28 -05:00
1 parent c85c1fdb86
commit 1682861853
220 files changed
+36928 -11374

No files matched your search

+3 -130
View File
@@ -671,7 +671,6 @@
"home": "Thuis",
"terminal": "Terminal",
"localTerminal": "Lokale terminal",
"tunnels": "Tunnels",
"fileManager": "Bestandsbeheerder",
"serverStats": "Hoststatistieken",
"admin": "Beheerder",
@@ -714,7 +713,6 @@
"macros": "Macro's",
"hostManager": "Hostmanager",
"credentials": "Referenties",
"portForwarding": "Doorsturen",
"connections": "Verbindingen",
"serial": "Serieel",
"keepSideMenuOpen": "Menu open houden",
@@ -765,7 +763,6 @@
"tabTerminal": "Terminal",
"tabRdp": "RDP",
"tabVnc": "VNC",
"tabTunnels": "Tunnels",
"tabStats": "Hoststatistieken",
"tabTelnet": "Telnet",
"tabSharing": "Delen",
@@ -1071,31 +1068,8 @@
"startupSnippetLabel": "Opstartfragment",
"keepaliveIntervalLabel": "Keepalive-interval (seconden)",
"maxKeepaliveMisses": "Max Keepalive mist",
"tunnelSettings": "Tunnelinstellingen",
"enableTunneling": "Tunneling inschakelen",
"enableTunnelingDesc": "Schakel de SSH-tunnelfunctionaliteit voor deze host in.",
"serverTunnelsSection": "Servertunnels",
"addTunnelBtn": "Voeg tunnel toe",
"noTunnelsConfigured": "Er zijn geen tunnels geconfigureerd.",
"tunnelLabel": "Tunnel {{number}}",
"tunnelType": "Tunneltype",
"tunnelModeLocalDesc": "Een lokale poort doorsturen naar een poort op de externe server (of een host die vanaf die server bereikbaar is).",
"tunnelModeRemoteDesc": "Een poort op de externe server doorsturen naar een lokale poort op uw computer.",
"tunnelModeDynamicDesc": "Maak een SOCKS5-proxy aan op een lokale poort voor dynamische poortdoorsturing.",
"sameHost": "Deze host (directe tunnel)",
"endpointHost": "Eindpunthost",
"endpointHostPlaceholder": "Dezelfde host, SSH-host of bereikbare host/IP-adres",
"endpointPort": "Eindpuntpoort",
"bindHost": "Bind Host",
"sourcePort": "Bronpoort",
"maxRetries": "Max. aantal herhalingen",
"retryIntervalS": "Herhaalinterval (s)",
"autoStartLabel": "Automatisch starten",
"autoStartDesc": "Deze tunnel automatisch verbinden wanneer de host wordt geladen.",
"tunnelConnecting": "Tunnelverbinding...",
"tunnelDisconnected": "Tunnel losgekoppeld",
"failedToConnectTunnel": "Verbinding mislukt",
"failedToDisconnectTunnel": "Verbinding verbreken mislukt",
"enableTmuxMonitor": "Tmux Monitor inschakelen",
"enableTmuxMonitorDesc": "Toon deze host in de Tmux Monitor en voeg de bijbehorende Tmux-acties toe aan de zijbalk.",
"enableTerminalToolbar": "Terminalwerkbalk inschakelen",
@@ -1326,12 +1300,9 @@
"refreshBtn": "Vernieuwen",
"addTag": "Tags toevoegen...",
"deleteConfirmBtn": "Verwijderen",
"tunnelRequirementsText": "De SSH-server moet de volgende instellingen hebben: GatewayPorts yes, AllowTcpForwarding yes en PermitRootLogin yes in /etc/ssh/sshd_config.",
"deleteHostConfirm": "Verwijder \"{{name}}\"?",
"enableAtLeastOneProtocol": "Schakel ten minste één van de bovenstaande protocollen in om de authenticatie- en verbindingsinstellingen te configureren.",
"keyPassphrase": "Sleutelwachtwoordzin",
"connectBtn": "Verbinden",
"disconnectBtn": "Verbinding verbreken",
"basicInformation": "Basisgegevens",
"authDetailsSection": "Authenticatiegegevens",
"credTypeLabel": "Type",
@@ -1952,100 +1923,26 @@
"transferFailedRetryHint": "Er zijn gedeeltelijke gegevens op de bestemming bewaard gebleven. De herhaalpoging wordt hervat zodra de verbinding hersteld is."
},
"tunnels": {
"noSshTunnels": "Geen SSH-tunnels",
"createFirstTunnelMessage": "Je hebt nog geen SSH-tunnels aangemaakt. Configureer tunnelverbindingen in de Host Manager om te beginnen.",
"connected": "Aangesloten",
"disconnected": "Verbinding verbroken",
"connecting": "Verbinden...",
"error": "Fout",
"canceling": "Annuleren...",
"connect": "Verbinden",
"disconnect": "Verbinding verbreken",
"cancel": "Annuleren",
"port": "Haven",
"localPort": "Lokale haven",
"remotePort": "Externe poort",
"destinationPort": "Bestemmingshaven",
"currentHostPort": "Huidige hostpoort",
"endpointPort": "Eindpuntpoort",
"bindIp": "Lokaal IP-adres",
"localAddress": "Lokaal adres",
"remoteAddress": "Extern adres",
"destinationAddress": "Bestemmingsadres",
"remoteBindAddress": "Extern bindadres",
"intermediateHost": "Tussenliggende gastheer",
"endpointSshConfig": "SSH-configuratie van het eindpunt",
"endpointSshHost": "Eindpunt SSH-host",
"endpointSshHostPlaceholder": "Selecteer een geconfigureerde host.",
"endpointSshHostRequired": "Selecteer een SSH-host voor elke clienttunnel.",
"attempt": "Poging {{current}} van {{max}}",
"nextRetryIn": "Volgende poging over {{seconds}} seconden",
"clientTunnels": "Clienttunnels",
"clientTunnel": "Clienttunnel",
"addClientTunnel": "Clienttunnel toevoegen",
"noClientTunnels": "Er zijn geen clienttunnels geconfigureerd op deze desktop.",
"tunnelName": "Tunnelnaam",
"remoteHost": "Externe host",
"autoStart": "Automatische start",
"clientAutoStartDesc": "Begint wanneer deze desktopclient wordt geopend en blijft verbonden.",
"clientManualStartDesc": "Gebruik Start en Stop vanuit deze regel. Termix opent deze niet automatisch.",
"clientRemoteServerNote": "Voor het doorsturen van externe poorten zijn mogelijk de instellingen AllowTcpForwarding en GatewayPorts vereist op de SSH-server van het eindpunt. De externe poort wordt gesloten wanneer deze desktop de verbinding verbreekt.",
"clientTunnelStarted": "Clienttunnel gestart",
"clientTunnelStopped": "Clienttunnel gestopt",
"tunnelTestSucceeded": "Tunneltest geslaagd",
"tunnelTestFailed": "Tunneltest mislukt",
"localSaved": "Clienttunnels opgeslagen",
"localSaveError": "Het opslaan van lokale clienttunnels is mislukt.",
"invalidBindIp": "Het lokale IP-adres moet een geldig IPv4-adres zijn.",
"invalidLocalTargetIp": "Het lokale doel-IP-adres moet een geldig IPv4-adres zijn.",
"invalidRemoteAddress": "Een extern adres is vereist.",
"invalidLocalPort": "Het lokale poortnummer moet tussen 1 en 65535 liggen.",
"invalidRemotePort": "De externe poort moet tussen 1 en 65535 liggen.",
"invalidLocalTargetPort": "De lokale doelpoort moet tussen 1 en 65535 liggen.",
"invalidEndpointPort": "De eindpoort moet tussen 1 en 65535 liggen.",
"duplicateAutoStartBind": "Slechts één automatisch startende clienttunnel kan {{bind}} gebruiken.",
"manualControlError": "Het bijwerken van de tunnelstatus is mislukt.",
"active": "Actief",
"start": "Begin",
"stop": "Stop",
"test": "Test",
"type": "Tunneltype",
"typeLocal": "Lokaal (-L)",
"typeRemote": "Afstandsbediening (-R)",
"typeDynamic": "Dynamisch (-D)",
"typeServerLocalDesc": "Huidige host naar eindpunt.",
"typeServerRemoteDesc": "Eindpunt terug naar de huidige host.",
"typeClientLocalDesc": "Lokale computer naar eindpunt.",
"typeClientRemoteDesc": "Eindpunt terug naar lokale computer.",
"typeClientDynamicDesc": "SOCKS op de lokale computer.",
"typeDynamicDesc": "Stuur SOCKS5 CONNECT-verkeer door via SSH.",
"forwardDescriptionServerLocal": "Huidige host {{sourcePort}} → eindpunt {{endpointPort}}.",
"forwardDescriptionServerRemote": "Eindpunt {{endpointPort}} → huidige host {{sourcePort}}.",
"forwardDescriptionServerDynamic": "SOCKS op de huidige host {{sourcePort}}.",
"forwardDescriptionClientLocal": "Lokaal {{sourcePort}} → extern {{endpointPort}}.",
"forwardDescriptionClientRemote": "Extern {{sourcePort}} → lokaal {{endpointPort}}.",
"forwardDescriptionClientDynamic": "SOCKS op lokale poort {{sourcePort}}.",
"summaryClientLocal": "{{localHost}}:{{localPort}} → {{remoteHost}}:{{remotePort}} via {{endpoint}}",
"summaryClientRemote": "{{remoteHost}}:{{remotePort}} op {{endpoint}} → {{localHost}}:{{localPort}}",
"summaryClientDynamic": "{{localHost}}:{{localPort}} → SOKKEN via {{endpoint}}",
"autoNameClientLocal": "Lokaal {{localPort}} → {{endpoint}} {{remotePort}}",
"autoNameClientRemote": "{{endpoint}} {{remotePort}} → lokaal {{localPort}}",
"autoNameClientDynamic": "SOKKEN {{localPort}} via {{endpoint}}",
"route": "Route:",
"lastStarted": "Laatst gestart",
"lastTested": "Laatst getest",
"lastError": "Laatste fout",
"maxRetries": "Max. aantal herhalingen",
"maxRetriesDescription": "Maximaal aantal herhaalpogingen.",
"retryInterval": "Interval voor herpogingen (seconden)",
"retryIntervalDescription": "De tijd die tussen herhaalpogingen verstreken moet worden.",
"local": "Lokaal",
"remote": "Op afstand",
"destination": "Bestemming",
"host": "Gastheer",
"mode": "Modus",
"noHostSelected": "Geen host geselecteerd",
"working": "Bezig met verwerken..."
"remote": "Op afstand"
},
"cardGrid": {
"dragToMove": "Sleep om te verplaatsen",
@@ -2175,37 +2072,13 @@
},
"profile": {
"c2sTunnelConfigDesc": "Lokale desktoptunnels gericht op geconfigureerde SSH-hosts.",
"c2sTunnelPresets": "Clienttunnel-voorinstellingen",
"c2sTunnelPresetsDesc": "Sla de lokale tunnellijst van deze desktopclient op als een vooraf ingestelde server met een naam, of laad een vooraf ingestelde server in deze client.",
"c2sTunnelPresetsUnavailable": "Clienttunnelvoorinstellingen zijn alleen beschikbaar in de desktopclient.",
"c2sPresetName": "Voorinstellingnaam",
"c2sPresetNamePlaceholder": "Naam van de clientvoorinstelling",
"c2sPresetToLoad": "Voorinstelling om te laden",
"c2sNoPresetSelected": "Geen voorinstelling geselecteerd",
"c2sNoPresets": "Geen presets opgeslagen",
"c2sLoadPreset": "Laden",
"c2sCurrentLocalConfig": "{{count}} lokale clienttunnel(s) geconfigureerd op deze desktop.",
"c2sPresetSyncNote": "Voorinstellingen zijn expliciete momentopnamen; het laden ervan vervangt de lokale lijst met clienttunnels van deze desktopclient.",
"c2sPresetSaved": "Voorinstelling voor clienttunnel opgeslagen",
"c2sPresetLoaded": "Client tunnel preset lokaal geladen",
"c2sPresetRenamed": "Client tunnel-voorinstelling hernoemd",
"c2sPresetDeleted": "Client tunnel-voorinstelling verwijderd",
"c2sPresetLoadError": "Het laden van de clienttunnelvoorinstellingen is mislukt."
"c2sTunnelPresetsDesc": "Sla de lokale tunnellijst van deze desktopclient op als een vooraf ingestelde server met een naam, of laad een vooraf ingestelde server in deze client."
},
"placeholders": {
"maxRetries": "3",
"retryInterval": "10",
"language": "Taal",
"keyPassword": "sleutel wachtwoord",
"pastePrivateKey": "Plak hier uw privésleutel...",
"localListenerHost": "127.0.0.1 (lokaal luisteren)",
"localTargetHost": "127.0.0.1 (doel op deze computer)",
"remoteTargetHost": "127.0.0.1 (doel van eindpunt)",
"remoteBindHost": "127.0.0.1 (luisteren op eindpunt)",
"socksListenerHost": "127.0.0.1 (SOCKS-luisteraar)",
"enterPassword": "Voer uw wachtwoord in",
"defaultPort": "22",
"defaultEndpointPort": "224"
"enterPassword": "Voer uw wachtwoord in"
},
"dashboard": {
"title": "Dashboard",