Загрузка...

Управляем дедиком через бота в Telegram

Тема в разделе Статьи создана пользователем OnerSD 1 июн 2022. (поднята 23 сен 2023) 2966 просмотров

  1. OnerSD
    OnerSD Автор темы 1 июн 2022 Разбань ютуб - https://lolz.live/threads/6716800/ 1517 24 мар 2021
    Всем привет!
    В данной статье я расскажу и покажу, как с помощью бота в Телеграме управлять дедиком на Linux системах.
    Принцип работы такой: на дедик нужно загрузить специальный скрипт на Python и запустить его. Больше ничего не требуется, после этих действий вы уже сможете управлять сервером путем отправки команд в чат с ботом. Итак, начнём.


    1. Создаём бота через BotFather, а также узнаём свой id в Телеграме.

    Введите "BotFather" в поиске Телеграма, пропишите "/newbot" и следуйте инструкциям:
    [IMG]

    Вам понадобится API токен вашего бота, запишите его куда вам удобно.
    Далее переходим в @myidbot и узнаем свой id, он также нам пригодится.


    2. Создаем скрипт.

    Для начала импортируем нужные библиотеки:
    Python

    import telebot
    import subprocess
    Затем введём api токен бота и ваш id в Телеграме:
    Python
    bot = telebot.TeleBot("XXXXXXXXXXXXXXXXXXXXXXXXXXXX")
    owner_id = XXXXXXX
    Далее напишем основную функцию:
    Python

    @bot.message_handler(content_types=["text"])
    def input_command(message):
    if (owner_id == message.chat.id): #Проверка владельца, кроме вас никто не сможет пользоваться ботом
    command = message.text #Текст команды
    try:
    process = subprocess.run([command], capture_output=True, shell=True, text="True") #Ввод и выполнение команды на дедике
    bot.send_message(message.chat.id, process.stdout) #Вывод результата выполнения команды в бота
    except:
    bot.send_message(message.chat.id, "Команда введена неверно") #Если команда неправильная, бот уведомит об этом
    И в конце допишем команду, отвечающую за непрерывную работу бота:
    Python
    while True:
    bot.polling(none_stop=True, interval=0)
    Готово! Скрипт полностью написан.

    Кому лень разбираться - вот сразу весь код:
    Python

    import telebot
    import subprocess

    bot = telebot.TeleBot("XXXXXXXXXXXXXXXXXXXXXXXXXX")
    owner_id = XXXXXXXXX

    @bot.message_handler(content_types=["text"])
    def input_command(message):
    if (owner_id == message.chat.id):
    command = message.text
    try:
    process = subprocess.run([command], capture_output=True, shell=True, text="True")
    bot.send_message(message.chat.id, process.stdout)
    except:
    bot.send_message(message.chat.id, "Команда введена неверно")

    while True:
    bot.polling(none_stop=True, interval=0)


    3. Загружаем скрипт на дедик и запускаем его.

    Скачиваем PuTTY для подключения к дедику и WinSCP для передачи файлов с компьютера на дедик.
    После установки программы заходим в неё, жмём кнопку "Соединение" и вводим данные от дедика:

    [IMG]

    Далее просто ищем слева в файлах компьютера скрипт и перетаскиваем его на дедик:

    [IMG]

    Через PuTTY заходим на дедик и устанавливаем Python, а также библиотеку, которую мы использовали при написании скрипта:
    [IMG]
    [IMG]

    Устанавливаем Python и Telebot, необходимые для запуска скрипта.
    У меня дедик на Ubuntu 20.04, поэтому установка происходит такими командами:
    Код

    sudo apt update
    sudo apt install python3.9
    pip3 install pyTelegramBotAPI
    Запускаем скрипт:
    Код
    python3 yourfilename.py
    Вместо "yourfilename.py" вписывайте свое имя скрипта.

    [IMG]

    Если у вас все так же, то всё получилось и скрипт запущен.


    4. Управляем дедиком через бота.

    Теперь переходим в бота и вписываем любую команду, например "ls", которая отображает список файлов и подкаталогов:

    [IMG]

    Бот отправляет в ответ результат выполнения команды - все файлы, находящиеся в домашнем каталоге на моём дедике.
    Попробуем установить через бота какую нибудь библиотеку Python, например aiogram. Вводим команду "pip install aiogram":

    [IMG]

    Установка произошла, проверим наличие библиотеки:

    [IMG]

    Aiogram через бота установлен!
    Таким же образом можно выполнять множество других манипуляций с дедиком. Применений можно найти очень много.


    Всем спасибо за прочтение! Надеюсь, было интересно и полезно, ведь времени на реализацию скрипта и написание статьи я потратил достаточно много:hi:
     
    Этот материал оказался полезным?
    Вы можете отблагодарить автора темы путем перевода средств на баланс
    Отблагодарить автора
    1 июн 2022 Изменено
  2. Tyke
    Tyke 1 июн 2022 Заблокирован(а) 1755 11 янв 2022
    Очень удобно, но через терминал как-то практичнее
     
    1. OnerSD Автор темы
      Tyke, согласен, но не всегда компьютер под рукой, а таким образом просто через телегу на телефоне можно что нибудь чекнуть на дедике
  3. yes1amsuuuun
    yes1amsuuuun 7 июн 2022 Заблокирован(а) 1735 21 авг 2021
    Годнота, на случай если ПК нет под рукой, но есть телефон.
     
    1. Посмотреть предыдущие комментарии (1)
    2. yes1amsuuuun
      snem, RD Client не сильно подходит под контроль 3-4 машин.
    3. OnerSD Автор темы
      snem, приложение не подходит для управления несколькими серваками, а бота для управления хоть 10-ю одновременно вполне можно сделать, взяв за основу такой мето
  4. ЛысыйКотик
    ЛысыйКотик 14 июн 2022 (к)анал алеха - https://t.me/Kanalchik_alexa 2196 9 дек 2021
    Крайне бессмысленное способ, ведь на телефон можно установить приложение для управлениями дедика
     
    1. OnerSD Автор темы
      ЛысыйКотик, не согласен, есть много случаев, когда доступ к дедику нужно предоставить для большого количества людей одновременно, бот для этого самое то. Например если на дедике софт, а ты панель для его управления в телеге делаешь.
    2. OnerSD Автор темы
  5. Noone
    Noone 14 июн 2022 399 26 апр 2019
    Лучше уже поставить ngrok или tor, а так впринцепи норм
     
  6. islamchik228
    Всё отлично расписал, красава
     
  7. Luso1q
    Luso1q 23 сен 2023 8 27 дек 2022
    А как отправлять команды по типу cntr +b?
     
  8. INTER_BLESSED
    Годно, удобно))
     
  9. Колякокакола
    А этот бот будет работать только в телеге или на всех рандомных сайтах где есть чаты например засорение чата или флуд
     
Top
Загрузка...