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": "Ana Sayfa",
"terminal": "Terminal",
"localTerminal": "Yerel Terminal",
"tunnels": "Tüneller",
"fileManager": "Dosya Yöneticisi",
"serverStats": "Sunucu Metrikleri",
"admin": "Yönetici",
@@ -714,7 +713,6 @@
"macros": "Makrolar",
"hostManager": "Ana Bilgisayar Yöneticisi",
"credentials": "Kimlik Bilgileri",
"portForwarding": "İletme",
"connections": "Bağlantılar",
"serial": "Seri",
"keepSideMenuOpen": "Menüyü Açık Tutun",
@@ -765,7 +763,6 @@
"tabTerminal": "Terminal",
"tabRdp": "RDP",
"tabVnc": "VNC",
"tabTunnels": "Tüneller",
"tabStats": "Sunucu Metrikleri",
"tabTelnet": "Telnet",
"tabSharing": "Paylaşım",
@@ -1071,31 +1068,8 @@
"startupSnippetLabel": "Başlangıç Betiği",
"keepaliveIntervalLabel": "Canlı Tutma Aralığı (saniye)",
"maxKeepaliveMisses": "Maksimum Keepalive Kaçırma",
"tunnelSettings": "Tünel Ayarları",
"enableTunneling": "Tünellemeyi Etkinleştir",
"enableTunnelingDesc": "Bu ana bilgisayar için SSH tünel işlevselliğini etkinleştir",
"serverTunnelsSection": "Sunucu Tünelleri",
"addTunnelBtn": "Tünel Ekle",
"noTunnelsConfigured": "Yapılandırılmış tünel yok.",
"tunnelLabel": "Tünel {{number}}",
"tunnelType": "Tünel Türü",
"tunnelModeLocalDesc": "Yerel bir portu uzak sunucudaki bir porta (veya ondan erişilebilen bir sunucuya) yönlendirin.",
"tunnelModeRemoteDesc": "Uzak sunucudaki bir portu, makinenizdeki yerel bir porta geri yönlendirin.",
"tunnelModeDynamicDesc": "Dinamik port yönlendirme için yerel bir portta bir SOCKS5 proxy oluşturun.",
"sameHost": "Bu ana bilgisayar (doğrudan tünel)",
"endpointHost": "Hedef Ana Bilgisayar",
"endpointHostPlaceholder": "Aynı ana bilgisayar, SSH ana bilgisayarı veya erişilebilir ana bilgisayar/IP",
"endpointPort": "Hedef Port",
"bindHost": "Bağlanma Ana Bilgisayarı",
"sourcePort": "Kaynak Port",
"maxRetries": "Maksimum Yeniden Deneme",
"retryIntervalS": "Yeniden Deneme Aralığı (sn)",
"autoStartLabel": "Otomatik başlat",
"autoStartDesc": "Ana bilgisayar yüklendiğinde bu tüneli otomatik olarak bağla",
"tunnelConnecting": "Tünel bağlanıyor...",
"tunnelDisconnected": "Tünel bağlantısı kesildi",
"failedToConnectTunnel": "Bağlantı başarısız oldu",
"failedToDisconnectTunnel": "Bağlantı kesme başarısız oldu",
"enableTmuxMonitor": "Tmux İzleyiciyi Etkinleştir",
"enableTmuxMonitorDesc": "Bu ana bilgisayarı Tmux İzleyicide göster ve tmux eylemlerini kenar çubuğuna ekle",
"enableTerminalToolbar": "Terminal Araç Çubuğunu Etkinleştir",
@@ -1326,12 +1300,9 @@
"refreshBtn": "Yenile",
"addTag": "Etiket Ekle...",
"deleteConfirmBtn": "Sil",
"tunnelRequirementsText": "SSH sunucusunda /etc/ssh/sshd_config dosyasında GatewayPorts yes, AllowTcpForwarding yes ve PermitRootLogin yes ayarlanmış olmalıdır.",
"deleteHostConfirm": "\"{{name}}\" silinsin mi?",
"enableAtLeastOneProtocol": "Kimlik doğrulama ve bağlantı ayarlarını yapılandırmak için yukarıdaki protokollerden en az birini etkinleştirin.",
"keyPassphrase": "Anahtar Parolası",
"connectBtn": "Bağlan",
"disconnectBtn": "Bağlantıyı Kes",
"basicInformation": "Temel Bilgiler",
"authDetailsSection": "Kimlik Doğrulama Detayları",
"credTypeLabel": "Tür",
@@ -1952,100 +1923,26 @@
"transferFailedRetryHint": "Hedefte kısmi veri tutuldu. Bağlantı geri geldiğinde yeniden deneme devam edecek."
},
"tunnels": {
"noSshTunnels": "SSH Tüneli yok",
"createFirstTunnelMessage": "Henüz hiç SSH tüneli oluşturmadınız. Başlamak için Ana Bilgisayar Yöneticisi'nde tünel bağlantılarını yapılandırın.",
"connected": "Bağlı",
"disconnected": "Bağlantı kesildi",
"connecting": "Bağlanıyor...",
"error": "Hata",
"canceling": "İptal ediliyor...",
"connect": "Bağlan",
"disconnect": "Bağlantıyı kes",
"cancel": "İptal",
"port": "Port",
"localPort": "Yerel Port",
"remotePort": "Uzak Port",
"destinationPort": "Varış Limanı",
"currentHostPort": "Geçerli Sunucu Portu",
"endpointPort": "Uç Nokta Portu",
"bindIp": "Yerel IP",
"localAddress": "Yerel Adres",
"remoteAddress": "Uzak Adres",
"destinationAddress": "Hedef Adresi",
"remoteBindAddress": "Uzak Bağlantı Adresi",
"intermediateHost": "Ara Ev Sahibi",
"endpointSshConfig": "Uç Nokta SSH Yapılandırması",
"endpointSshHost": "Uç Nokta SSH Sunucusu",
"endpointSshHostPlaceholder": "Yapılandırılmış bir sunucu seçin",
"endpointSshHostRequired": "Her istemci tüneli için bir uç nokta SSH sunucusu seçin.",
"attempt": "Deneme {{current}}/{{max}}",
"nextRetryIn": "Sonraki deneme {{seconds}} saniye sonra",
"clientTunnels": "İstemci Tünelleri",
"clientTunnel": "İstemci Tüneli",
"addClientTunnel": "İstemci Tüneli Ekle",
"noClientTunnels": "Bu masaüstünde hiçbir istemci tüneli yapılandırılmamış.",
"tunnelName": "Tünel Adı",
"remoteHost": "Uzak Sunucu",
"autoStart": "Otomatik Başlat",
"clientAutoStartDesc": "Bu masaüstü istemcisi açıldığında başlar ve bağlı kalır.",
"clientManualStartDesc": "Bu satırdaki Başlat ve Durdur'u kullanın. Termix otomatik olarak açmaz.",
"clientRemoteServerNote": "Uzak yönlendirme, uç nokta SSH sunucusunda AllowTcpForwarding ve GatewayPorts gerektirebilir. Bu masaüstü bağlantısı kesildiğinde uzak port kapanır.",
"clientTunnelStarted": "İstemci tüneli başlatıldı",
"clientTunnelStopped": "İstemci tüneli durduruldu",
"tunnelTestSucceeded": "Tünel testi başarılı",
"tunnelTestFailed": "Tünel testi başarısız",
"localSaved": "İstemci tünelleri kaydedildi",
"localSaveError": "Yerel istemci tünelleri kaydedilemedi",
"invalidBindIp": "Yerel IP geçerli bir IPv4 adresi olmalıdır.",
"invalidLocalTargetIp": "Yerel hedef IP geçerli bir IPv4 adresi olmalıdır.",
"invalidRemoteAddress": "Uzak adres gereklidir.",
"invalidLocalPort": "Yerel port 1 ile 65535 arasında olmalıdır.",
"invalidRemotePort": "Uzak port 1 ile 65535 arasında olmalıdır.",
"invalidLocalTargetPort": "Yerel hedef portu 1 ile 65535 arasında olmalıdır.",
"invalidEndpointPort": "Uç nokta portu 1 ile 65535 arasında olmalıdır.",
"duplicateAutoStartBind": "Yalnızca bir otomatik başlatmalı istemci tüneli {{bind}} kullanabilir.",
"manualControlError": "Tünel durumu güncellenemedi.",
"active": "Aktif",
"start": "Başlat",
"stop": "Durdur",
"test": "Test Et",
"type": "Tünel Türü",
"typeLocal": "Yerel (-L)",
"typeRemote": "Uzak (-R)",
"typeDynamic": "Dinamik (-D)",
"typeServerLocalDesc": "Geçerli sunucudan uç noktaya.",
"typeServerRemoteDesc": "Uç noktadan geçerli sunucuya.",
"typeClientLocalDesc": "Yerel bilgisayardan uç noktaya.",
"typeClientRemoteDesc": "Uç noktadan yerel bilgisayara.",
"typeClientDynamicDesc": "Yerel bilgisayarda SOCKS.",
"typeDynamicDesc": "SOCKS5 CONNECT trafiğini SSH üzerinden ilet.",
"forwardDescriptionServerLocal": "Geçerli sunucu {{sourcePort}} → uç nokta {{endpointPort}}.",
"forwardDescriptionServerRemote": "Uç nokta {{endpointPort}} → geçerli sunucu {{sourcePort}}.",
"forwardDescriptionServerDynamic": "Geçerli sunucuda SOCKS {{sourcePort}}.",
"forwardDescriptionClientLocal": "Yerel {{sourcePort}} → uzak {{endpointPort}}.",
"forwardDescriptionClientRemote": "Uzak {{sourcePort}} → yerel {{endpointPort}}.",
"forwardDescriptionClientDynamic": "Yerel port {{sourcePort}} üzerinde SOCKS.",
"summaryClientLocal": "{{localHost}}:{{localPort}} → {{remoteHost}}:{{remotePort}} via {{endpoint}}",
"summaryClientRemote": "{{remoteHost}}:{{remotePort}} on {{endpoint}} → {{localHost}}:{{localPort}}",
"summaryClientDynamic": "{{localHost}}:{{localPort}} → {{endpoint}} üzerinden SOCKS",
"autoNameClientLocal": "Yerel {{localPort}} → {{endpoint}} {{remotePort}}",
"autoNameClientRemote": "{{endpoint}} {{remotePort}} → yerel {{localPort}}",
"autoNameClientDynamic": "SOCKS {{localPort}} üzerinden {{endpoint}}",
"route": "Rota:",
"lastStarted": "Son başlatma",
"lastTested": "Son test",
"lastError": "Son hata",
"maxRetries": "Maks. Yeniden Deneme",
"maxRetriesDescription": "En fazla yeniden deneme sayısı.",
"retryInterval": "Yeniden Deneme Aralığı (saniye)",
"retryIntervalDescription": "Yeniden denemeler arasında beklenecek süre.",
"local": "Yerel",
"remote": "Uzak",
"destination": "Hedef",
"host": "Host",
"mode": "Mod",
"noHostSelected": "Hiçbir host seçilmedi",
"working": "Çalışıyor..."
"remote": "Uzak"
},
"cardGrid": {
"dragToMove": "Taşımak için sürükle",
@@ -2175,37 +2072,13 @@
},
"profile": {
"c2sTunnelConfigDesc": "Yapılandırılmış SSH ana makinelerini hedefleyen yerel masaüstü tünelleri.",
"c2sTunnelPresets": "İstemci Tünel Ön Ayarları",
"c2sTunnelPresetsDesc": "Bu masaüstü istemcinin yerel tünel listesini adlandırılmış bir sunucu ön ayarı olarak kaydedin veya bir ön ayarı bu istemciye yükleyin.",
"c2sTunnelPresetsUnavailable": "İstemci tünel ön ayarları yalnızca masaüstü istemcisinde kullanılabilir.",
"c2sPresetName": "Ön Ayar Adı",
"c2sPresetNamePlaceholder": "İstemci ön ayar adı",
"c2sPresetToLoad": "Yüklenecek Ön Ayar",
"c2sNoPresetSelected": "Ön ayar seçilmedi",
"c2sNoPresets": "Kayıtlı ön ayar yok",
"c2sLoadPreset": "Yükle",
"c2sCurrentLocalConfig": "Bu masaüstünde yapılandırılmış {{count}} yerel istemci tüneli.",
"c2sPresetSyncNote": "Ön ayarlar belirli anlık görüntülerdir; birini yüklemek, bu masaüstü istemcinin yerel istemci tünel listesini değiştirir.",
"c2sPresetSaved": "İstemci tünel ön ayarı kaydedildi",
"c2sPresetLoaded": "İstemci tünel ön ayarı yerel olarak yüklendi",
"c2sPresetRenamed": "İstemci tünel ön ayarı yeniden adlandırıldı",
"c2sPresetDeleted": "İstemci tünel ön ayarı silindi",
"c2sPresetLoadError": "İstemci tünel ön ayarları yüklenemedi"
"c2sTunnelPresetsDesc": "Bu masaüstü istemcinin yerel tünel listesini adlandırılmış bir sunucu ön ayarı olarak kaydedin veya bir ön ayarı bu istemciye yükleyin."
},
"placeholders": {
"maxRetries": "3",
"retryInterval": "10",
"language": "Dil",
"keyPassword": "anahtar parolası",
"pastePrivateKey": "Özel anahtarınızı buraya yapıştırın...",
"localListenerHost": "127.0.0.1 (yerel olarak dinle)",
"localTargetHost": "127.0.0.1 (bu bilgisayardaki hedef)",
"remoteTargetHost": "127.0.0.1 (uç noktadan hedef)",
"remoteBindHost": "127.0.0.1 (uç noktada dinleme)",
"socksListenerHost": "127.0.0.1 (SOCKS dinleyici)",
"enterPassword": "Parolanızı girin",
"defaultPort": "22",
"defaultEndpointPort": "224"
"enterPassword": "Parolanızı girin"
},
"dashboard": {
"title": "Gösterge Paneli",