Бот в Телеграм для восстановления облачного пароля

Тогда он будет работать круглые сутки, а вы — отдыхать.

Не так давно мы создали телеграм-бота на Python: можно было написать ему свой знак зодиака, а он в ответ давал предсказание о долгой счастливой жизни. Но у бота есть недостаток: он работает, пока запущена программа на нашем компьютере. Если мы её остановим или выключим компьютер, бот тоже перестанет отвечать на сообщения.

Вот что мы сделаем, чтобы бот работал независимо от всего:

  1. Выберем сервер.
  2. Подготовим программу для работы на нём.
  3. Зальём программу на сервер.
  4. Настроим сервер, чтобы он исполнял программу.

Выбираем сервер

Нам нужен сервер, который умеет работать с Python и запускать файлы программы автоматически. На самом деле он у нас уже есть — на нём крутится сайт mihailmaximov.ru. Если вы всё пропустили — держите подборку:

  • что такое домен и как его получить;
  • делаем страницу «О себе»;
  • как опубликовать свой сайт в интернете.

Тот хостинг, который мы выбрали для проектов, уже умеет запускать Python-файлы. Если вы пользуетесь другим сервисом, то проверьте, умеет ли он то же самое.

Готовим программу и отправляем её на сервер

Единственное, что нужно добавить в наш код телеграм-бота, — специальную команду интерпретатору, чтобы он знал, как работать с нашим файлом. Но перед этим нужно проверить, какая версия Python на нём установлена.

Чтобы это узнать, соединимся с сервером по протоколу SSH и спросим у него напрямую. Для этого используем программу Putty, а настройки подключения возьмём в личном кабинете хостинга:

Вставляем их в Putty и подключаемся. Помните, что для безопасности во время ввода пароля курсор стоит на месте, чтобы никто не смог выяснить, сколько символов вы набираете. Когда подключились, вводим команду python3.3 -V — она покажет, есть ли на сервере поддержка этой версии Python:

Теперь добавляем в самое начало нашего файла с программой такую строчку:

В статье о том, как опубликовать сайт в интернете, мы рассказывали, как залить файлы на сервер. Это умение нам сейчас пригодится: сохраняем нашу программу с гороскопом как файл с расширением .py и отправляем его на сервер в папку cgi-bin (то, что лежит в этой папке, никто не увидит):

Запускаем телеграм-бота на сервере

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

Теперь научим сервер понимать, как работать с нашей программой. Для этого в корне сайта находим файл .htaccess и добавляем в него такую строчку:

AddHandler cgi-script .py

Если у вас такого файла нет — создайте его и не забудьте про точку в самом начале названия.

Последнее, что осталось сделать, — настроить права доступа у файла с программой. Находим её среди файлов хостинга и выставляем права 755 или rwxrwxr-x:

Запускаем телеграм-бота на сервере

Теперь с помощью Putty снова подключаемся к серверу и настраиваем рабочее окружение. Это как будто виртуальная песочница, где мы сможем ставить нужные модули для Python, чтобы не мешать остальным пользователям сервера.

Всё, что мы будем делать дальше, относится к хостингу SpaceWeb. Если у вас другой хостинг, то, возможно, часть команд вам не пригодится и Python будет работать напрямую. У нас так не работает, поэтому делаем виртуальное окружение.

В SSH-терминале пишем по очереди такие команды (вместо .thecode можно написать название каталога, которое вам по душе):

virtualenv .thecode source .thecode/bin/activate

Эти две команды создадут виртуальное пространство для запуска Python-файлов.

Теперь установим Python-модуль для работы с Телеграмом:

pip install pytelegrambotapi

Когда установка закончится, пишем такую команду:

nohup python3 /home/t/thecode/osebe/public_html/cgi-bin/telegoroskop.py

/home/t/thecode/osebe/ — это наш путь к папке cgi-bin, а у вас он будет другим. Поменяйте путь на свой и запускайте.

Чтобы программа продолжала работать после того, как мы закроем SSH-клиент, в самом начале пишем команду nohup .

Что дальше

Cloud Telegram Password: How to Set Up, Install and Use

Telegram Cloud password

The issue of online security has recently become especially relevant in connection with systematic data leaks and account hacks. To protect their data, Telegram messenger offers its users to use a cloud password.

Еще по теме:  Красивые названия для каналов в Телеграмме на английском

What it is and how to set it up, we will tell you today in this article.

  • What is Telegram Cloud Password
  • 2-Step Authentication
  • Two-Factor Authentication
  • The Benefits of a Cloud Password

What is Telegram Cloud Password

What is cloud password

A cloud password — is a password that is the same for all your devices. You will need to enter it every time you enter the Telegram application for the first time on a new device.

Usually, when you first log into your Telegram account from another device (tablet or PC), the application requires you to enter a one-time confirmation code for security purposes. The messenger service sends this code to you in the form of an SMS to your phone or notifications in Telegram. But you can strengthen the protection of your account by setting a cloud password in the application.

When you log into your account from a new device, the application, in addition to a one-time confirmation code, will ask for an additional password that you specified in the settings. This will be the cloud password in Telegram.

Let’s take a closer look at how it works.

2-Step Authentication

2-step authentication

In the Telegram documentation, a cloud password is defined as 2-Step Verification. As you know, the process of authenticating a user is called authentication. As mentioned above, in Telegram, authentication by default occurs using a verification code, which is one-time. But if desired, the user can set his own additional password. In this case, basic authentication becomes two-step authentication.

With 2-Step Verification, the user will have to perform two verification steps. They will be executed sequentially one after another, that is, in stages. Let’s look at an example.

You have used the Telegram application on your smartphone all the time, but one day you needed to log into Telegram from your PC. You installed the desktop Telegram client on your PC, entered your number to which your account is attached and after that the authentication process started.

To begin with, the application asked for a one-time confirmation code. Having received this code from SMS or Telegram notification, you entered it. This is the first stage of authentication. If you do not have a cloud password set in the application settings, then authentication will end at the first stage and you will be able to successfully use the desktop client. But if you have the Telegram cloud password set in the settings, then after entering the one-time code, the application will ask you to enter this same password.

Entering the cloud password, in this case, is the second stage of authentication.

The main plus of two-step authentication in the Telegram application is the ability to recover an additional password using your email.

Email must be specified in the settings during the cloud password creation process.

Two-Factor Authentication

On the Internet, in some sources you can find information that the cloud password is two-factor authentication. Often, the authors of such articles do not delve into the meaning of these definitions and may inadvertently confuse the user. But Telegram doesn’t use two-factor authentication. So what’s the difference?

With two-factor authentication, user authentication also depends on two stages, but each stage in turn depends on different factors. For example, you have a safe where you store valuables. In order to open the safe, you must enter a secret combination and open the door with a key. There are two different factors involved — the secret combination in your head and the physical key in your hand.

Safe as an example of using two-factor authentication

The Benefits of a Cloud Password

You ask, why do you need a cloud password in Telegram if you are not paranoid?

A cloud password will be useful to you if you are the owner of a telegram channel or a famous person.

Is someone trying to access your Telegram account?

For example, an attacker can gain access to your Telegram account. To do this, he just needs to find out your phone number and intercept an SMS with a confirmation code.

Еще по теме:  Телеграмм боты которые платят деньги

In the case of 2-Step Verification, this won’t be enough for an attacker, he will need your cloud password. And only you know him. If an attacker tries to change or reset it, then you will immediately receive an e-mail with a request to confirm that you really want to change your password. Thus, you will immediately guess that someone wants to access your account.

How to Set up a Cloud Password

Setting up a cloud password is easy enough. But before doing this, it is advisable to end all active sessions. To do this, you need to follow the following sequence of actions: «Settings» — «Devices» — «Terminate all other sessions».

Terminating Active Telegram Sessions

After that, you must set up a cloud password in Telegram:

  • Go to the «Settings» section.

Section

  • Then go to the subsection «Privacy and Security».

Subsection

  • Then select the «Two-Step Verification» option.

Two-Step Verification Option

  • Set a password

Password Settings

  • Create a password

Creating a password

  • Create an optional hint or skip it
  • Next, enter your email address (you can skip this stage of the procedure, but then you will be deprived of the opportunity to recover your password if you suddenly forget it).

Entering an email address

  • Check your mail. There should be an email with a confirmation code.
  • Enter confirmation code.

Enter the code from e-mail

Completing the cloud password setup process

Now, when you first enter Telegram from another device, in addition to the received code from an SMS or a message in Telegram (on a smartphone), you will have to enter the cloud password you have set.

You can also watch a video overview on YouTube, which clearly shows how to protect your account with a cloud password on Android:

How To On Two-Step Verification In Telegram || Enable Two-Step Verification In Telegram

Thus, a cloud password in Telegram allows you to reliably protect your account.

That’s all for today. The t9gram project is all about Telegram.

Источник: t9gram.com

Как создать телеграм-бота на облачном сервере

В статье расскажем, как создать телеграм-бота, а в качестве площадки для бота будем использовать облачный сервер от Timeweb Cloud.

Преимущества облачного сервера для Telegram-бота

  • Быстрая регистрация и начало работы;
  • Не нужно покупать домен, сервер имеет открытый IP-адрес;
  • Нет привязки к какому-то одному языку программирования, легко можно запустить любой скрипт;
  • Нет ограничения на ресурсы: бот не перестанет работать из-за превышения лимита трафика или процессорного времени контейнера;
  • Стабильность: время бесперебойной работы облачного сервера не ниже 99,99%.

Регистрация бота

Чтобы бот заработал, его необходимо зарегистрировать в Telegram. За регистрацию отвечает BotFather .

Шаг 2. Нам нужно зарегистрировать нового бота, поэтому выбираем команду:

/newbot

Шаг 3. Теперь необходимо придумать имя нашего бота. Указываем что угодно, для примера напишем:

MyBotTest

Шаг 4. Следующий шаг – необходимо придумать логин. Обратите внимание, чтобы логин заканчивался на «bot» в любом его виде, либо «*Bot», либо «_bot»:

Сложность этого шага заключается в том, чтобы найти свободный никнейм. Если такой логин занят, мы получим соответствующее извещение.

При успешной регистрации в ответ получим приветственное сообщение и ключ для HTTP-API. Сохраните ключ в надёжном месте.

Если потерялся сохранённый ключ, узнать его можно при помощи команды /token . Далее выберите бота, для которого нужен новый ключ. Заново создавать бота не потребуется.

Проверка и настройка бота

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

/mybots

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

По названиям кнопок будет понятно, что можно изменить имя, описание (приветствие при первом подключении), загрузить аватар. Из этого меню можно указать список доступных команд для бота с их описанием. Сами команды работать будут только с использованием дополнительной логики, реализованной сторонними программами-клиентами.

Подготовка рабочего пространства

Для запуска бота нам понадобится рабочее пространство. В нашем случае мы будем использовать облачный сервер . Подойдёт даже самая простая конфигурация, а из операционных систем порекомендуем Ubuntu или Debian. Но отметим, ввиду того, что обновления для Debian выходят с большим опозданием, скорее всего, версии нужных пакетов не будут соответствовать минимальным требованиям программ-клиентов и придётся собирать нужную версию Python из исходников.

Выбор языка программирования

Самые распространённые боты написаны на языке Python. Установить Python на облачный сервер можно командой:

Еще по теме:  Что такое 1к подписчиков в Телеграм

sudo apt-get install python3 python3-pip

После установки проверить версию:

python3 -V

Одной из последних версий является 3.11, но для работы нашего примера подойдёт и 3.7.

Установка python-telegram-bot

Для установки python-клиента достаточно написать в консоли:

pip3 install python-telegram-bot

По зависимостям будут установлены дополнительные пакеты, необходимые для работы python-telegram-bot . Чтобы не засорять систему, рекомендуется использовать виртуальное окружение. Эта возможность встроена в Python, быстро настраивается, не засоряет основную систему, а виртуальную среду со всем содержимым можно безболезненно удалить в будущем одной командой ( rm -rf ).

Создадим каталог для виртуального окружения, зайдём в него и установим копию Python:

mkdir bot_env cd bot_env
python3 -m venv venv

Активируем виртуальное окружение:

source venv/bin/activate

После успешной активации перед строкой для ввода команд появится venv . Теперь установим клиент:

pip install python-telegram-bot

Деактивировать виртуальное окружение можно, набрав:

deactivate

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

При деактивированном окружении в нашем примере набираем:

/root/bot_env/venv/bin/python3

Примеры ботов

Примеры ботов можно найти на этой странице . Для демонстрации работы используем пример echobot.py , сохраните его в домашнюю папку (по умолчанию это /root ). Если используется виртуальное окружение, директория будет /root/bot_env . Необходимо в 67 строке заменить слово TOKEN на ключ, полученный при регистрации.

Загрузить пример можно сначала на свой компьютер, отредактировать файл и загрузить через файловый менеджер, например WinSCP.

Запустить пример можно, набрав в консоли:

python3 echobot.py

После успешного запуска в ответ получим:

telegram.ext._application — INFO — Application started

Тестирование бота

Если всё сделали верно, в ответ получим приветствие с вашим именем и ссылкой на профиль. При дальнейшем общении бот будет отправлять сообщения с полученным текстом.

echobot.py – самый простой демонстрационный бот. На странице примеров python-telegram-bot есть более сложные рабочие заготовки, которые можно сразу опробовать и применить для своих нужд с минимальными правками.

Запуск бота как службы

Чтобы бот автоматически запускался при загрузке системы, создадим свою службу в Systemd. Systemd доступен в новых версиях Ubuntu и в Debian версии 8.

Если не использовалось виртуальное окружение, нам потребуется полный путь к Python. Узнать, где он установлен, можно командой:

which python3

В ответ получим строку вида:

/usr/local/bin/python3

Перейдём в каталог Systemd:

  • в Debian: /usr/lib/systemd/system/
  • Ubuntu: /lib/systemd/system/

И создадим файл bot.service :

[Unit]
Description=My Python Bot
After=network.target network-online.target

[Service]
Type=simple
User=root
Group=root
Restart=on-failure
ExecStartPre=/bin/mkdir -p /var/run/bot
PIDFile=/var/run/bot/service.pid
ExecStart=

[Install]
WantedBy=multi-user.target

Возможные значения ExecStart :

  • без venv : ExecStart=/usr/local/bin/python3 /root/echobot.py
  • в venv : ExecStart=/root/bot_env/venv/bin/python3 /root/bot_env/echobot.py

Сохраняем файл, выставляем разрешения не ниже 644, перезагружаем Systemd:

systemctl daemon-reload

Добавляем службу бота в автозагрузку:

systemctl enable bot.service

Проверить состояние службы можно командой:

systemctl status bot

В ответ получим информацию о службе. Нас интересуют 2 пунка:

Loaded: loaded
Active: inactive

Служба добавлена ( loaded ), но не запущена ( inactive ), запустить её можно, перезагрузив облачный сервер или выполнив команду:

systemctl start bot

Ещё раз проверяем состояние службы, значение «Active» должно стать active (running) и быть зелёного цвета.

Другие скрипты-клиенты

Представленный пример на Python представлен как самый простой. Telegram – достаточно популярный, существуют клиентские программы, написанные на разных языках: Java, PHP, NodeJS и прочее. Все имеют готовые примеры для подключения и получения сообщений, нужную логику работы реализует сам пользователь.

В сети можно найти разные готовые скрипты викторин, опросников или прочих развлечений.

Зачем нужны боты для Telegram

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

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

Боты могут не только отвечать на заранее настроенные вопросы. Сложные клиентские программы могут использовать машинное обучение, которое анализирует введённый текст и совершает нужное действие.

Некоторые программы-клиенты поддерживают не только текстовый ввод, они принимают звонки или проигрывают музыку.

Надеемся, что информация была полезной. Попробуйте самостоятельно запустить бота, для этого потребуются только желание и 10 минут свободного времени.

Источник: timeweb.cloud

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