v1.8.52: icons module, Windows SSH sanitization, embedded RDP improvements, UI polish

- Add core/icons.py — centralized icon text helper with emoji/symbol support
- Add Windows SSH command sanitization in ssh.py (Linux→Windows auto-translation)
- Improve embedded RDP: launch tab connect/disconnect, fullscreen toggle
- Refactor sidebar: cleaner server type badges
- Update server_dialog: adaptive fields per server type
- Add setup_openssh.bat tool
- Update skill-ssh.md and CLAUDE.md docs for Windows SSH support
- Cleanup old releases, add v1.8.48-v1.8.52

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
chrome-storm-c442
2026-02-24 14:37:37 -05:00
parent 142b68515c
commit 4959004a3f
30 changed files with 596 additions and 134 deletions

30
tools/setup_openssh.bat Normal file
View File

@@ -0,0 +1,30 @@
@echo off
:: Setup OpenSSH Server on port 61374
:: Run as Administrator!
echo === Installing OpenSSH Server ===
powershell -Command "Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0"
echo === Starting sshd to generate config ===
powershell -Command "Start-Service sshd; Stop-Service sshd"
set CFG=C:\ProgramData\ssh\sshd_config
echo === Setting port 61374 ===
powershell -Command "(Get-Content '%CFG%') -replace '^#?Port\s+\d+', 'Port 61374' | Set-Content '%CFG%'"
echo === Enabling password auth ===
powershell -Command "(Get-Content '%CFG%') -replace '^#?PasswordAuthentication\s+\w+', 'PasswordAuthentication yes' | Set-Content '%CFG%'"
echo === Opening firewall port 61374 ===
powershell -Command "New-NetFirewallRule -Name 'OpenSSH-Server-61374' -DisplayName 'OpenSSH Server (port 61374)' -Direction Inbound -Protocol TCP -LocalPort 61374 -Action Allow"
echo === Starting sshd + autostart ===
powershell -Command "Start-Service sshd; Set-Service -Name sshd -StartupType Automatic"
echo === Verifying ===
powershell -Command "netstat -an | Select-String '61374'"
echo.
echo Done! SSH listening on port 61374
pause

View File

@@ -170,6 +170,7 @@ unset SSH_ASKPASS && unset DISPLAY && ssh ALIAS "command"
- **Auto-sudo** (SSH): если user на сервере не root — команды автоматически оборачиваются в `sudo -S`, пароль подаётся через stdin. Тебе НЕ нужно добавлять `sudo` в команду
- **--no-sudo** (SSH): если команда не требует root (например `ls`, `cat`), используй `--no-sudo` для скорости
- **Windows SSH — автосанитизация**: при подключении к Windows серверам (определяется по alias/notes/os) Linux-команды автоматически транслируются в Windows-эквиваленты. Можно спокойно писать `ls`, `cat`, `grep`, `ps`, `df` — скрипт сам переведёт в `dir`, `type`, `Select-String`, `Get-Process`, и т.д. Pipe-цепочки (`cat file | grep error`) автоматически оборачиваются в PowerShell. Кодировка принудительно UTF-8 (`chcp 65001`). Команды `powershell ...`, `pwsh ...`, `cmd /c ...` проходят без изменений (passthrough). `sudo` автоматически удаляется, `chmod`/`chown` пропускаются с предупреждением
- **Timeout**: 120 секунд на SSH-команду, 10 секунд на SQL/Redis/HTTP-запросы, 15 секунд на подключение
- **SSH-ключ**: пробуется первым, fallback на пароль если ключ не подходит
- **Прогресс**: upload/download файлов >=1MB показывают 25/50/75% milestone, итог с размером/временем/скоростью