SOCKS5 support (#452)

* Add termix.rb Cask file

* Update Termix to version 1.9.0 with new checksum

* Update README to remove 'coming soon' notes

* SOCKS5 support

Adding single and chain socks5 proxy support

* fix: cleanup files

---------

Co-authored-by: Luke Gustafson <88517757+LukeGus@users.noreply.github.com>
Co-authored-by: LukeGus <bugattiguy527@gmail.com>
This commit was merged in pull request #452.
This commit is contained in:
Denis
2025-12-20 09:35:40 +07:00
committed by GitHub
parent 94651107c1
commit ab1c63a4f6
18 changed files with 1342 additions and 284 deletions

View File

@@ -640,6 +640,7 @@
"failedToLoadHosts": "Failed to load hosts",
"retry": "Retry",
"refresh": "Refresh",
"optional": "Optional",
"hostsCount": "{{count}} hosts",
"importJson": "Import JSON",
"importing": "Importing...",
@@ -889,6 +890,47 @@
"searchServers": "Search servers...",
"noServerFound": "No server found",
"jumpHostsOrder": "Connections will be made in order: Jump Host 1 → Jump Host 2 → ... → Target Server",
"socks5Proxy": "SOCKS5 Proxy",
"socks5Description": "Configure SOCKS5 proxy for SSH connection. All traffic will be routed through the specified proxy server.",
"enableSocks5": "Enable SOCKS5 Proxy",
"enableSocks5Description": "Use SOCKS5 proxy for this SSH connection",
"socks5Host": "Proxy Host",
"socks5Port": "Proxy Port",
"socks5Username": "Proxy Username",
"socks5Password": "Proxy Password",
"socks5UsernameOptional": "Optional: leave empty if proxy doesn't require authentication",
"socks5PasswordOptional": "Optional: leave empty if proxy doesn't require authentication",
"socks5ProxyChain": "Proxy Chain",
"socks5ProxyChainDescription": "Configure a chain of SOCKS proxies. Each proxy in the chain will connect through the previous one.",
"socks5ProxyMode": "Proxy Mode",
"socks5UseSingleProxy": "Use Single Proxy",
"socks5UseProxyChain": "Use Proxy Chain",
"socks5UsePreset": "Use Saved Preset",
"socks5SelectPreset": "Select Preset",
"socks5ManagePresets": "Manage Presets",
"socks5ProxyNode": "Proxy {{number}}",
"socks5AddProxy": "Add Proxy to Chain",
"socks5RemoveProxy": "Remove Proxy",
"socks5ProxyType": "Proxy Type",
"socks5SaveAsPreset": "Save as Preset",
"socks5SavePresetTitle": "Save Proxy Chain as Preset",
"socks5SavePresetDescription": "Save the current proxy chain configuration as a reusable preset",
"socks5PresetName": "Preset Name",
"socks5PresetDescription": "Description (optional)",
"socks5PresetCreated": "Proxy chain preset created",
"socks5PresetUpdated": "Proxy chain preset updated",
"socks5PresetDeleted": "Proxy chain preset deleted",
"socks5PresetSaved": "Preset \"{{name}}\" saved successfully",
"socks5PresetSaveError": "Failed to save preset",
"socks5PresetNameRequired": "Preset name is required",
"socks5EmptyChainError": "Cannot save an empty proxy chain",
"socks5ProxyChainEmpty": "Add at least one proxy to the chain",
"socks5HostDescription": "Hostname or IP address of the SOCKS proxy server",
"socks5PortDescription": "Port number of the SOCKS proxy server (default: 1080)",
"addProxyNode": "Add Proxy Node",
"noProxyNodes": "No proxy nodes configured. Click 'Add Proxy Node' to add one.",
"proxyNode": "Proxy Node",
"proxyType": "Proxy Type",
"quickActions": "Quick Actions",
"quickActionsDescription": "Quick actions allow you to create custom buttons that execute SSH snippets on this server. These buttons will appear at the top of the Server Stats page for quick access.",
"quickActionsList": "Quick Actions List",
@@ -1600,7 +1642,12 @@
"folderName": "Enter folder name",
"fullPath": "Enter full path to item",
"currentPath": "Enter current path to item",
"newName": "Enter new name"
"newName": "Enter new name",
"socks5Host": "127.0.0.1",
"socks5Username": "proxy username",
"socks5Password": "proxy password",
"socks5PresetName": "e.g., Work VPN Chain",
"socks5PresetDescription": "e.g., Proxy chain for accessing work servers"
},
"leftSidebar": {
"failedToLoadHosts": "Failed to load hosts",

View File

@@ -874,6 +874,48 @@
"searchServers": "Поиск серверов...",
"noServerFound": "Сервер не найден",
"jumpHostsOrder": "Подключения будут выполнены в порядке: Промежуточный хост 1 → Промежуточный хост 2 → ... → Целевой сервер",
"socks5Proxy": "SOCKS5 Прокси",
"socks5Description": "Настройте SOCKS5 прокси для SSH подключения. Весь трафик будет направлен через указанный прокси-сервер.",
"enableSocks5": "Включить SOCKS5 Прокси",
"enableSocks5Description": "Использовать SOCKS5 прокси для этого SSH подключения",
"socks5Host": "Хост прокси",
"socks5Port": "Порт прокси",
"socks5Username": "Имя пользователя прокси",
"socks5Password": "Пароль прокси",
"socks5UsernameOptional": "Необязательно: оставьте пустым, если прокси не требует аутентификации",
"socks5PasswordOptional": "Необязательно: оставьте пустым, если прокси не требует аутентификации",
"socks5ProxyChain": "Цепочка Прокси",
"socks5ProxyChainDescription": "Настройте цепочку SOCKS прокси. Каждый прокси в цепочке будет подключаться через предыдущий.",
"socks5ProxyMode": "Режим Прокси",
"socks5UseSingleProxy": "Использовать Один Прокси",
"socks5UseProxyChain": "Использовать Цепочку Прокси",
"socks5UsePreset": "Использовать Сохраненный Пресет",
"socks5SelectPreset": "Выбрать Пресет",
"socks5ManagePresets": "Управление Пресетами",
"socks5ProxyNode": "Прокси {{number}}",
"socks5AddProxy": "Добавить Прокси в Цепочку",
"socks5RemoveProxy": "Удалить Прокси",
"socks5ProxyType": "Тип Прокси",
"socks5SaveAsPreset": "Сохранить как Пресет",
"socks5SavePresetTitle": "Сохранить Цепочку Прокси как Пресет",
"socks5SavePresetDescription": "Сохраните текущую конфигурацию цепочки прокси как переиспользуемый пресет",
"socks5PresetName": "Название Пресета",
"socks5PresetDescription": "Описание (необязательно)",
"socks5PresetCreated": "Пресет цепочки прокси создан",
"socks5PresetUpdated": "Пресет цепочки прокси обновлен",
"socks5PresetDeleted": "Пресет цепочки прокси удален",
"socks5PresetSaved": "Пресет \"{{name}}\" успешно сохранен",
"socks5PresetSaveError": "Не удалось сохранить пресет",
"socks5PresetNameRequired": "Необходимо указать название пресета",
"socks5EmptyChainError": "Невозможно сохранить пустую цепочку прокси",
"socks5ProxyChainEmpty": "Добавьте хотя бы один прокси в цепочку",
"socks5HostDescription": "Имя хоста или IP-адрес SOCKS прокси сервера",
"socks5PortDescription": "Номер порта SOCKS прокси сервера (по умолчанию: 1080)",
"addProxyNode": "Добавить узел прокси",
"noProxyNodes": "Узлы прокси не настроены. Нажмите 'Добавить узел прокси' чтобы добавить.",
"proxyNode": "Узел прокси",
"proxyType": "Тип прокси",
"advancedAuthSettings": "Расширенные настройки аутентификации"
"advancedAuthSettings": "Расширенные настройки аутентификации",
"addQuickAction": "Добавить Quick Action",
"allHostsInFolderDeleted": "{{count}} хостов успешно удалены из папки \"{{folder}}\"",
@@ -1594,7 +1636,12 @@
"folderName": "Введите имя папки",
"fullPath": "Введите полный путь к элементу",
"currentPath": "Введите текущий путь к элементу",
"newName": "Введите новое имя"
"newName": "Введите новое имя",
"socks5Host": "127.0.0.1",
"socks5Username": "имя пользователя прокси",
"socks5Password": "пароль прокси",
"socks5PresetName": "например, Рабочая VPN Цепочка",
"socks5PresetDescription": "например, Цепочка прокси для доступа к рабочим серверам"
},
"leftSidebar": {
"failedToLoadHosts": "Не удалось загрузить хосты",