-
Notifications
You must be signed in to change notification settings - Fork 25
Установка на сервер
В инструкции описан метод установки транспорта на Debian-based дистрибутивы (Debian, Ubuntu, Mint, etc). Большинство пунктов инструкции (за исключением установки git и python) верны для всех дистрибутивов.
Прежде всего, убедитесь что в системе присутствуют Python 2.7 и система контроля версий git. Если нет, то поставьте:
sudo apt-get install git
sudo apt-get install python2.7
Затем нужно скопировать исходный код из репозитория:
После этого в папке vk4xmpp появится исходный код транспорта. Перейдём в папку транспорта:
cd vk4xmpp
Затем нужно переименовать и заполнить файл конфигурации. Выполняем:
cp Config_example.txt Config.txt
Теперь можно его заполнить. Откройте его в текстовом редакторе и заполните необходимые поля. Каждое поле достаточно подробно прокомментировано, но, на всякий случай, мы рассмотрим параметры подключения чуть ниже.
В файле vk4xmpp.service вместо пропусков укажите свое расположение файлов транспорта
nano /etc/systemd/system/vk4xmpp.service
[Unit]
Description=VK4XMPP is an Vk.com gateway for Jabber/XMPP
Requires=network.target
After=network.target
[Service]
Type=simple
PIDFile=/.../vk4xmpp/vk4xmpp.pid
ExecStart=/usr/bin/env python2 /.../vk4xmpp/gateway.py
Restart=always
[Install]
WantedBy=multi-user.target
Alias=vk4xmpp.service
systemctl daemon-reload
systemctl enable vk4xmpp
systemctl start vk4xmpp
Внимание: в статье рассматривается пример настройки транспорта vk.simpleapps.ru на хосте simpleapps.ru. Все упоминания simpleapps.ru в приведенных примерах должны быть заменены на соответствующие вашим доменам адреса.
Конфигурация VK4XMPP
Транспорт обладает широкими возможностями конфигурирования. Здесь мы рассмотрим только параметры подключения и их разницу для разных серверов. Более подробное описание должно быть на отдельной странице.
Открываем файл конфигурации. Обычно он находится по адресу /etc/ejabberd/ejabberd.cfg. Находим раздел LISTENING PORTS и добавляем строки:
{5556, ejabberd_service, [
{ip, {127, 0, 0, 1}},
{access, all},
{shaper_rule, fast},
{host, "vk.simpleapps.ru", [{password, "secret"}]}
]},
/etc/ejabberd/ejabberd.yml
listen:
...
-
port: 5556
module: ejabberd_service
ip: "127.0.0.1"
access: all
shaper_rule: fast
hosts:
"vk.simpleapps.ru":
password: "secret"
VK4XMPP
Host = "vk.simpleapps.ru" # Хост, на котором у Вас будет транспорт
Server = "localhost" # Адрес, к которому будет подключаться транспорт. Это может быть удалённая машина.
Port = 5556 # Порт подключения.
TransportID = "vk.simpleapps.ru" # Jabber ID транспорта
Конфигурация осуществляется через веб-интерфейс. Скриншот доступен здесь.
В админ-панели переходите в Server Settings, затем в External Components. Выбираете Service Enabled -> Enabled. Ниже следует указать Allowed to connect -> Whitelist, а ещё ниже добавить поддомен vk.
VK4XMPP
Есть два типа конфигурации для OpenFire: для старых и для новых версий. Когда был изменён код работы с транспортами неизвестно, поэтому решайте сами, какая конфигурация вам подходит.
Host = "vk.simpleapps.ru" # Хост, на котором у Вас будет транспорт. Для новых версий это только поддомен (например vk).
Server = "localhost" # Адрес, к которому будет подключаться транспорт. Может ли это быть удаленная машина или нет, неизвестно.
Port = 5275 # Порт для подключения. Может быть другим в вашем случае.
TransportID = "vk.simpleapps.ru" # Jabber ID транспорта.
ALIVE_KEEPER_ENABLED = True # Включение плагина alive keeper. Новые версии OpenFire отключают транспорт через некоторое время неактивности. Плагин помогает этого избежать (хотя он предназначен для другого).
Находим строку VirtualHost с адресом вашего сервера (например, simpleapps.ru) и добавляем под ней:
Component "vk.simpleapps.ru"
component_secret = "secret"
VK4XMPP
Host = "vk.simpleapps.ru" # Хост, на котором у Вас будет транспорт
Server = "simpleapps.ru" # Адрес, к которому будет подключаться транспорт. Это может быть удалённая машина.
Port = 5347 # Для Prosody нельзя указать другой порт
TransportID = "vk.simpleapps.ru" # Jabber ID транспорта
Обратите внимание, что в примерах используется домен simpleapps.ru. Это сделано только для примера. У вас будет другой домен. Также, если вы используете mrim-транспорт, то следует заменить порт транспорта vk4xmpp.