ТГ бот айпи адрес

Когда для бота Telegram установлен веб-хук, то становится затруднительным отлаживать бота, потому что каждое изменение кода бота на рабочем компьютере должно быть отражено на сервер.

Довольно простым решением данной проблемы мне показалось для включения отладки бота открыть адрес в браузере, который переведет бота на сервере в отладочный режим, позволяя используя вкладку браузера как промежуточное звено получать ответы уже с рабочей машины.

Под катом Вы найдете ссылку на код, написанный на PHP, но описывать я буду только алгоритм действий, не приводя самого кода.

Проект можно найти на GitHub. Файлы проекта необходимо скопировать себе на сервер, а подключается отладчик к коду бота всего одной строчкой:

include_once( «telegramDebug/debug.inc» );

Этот код должен быть указан до начала любой деятельности самого бота. Лучше всего самой первой строкой веб-хука. В файле index.html необходимо указать локальный путь до веб-хука.

На чём основан принцип отладки

Когда сервер Telegram присылает обновление, то ему совершенно не интересно, что вернет ему веб-хук, потому что для любой операции (отправка сообщения пользователю и т.п.) веб-хук должен сделать запрос к API Telegram. Это очень сильно помогает, потому что в таком случае запрос к API может выполнять не веб-сервер, а рабочая машина, на которой ведется разработка бота. Нужно только заставить рабочую машину сделать этот самый запрос к API, вместо веб-сервера и в отличие от Telegram нам будет очень интересно что вернет веб-хук, потому что он может вернуть предупреждение или сообщение об ошибке, которые помогут отлаживать бота.

Как сделать TELEGRAM бота, который определяет адрес пользователя по IP / Конструктор SamBot.ru

Алгоритм работы отладчика

  1. Получаем сообщение от сервера Telegram прежде самого бота.
  2. Если для чата из которого получено сообщение включена отладка, то помещаем сообщение в очередь на отправку на рабочую машину и прекращаем работу веб-хука.
  3. Открытая в браузере вкладка используя long-pooling получает от отладчика сообщение, ранее помещенное в очередь, и перенаправляет его веб-хуку, который расположен на локальной машине.
  4. Локальный веб-хук будет обрабатывать это сообщение точно так же, как он бы сделал это находясь на боевом сервере, никаких специальных изменений в код не требуется.

Алгоритм действий для включения отладки

1. Открываем в браузере адрес веб-хука по протоколу http (не https), добавив к нему адресу параметр debug=manage в результате увидим страницу (может меняться со временем в лучшую сторону):

2. Если не знаем свой ID, то просто пишем что-нибудь боту в Telegram:

3. Включаем режим отладки, указав конкретные ID, разделенные ; , для которых этот режим будет работать. Таким образом пользователи бота будут продолжать получать сообщения от «боевой» версии бота, а мы от разрабатываемой версии.

4. Пишем боту в Telegram, отлаживаем код бота не затрагивая при этом «боевой» сервер. Пусть всё прошло без ошибок, тогда видим:

5. Попробуем в коде бота на рабочей машине вызвать несуществующую функцию create_message_help :

Если Вам это пригодится, но хотелось бы что-то улучшить- приглашаю присоединиться к проекту на ГитХаб.

Источник: sohabr.net

Telegram-бот на сервере RUVDS

Если вы заинтересованы в размещении telegram бота на нашем сервере, то первое с чем следует определиться, это с нужными характеристиками машины. Обычный бот, который пересылает запросы пользователей, отвечает заготовленным текстом или ретранслирует данные с внешних источников – это очень простая программа, и если она не обслуживает одновременно сотни пользователей, то будет достаточно самой дешёвой конфигурации. Если же бот активно собирает информацию из внешних источников, производит её трансформацию, что-то обрабатывает алгоритмами или к нему одномоментно будут обращаться тысячи пользователей, то в таком случае необходим индивидуальный подход. После запуска бота можно оценить реальную нагрузку и поменять конфигурацию на более или менее мощную.

Еще по теме:  Активность человека в Телеграм

Итак, предположим у вас есть один или несколько простых ботов, помимо требуемой мощности важно на каком языке и для какой платформы написан бот. Так как для всех языков невозможно предусмотреть единую инструкцию, будет рассмотрен наиболее распространённый вариант с ботом, написанным на Python.

В разделе заказа сервера выбираем:

  • Московский дата-центр
  • Минимальные характеристики CPU, RAM, диск – HDD
  • Шаблон сервера – “Установить чистую ОС”
  • Операционную систему Debian 10 (если бот кроссплатформенный, а не заточен под конкретную ОС)

Или просто воспользуйтесь этой ссылкой для заказа идентичной конфигурации.

Начинаем настройку

После завершения развёртывания образа на вашем сервере, необходимо произвести минимальную настройку безопасности системы, поскольку каждый сервер в интернете становится целью автоматических сканеров хакеров.

В списке “Мои серверы” на нашем портале необходимо найти пароль администратора сервера. Этот пароль постоянно лучше нигде не хранить, записать его можно временно на период проведения настроек, а потом удалить. Он больше не пригодится, но в случае необходимости его всегда можно посмотреть на портале.

Для настройки вашего сервера необходима программа удалённого управления (терминал), если у вас нет такого ПО, то можно установить широко известный терминал Putty.

Запускаем терминал и в настройках для подключения вводим IP-адрес вашего сервера, который указан в информации о сервере на портале. Порт подключения менять не надо (22, стандартный для SSH). Нажимаем подключиться, “Open”. Если появится текст, предлагающий ввести данные для входа, то всё было указано правильно.

Вводим имя администратора root, нажимаем ENTER и вводим пароль администратора, ENTER. При вводе пароля не будет отображаться никаких символов, так должно быть. Для вставки пароля из буфера обмена нужно нажать правой клавишей мыши в любом месте окна терминала.

После правильного ввода данных появится приглашение системы.

Добавляем учетную запись администратора

Золотым правилом обеспечения безопасности сервера является невозможность использования аккаунта root из интернета. Мы добавим дополнительного администратора в систему и отключим удалённый вход для root. Для управления сервером должен использоваться только второй администратор, это исключит возможность случайного раскрытия пароля root третьим лицам и сделает бессмысленными попытки подбора этого пароля сканерами хакеров. В случае потери пароля нового администратора вы всегда сможете использовать аварийный доступ к серверу с нашего портала, так что запрещение удалённого входа для root не может привести к ситуации потери доступа к вашему серверу.

Обновляем компоненты системы.

Устанавливаем сервис sudo, который нужен для выполнения команд администратора без логина под учётной записью root.

apt install sudo -y

Устанавливаем утилиту скачивания файлов, которая потребуется в процессе настройки системы.

apt install curl -y

Добавляем нового пользователя с любым именем.

Кроме создания пароля для нового пользователя, система может попросить указать дополнительные сведения о пользователе, их можно оставить пустыми, нажав ENTER.

Далее предоставляем новому пользователю возможность вызывать команды администрирования.

usermod -aG sudo johnwho

Еще по теме:  Ваши контакты в Telegram как скрыть

Переключаемся на нового пользователя.

На запрос пароля вводим только что созданный пароль для нового администратора johnwho.

Должно появиться приглашение:

Проверяем наличие административных прав

Если система выдала список неких файлов, а не ошибку, то второй администратор был создан успешно.

Далее необходимо зайти на ваш сервер от имени нового администратора.

Закрываем программу удалённого доступа и запускаем её заново, вводим адрес сервера, подключаемся и на этапе логина вводим имя нового администратора и его пароль.

Теперь можно отключить возможность удалённого входа от имени root.

Запускаем редактирование настроек удалённого доступа.

sudo nano /etc/ssh/sshd_config

Система спросит пароль, необходимо ввести пароль нового администратора, под которым было произведено подключение к серверу.

Откроется текстовый файл настроек, листаем стрелками вниз до параметра “PermitRootLogin yes”, который необходимо поменять на:

Выходим нажатием CTRL+x, редактор спросит сохранять ли изменения? Вводим Y. На запрос имени файла нажать ENTER, чтобы сохранить изменения в прежний файл.

Перезапускаем сервис удалённого управления

sudo systemctl restart sshd

Если после этого оборвётся связь, надо снова подключиться от имени нового администратора.

Настраиваем firewall

Устанавливаем удобный брандмауэр UFW.

sudo apt install ufw

Если происходило переподключение, то система запросит пароль нового администратора.

Установим защиту от брутфорса паролей:

sudo apt install -y fail2ban

Запрещаем все входящие подключения.

sudo ufw default deny incoming

Делаем исключение для удалённого управления.

sudo ufw allow ssh

Разрешаем все исходящие подключения.

sudo ufw default allow outgoing

sudo ufw enable

На запрос подтверждения вводим “y”.

Проверяем правильность настройки.

sudo ufw status verbose

Правильный вывод выглядит следующим образом:

Готовим систему для запуска бота

Далее необходимо создать пользователя, от имени которого будет работать бот. Это позволит не бояться за сервер, и в случае необходимости проведения дополнительных настроек разработчиком, можно не опасаясь предоставить пароль этого пользователя. Если разработчик попросит дополнительно предоставить доступ администратора для установки, например, ПО для базы данных, то не забудьте потом посмотреть историю его действий под администратором командой “history”, а потом поменять пароль второго администратора. Доступ к root при наличии доступа к дополнительному администратору адекватный разработчик просить не должен.

Добавляем нового пользователя (имя произвольное)

sudo adduser telegrambot

Закрываем терминал и заходим уже под новым пользователем.

Создаём папку для хранения файлов бота

Переходим в эту папку

Далее необходимо скопировать файл(ы) бота на сервер.

Под Windows это проще всего сделать встроенной утилитой pscp, открываем командную строку cmd. И там вводим команду, в которой нужно скорректировать следующее: путь к файлу бота, имя пользователя для бота, IP-адрес сервера.

Утилита спросит пароль, надо ввести пароль от пользователя telegrambot.

Переходим в окно удалённого управления сервером и проверяем появление файла.

Если бот содержит множество файлов, то для копирования удобнее будет использовать программу WinSCP. Подключение осуществляет по тому же адресу и порту, с тем же пользователем, что и в случае с терминалом.

Установка Python

Переходим в каталог для временных файлов.

Скачиваем скрипт установки Miniconda. Это менеджер пакетов Python, его установщик автоматически установит интерпретатор Python, нужный для запуска самого бота.

curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

Запускаем скрипт скачивания-установки

Пролистываем лицензию клавишей ENTER. На запрос принятия лицензии отвечаем yes. Соглашаемся на путь установки по умолчанию, на предложение инициализировать отвечаем yes.

Закрываем терминал и запускаем снова, подключаемся обратно пользователем telegrambot. Без переподключения команда python будет недоступна.

Проверяем правильность установки Python

Если всё сделано верно, то появится номер версии Python.

Еще по теме:  Как остановить бота в Телеграмме 2023

Запуск бота

Переходим в каталог с файлами бота.

Запускаем следующим образом, если разработчик не обозначил другой вариант.

Поскольку для функционирования ботов нужны сторонние библиотеки, появится ошибка такого типа:

ModuleNotFoundError: No module named ‘pyrogram’

Это означает, что надо установить недостающие библиотеки.

Если в комплекте с ботом разработчик положил файл requirements.txt, то этот файл содержит список необходимых библиотек и их можно установить одной командой:

pip install -r requirements.txt

Иначе необходимо последовательно выполнять установку недостающих библиотек, используя команду pip install:

pip install module_name

, где module_name это название очередного недостающего модуля из ошибки

ModuleNotFoundError: No module named ‘module_name’

Возможен редкий вариант, что имя модуля в программе не соответствует имени для установки, правильную команду подскажет гугл по запросу “pip имя_модуля”.

Если всё получилось, необходимо перезапустить скрипт бота в фоновом режиме. Дело в том, что при запуске командой “python telebot.py”, бот работает как простое приложение, и при закрытии терминала, система его завершит.

Чтобы бот был запущен постоянно в фоновом режиме, нужно производить запуск таким образом:

nohup python telebot.py https://ruvds.com/ru/helpcenter/telegram-bot-dlya-ruvds/» target=»_blank»]ruvds.com[/mask_link]

Телеграм API id и API hash

Данная инструкция предназначена для первоначальной настройки программы Telegram-Spam-Master!

Зачем это нужно? Это действие необходимо по нескольким причинам: 1) Для того чтобы программа Telegram-Spam-Master могла работать; 2) Снизить вероятность банов Ваших аккаунтов в Telegram

Как получить API Id и API Hash?

Если при создании приложения у Вас постоянно возникает ошибка с текстом «ERROR», Вам поможет инструкция в самом конце данной статьи
> > > Ссылка < <

  1. Сначала перейдите на my.telegram.org
  2. В поле Your Phone Number введите Ваш номер телефона (рекомендуется использовать номер телефона Вашего фейк-аккаунта во избежание блокировки основного номера) и нажмите Next. На этот номер будет отправлено сообщение в Телеграм, который нам понадобится в следующем пункте. Рисунок 1. Получение API id и API hash для программы спамера в телеграм.
  3. После этого у Вас появится поле Confirmation code. В это поле Вам необходимо вставить код, который Вы получите в приложении Telegram На телефоне или компьютере и нажать на кнопку Sign In. Рисунок 2. Получение API id и API hash для программы спамера в телеграм.
  4. Далее нажимем на ссылку «API development tools» Рисунок 3. Получение API id и API hash для программы спамера в телеграм.
  5. Вам предложат создать новое приложение.
    Заполняем поля по примеру:
    App title: Любое название на английском языке
    Shortname: Любая строчка на английском языке без пробелов! Длина от 5 до 32 символа
    Url: Ссылка на любой сайт, который не является популярным
    Platform: Desktop
    Description: Придумайте любое описание Рисунок 4. Получение API id и API hash для программы спамера в телеграм.
  6. Нажимаем «Create application»
    Если на этом этапе Вы увидите окно с надписью «ERROR», попробуйте отключить в Вашем браузере плагины-блокировщики рекламы или блокировщики сторонних файлов Cookie
    Если все пройдет хорошо, то Вы увидите страницу похожую на скриншот ниже! Рисунок 5. Получение API id и API hash для программы спамера в телеграм.
  7. Поля App api_id и App api_hash копируем в программу Telegram-Spam-Master соответственно!

Если при создании приложения у Вас постоянно возникает ошибка с текстом «ERROR»

1) Открываем Телеграм клиент на своем компьютере!

3) Запускаем бота введя /start или нажав соответствующую кнопку

4) Бот может попросить Вас подписаться на какой-то паблик. Подписываемся! Когда мы закончим работу с ботом, можно будет отписаться!

5) Нажимаем кнопку «Get Api ID and Api Hash»

6) Вводим номер телефона купленного фейк-аккаунта

7) В телеграм-клиент этого фейк-аккаунта придет код. Копируем его и отправляем боту!

8) После отправки кода, бот выдаст Вам APP ID и API HASH! (смотри скриншот) Копируем их в соответствующие поля в программе Telegram-Spam-Master

Источник: telegram-spam-master.com

Рейтинг
( Пока оценок нет )
Загрузка ...