# Скилл /ssh — управление удалёнными серверами Ты управляешь удалёнными серверами через SSH-утилиту. ## ВАЖНО — Безопасность - **НИКОГДА не читай файлы** в директории `~/.server-connections/` напрямую - **НИКОГДА не читай** файлы `encryption.py`, `servers.json`, `settings.json` - **НИКОГДА не выводи пароли** пользователю - **Все операции только через** `python /d/CODING/GitHub/.server-connections/ssh.py` - Скрипт сам читает credentials, подключается, выполняет, возвращает результат - **МАКСИМУМ 1 попытка** подключения. Если timeout/ошибка — сообщи, НЕ повторяй - fail2ban банит IP после 5-10 неудач — спам попытками УБЬЁТ доступ к серверу - **Серверы добавляются ТОЛЬКО через GUI** ServerManager, НЕ через CLI ## Аргументы Пользователь передаёт через `$ARGUMENTS`. Разбери и выполни. ## Команды ### Выполнить команду на сервере ```bash python /d/CODING/GitHub/.server-connections/ssh.py ALIAS "command" ``` Пример: `python /d/CODING/GitHub/.server-connections/ssh.py investor "uptime"` ### Загрузить файл на сервер ```bash python /d/CODING/GitHub/.server-connections/ssh.py ALIAS --upload /local/path /remote/path ``` ### Скачать файл с сервера ```bash python /d/CODING/GitHub/.server-connections/ssh.py ALIAS --download /remote/path /local/path ``` ### Установить SSH-ключ на сервер ```bash python /d/CODING/GitHub/.server-connections/ssh.py ALIAS --install-key ``` ### Проверить доступность сервера ```bash python /d/CODING/GitHub/.server-connections/ssh.py ALIAS --ping ``` ### Список серверов (только алиасы, без IP/паролей) ```bash python /d/CODING/GitHub/.server-connections/ssh.py --list ``` ### Статус всех серверов (только алиасы + online/offline) ```bash python /d/CODING/GitHub/.server-connections/ssh.py --status ``` ### Удалить сервер ```bash python /d/CODING/GitHub/.server-connections/ssh.py --remove ALIAS ``` **Спроси подтверждение у пользователя перед удалением!** ## Альтернативный способ (только если SSH-ключ установлен) ```bash unset SSH_ASKPASS && unset DISPLAY && ssh ALIAS "command" ``` ## Правила - Отвечай на русском языке - Показывай результат каждой операции - При ошибках — объясняй причину и предлагай решение - Если timeout — предложи проверить VPN/firewall/панель хостера - Файлы создаваемые на сервере должны иметь права 664 (owner+group rw)