mirror of
https://github.com/andrey271192/Keenetic_SSH.git
synced 2026-09-20 14:41:58 +00:00
fix/issue-1
Closes #1 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Keenetic SSH через Telegram
Минимальный бот: пишешь команду в Telegram — она уходит на роутер по SSH. Без веб-морды, без графиков — зато ставится за пару минут на старый VPS.
Команды и логика SSH — из keenetic-unified; если нужен полный дашборд, берите тот проект.
Возможности
/ssh имя командаи/ssh all команда— выполнение на одном или всех роутерах (verbose: exit-код, вывод)/neo,/uptime,/interfaces,/reboot,/ping/add,/setip,/setname,/setweb,/delete,/list,/router- Список роутеров хранится в
data/routers.jsonна сервере
Требования
- Ubuntu 22/24 (или другой Linux с systemd)
sshpass,openssh-client, Python 3.10+- Токен бота и один chat ID (бот отвечает только этому чату)
Установка
git clone https://github.com/andrey271192/Keenetic_SSH.git /opt/keenetic-ssh
cd /opt/keenetic-ssh
bash install.sh
nano .env
Пример .env (подставь свои значения из @BotFather и свой числовой chat id):
TELEGRAM_TOKEN=000000000:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
TELEGRAM_CHAT_ID=000000000
SSH_USER=root
SSH_PASS=your_router_password
Перезапуск после правок .env:
systemctl restart keenetic-ssh
Логи:
journalctl -u keenetic-ssh -f
Роутеры
Добавить из Telegram (имя, IP и при необходимости логин/пароль SSH):
/add office1 192.168.1.1 root your_password
Или отредактировать data/routers.json на сервере:
{
"office1": {
"ip": "192.168.1.1",
"user": "root",
"password": "your_password",
"display_name": "Офис 1",
"web_url": ""
}
}
Поле wan_ip поддерживается как запасной вариант, если ip пустой.
Команды бота
| Команда | Описание |
|---|---|
/help |
Справка |
/list |
Список роутеров |
/router имя |
Карточка |
/ssh имя команда |
SSH на роутер |
/ssh all команда |
На всех с IP |
/neo имя status|restart |
Neo |
/uptime, /interfaces, /reboot |
Как в SSH |
/ping имя |
Ping с VPS до IP роутера |
/add имя IP [user] [pass] |
Добавить |
/setip, /setname, /setweb, /delete |
Настройка |
Поддержка
Связь: Telegram @PCAdministration — вопросы и обратная связь.
Обновление
cd /opt/keenetic-ssh && git pull && systemctl restart keenetic-ssh
Удаление с сервера (одной командой)
Останавливается keenetic-ssh, удаляется unit и каталог /opt/keenetic-ssh:
curl -fsSL https://raw.githubusercontent.com/andrey271192/Keenetic_SSH/main/uninstall.sh | sudo bash
Из каталога установки: sudo bash uninstall.sh
Description
Languages
Python
92.9%
Shell
7.1%
