Как вытащить Телеграм auth key

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

Если вы не зарегистрированы в Telegram — самое время зарегистрироваться. Вы можете не пользоваться аккаунтом в повседневности, но для учёбы он необходим. Возможно, вам будет удобно работать через десктопную версию приложения, её можно скачать с официального сайта: https://telegram.org/.

API в Telegram

У мессенджера Telegram есть два API — Bot API и Client API.

  • Bot API предназначен для работы с ботами.
  • Client API позволяет управлять вашим аккаунтом: отправлять от вашего имени сообщения, вступать в группы или изменять информацию в своём профиле.

Начнём с Client API.

Управление аккаунтом через Client API

Для работы с Client API необходима аутентификация по токену, получить его можно на специальном сайте Telegram.

Получение токена для Client API

Зайдите на https://my.telegram.org и введите номер телефона, привязанный к вашему аккаунту:

Отримуємо API та HASH #telegram

Запустите Telegram: вам придёт код подтверждения для сайта, введите его в поле на сайте и нажмите кнопку Next.

В открывшемся окне нажмите на ссылку API development tools и введите данные для создания нового приложения. Заполните как минимум поля App title, Short name и укажите платформу: Web.

В следующем окне скопируйте и сохраните значения api_id и api_hash.

Готово! Эти идентификаторы вы перенесёте в код, они будут передаваться в Client API с каждым вашим запросом — и Client API опознает вас как владельца определённого аккаунта.

Программный клиент Telegram

Отправлять запросы к Client API можно через ваш Telegram-клиент на телефоне или на компьютере или через программный клиент.

Для работы с Client API существует несколько популярных Python-библиотек, которые эмулируют работу приложения. С чем-то подобным вы сталкивались в теме «Тестирование Django»: класс Client() в тестах эмулировал работу браузера, отправляя запросы и получая ответы от сервера.

Для создания программного клиента возьмём библиотеку pyrogram.

Создайте директорию /client_api, перейдите в неё, установите и активируйте виртуальное окружение, установите библиотеку pyrogram :

mkdir client_api # Создаём директорию cd client_api # Переходим в эту директорию python3 -m venv venv # Создаём виртуальное окружение . venv/bin/activate # Активируем виртуальное окружение # Для Windows команда source venv/Scripts/activate pip3 install pyrogram # Устанавливаем библиотеку

Создайте и откройте файл /client_api/main.py в текстовом редакторе, перенесите в него код:

from pyrogram import Client api_id = api_hash = «» with Client(«my_account», api_id, api_hash) as app: # Первый параметр метода send_message — id (int) или имя (str) того пользователя, # которому будет отправлено сообщение. # Зарезервированное слово «me» означает ваш собственный аккаунт. app.send_message(«me», «Привет, это я!»)

Сохраните файл и запустите его:

Еще по теме:  Как создать фейковый чат в Телеграмме

python3 main.py

При первом запуске программы в командной строке будет запрошен номер телефона, на который зарегистрирован ваш Telegram-аккаунт. Введите номер в консоль, после этого на телефон или в Telegram придёт проверочный код. Скопируйте этот код и вставьте в командную строку. Эта процедура выполняется только один раз, после этого приложение будет зарегистрировано.

Из вашего приложения будет отправлено сообщение. «me» — это зарезервированное слово, заменяющее ID аккаунта, для которого выдан токен. Следовательно, сообщение будет отправлено из вашего аккаунта в ваш аккаунт; оно отобразится во вкладке «Избранное» в вашем мессенджере.

Если изменить «me» на ID аккаунта вашего друга в Telegram, то сообщение уйдёт ему.

Начните диалог с ботом: нажмите кнопку Start.

Для начала бот отправит вам информацию о вашем аккаунте: ID, имя (то, что указано в полях First и Last name) и язык.

Если Telegram запущен на мобильном устройстве — вызовите меню долгим нажатием на сообщение и проделайте всё то же самое.

В ответ бот отправит информацию о пользователе: ID, имя (First name) и фамилию (Last name).

Список всех доступных методов библиотеки pyrogram доступен в документации.

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

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

Похожие записи:

  1. Бот в Telegram
  2. Библиотека python-telegram-bot
  3. Инструментарий для тестирования API
  4. Unittest в Django: тестирование URLs

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

Two-factor authentication in OpenVPN with Telegram bot

The article describes how to configure the OpenVPN server to enable two-factor authentication with a Telegram bot that will send a confirmation request upon connection.

OpenVPN is a well-known, free and open source VPN server that is widely used to provide employees with secure access to internal resources of an organization.

As an authentication for connecting to a VPN server, a combination of a key and a username / password is usually used. At the same time, the password saved on the client turns the entire set into a single factor that does not provide the proper level of security. An attacker, having gained access to a client computer, gains access to the VPN server as well. This is especially true for connecting from machines running Windows.

Using the second factor reduces the risk of unauthorized access by 99% and does not complicate the connection process for users at all.

I’ll make a reservation right away, for implementation you will need to connect a third-party multifactor.ru authentication server, in which you can use a free tariff for your needs.

Principle of operation

  1. OpenVPN uses the openvpn-plugin-auth-pam plugin for authentication
  2. The plugin checks the user’s password on the server and requests the second factor via the RADIUS protocol in the Multifactor service
  3. The multifactor sends a message to the user via Telegram bot with access confirmation
  4. The user confirms the access request in the Telegram chat and connects to the VPN
Еще по теме:  Кошачий язык в Телеграмм ссылка

Installing an OpenVPN Server

There are many articles on the Internet describing the process of installing and configuring OpenVPN, so we will not duplicate them. If you need help, there are several links to tutorials at the end of the article.

Multifactor setting

Go to Multifactor control system , go to Resources and create a new VPN.
After creation, two options will be available to you: NAS ID и shared secret, they will be required for subsequent configuration.

Two-factor authentication in OpenVPN with Telegram bot

In the «Groups» section, go to the «All users» group settings and uncheck the «All resources» flag so that only users of a certain group can connect to the VPN server.

Create a new group «VPN users», disable all authentication methods except Telegram, and specify that users have access to the created VPN resource.

Two-factor authentication in OpenVPN with Telegram bot

In the «Users» section, create users who will have access to the VPN, add «VPN users» to the group, and send them a link to set up the second authentication factor. The user login must match the login on the VPN server.

Two-factor authentication in OpenVPN with Telegram bot

Setting up an OpenVPN server

Open the file /etc/openvpn/server.conf and add a plugin for authentication using the PAM module

plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so openvpn

The plugin can be located in the directory /usr/lib/openvpn/plugins/ or /usr/lib64/openvpn/plugins/ depending on your system.

Next, you need to install the pam_radius_auth module

$ sudo yum install pam_radius

Open file for editing /etc/pam_radius.conf and specify the address of the RADIUS server of the Multifactor

radius.multifactor.ru shared_secret 40

  • radius.multifactor.ru — server address
  • shared_secret — copy from the corresponding VPN settings parameter
  • 40 seconds — request timeout with a large margin

The remaining servers must be deleted or commented out (put a semicolon at the beginning)

Next create a file for service-type openvpn

$ sudo vi /etc/pam.d/openvpn
auth required pam_radius_auth.so skip_passwd client_id=[NAS-IDentifier] auth substack password-auth account substack password-auth

the first line connects the pam_radius_auth PAM module with parameters:

  • skip_passwd — disables transmission of the user’s password to the Multifactor RADIUS server (he does not need to know).
  • client_id — replace [NAS-Identifier] with the corresponding parameter from the VPN resource settings.
    All possible options are described in documentation for the module .

The second and third lines include a system check of the login, password and user rights on your server along with the second authentication factor.

Client setup

Include a username and password request in the client configuration file

auth-user-pass

inspection

Run the client for OpenVPN, connect to the server, enter your login and password. Telegram bot will receive an access request with two buttons

Two-factor authentication in OpenVPN with Telegram bot

One button allows access, the second blocks.

Now you can safely save the password on the client, the second factor will reliably protect your OpenVPN server from unauthorized access.

If something doesn’t work

Consistently check that you haven’t missed anything:

  • There is a user with a password set on the server with OpenVPN
  • Access from the server via UDP port 1812 to the address radius.multifactor.ru
  • NAS-Identifier and Shared Secret parameters are correct
  • A user with the same login has been created in the Multifactor system and he has been granted access to the VPN user group
  • The user has configured the authentication method via Telegram
Еще по теме:  Вычислить данные по ТГ

If you haven’t set up OpenVPN before, read extended article .

The instruction is made with examples on CentOS 7.

Add a comment Отменить ответ

To post a comment you need to sign in.

Источник: prohoster.info

«Telegram» ID: зачем он нужен, и как его узнать

Популярное приложение «Телеграмм» предоставляет пользователям множество функциональных инструментов для общения, развлечений, а также ведения бизнеса. Его основными опциями являются обмен сообщениями и файлами, создание чатов, возможность ведения секретной переписки. Кроме основного функционала, в «Телеграмме» существует огромное количество ботов, полезных и развлекающих. Их может создавать под свои нужды каждый желающий пользователь мессенджера.

Telegram ID: как узнать и зачем это нужно

Узнать Telegram ID можно с помощью специального бота.

Что такое ID и зачем он нужен

«Телеграмм» использует протоколы для социальных сетей, где личные аккаунты и сообщества (чаты, каналы) распознаются при помощи специального численного идентификатора. Уникальный ID (айди) необходим системе для точной идентификации пользователя. Даже программы внутри мессенджера используют набор определённых чисел для удобства использования сервиса. Благодаря уникальному номеру, который присваивается при создании страницы, система видит, какие данные пользователя, какую переписку отображать. Обмен данными начинается сразу же после идентификации профиля, то есть при входе в аккаунт путём ввода логина и пароля.

Когда вы создаёте группу, неважно, приватную или публичную, также генерируется ИД, он нужен для доступа к ней. Информация об идентификаторе может вам понадобиться для настройки и корректной работы бота, связывающегося с пользователями и чатами. Чтобы отправить сообщение через «Telegram» API, боту понадобится ID чата, в который он будет писать.

ВАЖНО. Если вы захотите привязать робота для отправки уведомлений к собственному профилю, можете воспользоваться способом getUpdates. Определить по ID аккаунт пользователя перед вами или группа несложно по символу перед числовым кодом, ID чата начинается со знака минус («-»).

Как узнать «Telegram» ID

Основной функционал мессенджера не позволяет узнавать идентификатор чата или свой, разработчиками не предусмотрена эта опция. В ранних версиях «Телеграмма» можно было разглядеть идентификатор в пригласительной ссылке сообщества, посмотреть айди создателя группы, а также пользователя, сделавшего любую запись в чате. Сейчас разработчики убрали данную оплошность, ведь мессенджер позиционирует себя как наиболее безопасный, а освещение настолько личной информации, которую бы узнавал каждый, кто захотел, не приветствуется.

Тем не менее, иногда может потребоваться получить цифры собственного ID или идентификатора беседы с ботом. Для получения этой информации пользователями были созданы специальные боты. Кроме того, если мы знаем токен, получить chat id можно при помощи стороннего сервиса.

Большинству пользователей информация об идентификаторе без надобности, видимо, потому опция и не включена разработчиками «Телеграмма». Но если вам вдруг понадобится ID, теперь вы знаете, как его получить.

Источник: nastroyvse.ru

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