Prosody — это кроссплатформенный XMPP-сервер, написанный на языке Lua. Цель его разработки включает в себя низкое потребление ресурсов, простота в использовании и расширяемость. Разработка Prosody была начата Matthew Wild в августе 2008 года и его первый релиз, 0.1.0, был выпущен в декабре 2008 года. Изначально Prosody был под лицензией GNU General Public License (version 2), но позже переключился на лицензии MIT в своем 3-м выпуске.
Расписывать преимущества Prosody я не буду, так как всё зависит от целей использования. Лично мне Prosody показался более удобным, стабильным и простым, по сравнению с Ejabberd, который я использовала ранее. Плюс, работает у меня это всё без спотыканий на дохленькой машине с одноядерным процессором и 128 mb оперативной памяти.
Установка производилась на Ubuntu 12.04.
Добавляем в sources репозиторий Prosody.
deb http://packages.prosody.im/debian precise main
Стоит заметить, что данный репозиторий имеет разделы для Ubuntu версий Lucid, Precise, Quantal, а так же для Debian версий Sid, Squeeze, Wheezy.
Установка.
aptitude install prosody
На момент написания заметки последняя стабильная версия — 0.8.2. Можно так же поставить первую бету версии 0.9, изменив «prosody» на «prosody-0.9», но бета — всё же бета, хотя на тестовой машине и в ней глюков не наблюдалось. Но глубоко я не копала.
Далее нужно отредактировать конфигурационный файл «prosody.cfg.lua» по адресу /etc/prosody/.
Строки, на которые следует обратить внимание:
admins = { };
В данной строку указываем админов, помещая каждый аккаунт в кавычки, разделяя их запятой. Пример:
Данный модуль отвечает за регистрацию пользователей, а так же смену пароля с использованием клиента.
"watchregistrations";
Админы будут получать сообщения от сервера о регистрации новых пользователей.
allow_registration = false;
Значение «false» в этой строке запретит регистрацию новых пользователей. По умолчанию она запрещена в целях экономии ресурсов. Для включения регистрации необходимо установить значение «true», при этом должен быть загружен модуль «register».
Значение «true» включит принудительный запрос шифрования при авторизации контактов. По умолчанию отключено, так как не все сервера поддерживают s2s-шифрование, или оно на них отключено. При включении этих строк пользователь не сможет авторизовать в своём ростере контакт со стороннего сервера с отключенной опцией s2s. Включая gmail.com.
VirtualHost "example.com"
Адрес нашего хоста.
enabled = false
Необходимо удалить или закомментировать (--) эту строку для включения хоста.
Адреса сертификата и ключа для нашего виртуального хота.
Если у вас есть заверенный сертификат, требующий пароль, то в эту секцию можно добавить строку пароля.
Где сертификат и ключ имеют имя «prosody», а значение «365» указывает на то, что сертификат будет годен год.
Component "conference.example.com" "muc"
Включает многопользовательский чат и возможность создания комнат по адресу conference.example.com.
На этом настройка закончена. Конфигурационный файл Prosody очень хорошо комментирован, поэтому не составляет труда понять за что отвечает какая-либо строка. В данном примере лишь основное.
Перезагружаем XMPP-сервер.
/etc/init.d/prosody restart
Создание аккаунта.
Для создание аккаунтов можно использовать настольный клиент (в моём случае Psi Plus), при условии что регистрация разрешена и модуль «register» загружен. Или можно воспользоваться утилитой «prosodyctl».
Мы создали пользователя user на хосте example.com
Основные команды:
prosodyctl adduser JID — Создание аккаунта.
prosodyctl passwd JID — Установка пароля для ааккаунта.
prosodyctl deluser JID — Удаление аккаунта.
prosodyctl start — Запуск сервера.
prosodyctl stop — Остановка сервера.
prosodyctl restart — Перезагрузка сервера.
prosodyctl reload — Перезагрузка конфигурации сервера и обновление логов.
prosodyctl status — Рапорт о состоянии сервера.
Подключаем базу данных MySQL.
Prosody имеет два плагина: «internal» и «sql». По умолчанию данные о пользователях, vCards и прочее хранится во внутренней базе. При желании это можно поправить для более привычного использования. В моём случае — MySQL. Так же данные могут храниться в PostgreSQL и SQLite3.
Для работы Prosody с базой данных MySQL следует обратить внимания на следующие строки конфигурационного файла:
Раскомментируем строку «storage = "sql"» для загрузки плагина «sql». А так же строку с указанием на драйвер MySQL, изменив значения «database», «username», «password» и «host» на свои. Далее перезагружаем Prosody.
В случае с Ubuntu 12.04 необходимо подключить ещё один репозиторий, так как репозиторий Ubuntu не удовлетворяет зависимости нужного нам компонента, а именно «liblua5.1-dbi0», для которого требуется «libmysqlclient15off».
Добавляем репозиторий Percona (форк MySQL).
В sources добавляем строку
После чего обновляем список и ставим «liblua5.1-dbi0»
apt-get update
aptitude install liblua5.1-dbi0
Теперь перезагружаем Prosody и пользуемся. База будет храниться в MySQL.
***
обновлено
Для установки на Debian 7, или Ubuntu 14.04 и хранения базы данных в MySQL, или Percona, или MariaDB необходимо установить пакет "lua-dbi-mysql", который есть в основных репозиториях этих операционных систем. Пакет "liblua5.1-dbi0" в таком случае не нужен.
TeamSpeak 3 сервер на Debian 7 + MariaDB + WebUI.Linux / Связь.TeamSpeak — программное обеспечение, предназначенное для голосового общения в сети Интернет посредством технологии VoIP. Являет собой связку серверной части и клиентской программы под различные платформы.
Приватный узел TOR.Связь.На этом сайте уже есть несколько заметок, посвящённых сети TOR. Написаны они около семи лет назад, и многое изменилось. В этом материале мы сосредоточимся на «мостах». Судя по всему, это наиболее актуальная тема в русскоязычном сегменте Интернета на данный момент.
Pritunl - собственный VPN сервис.Связь.Pritunl - Корпоративно ориентированный OpenVPN, IPsec и WireGuard VPN сервер. Звучит жутко, но вполне подходит для частного использования в личных целях. По сути, это GUI, позволяющий легко развернуть VPN сервер любому желающему. Если автоматическое развёртывание OpenVPN не удовлетворяет ваших требований, а ручная настройка утомляет, или просто хочется чего-то более профессионального, то этот материал для вас.
Android: Удаление вшитых приложений без Root.Linux.Так называемое Bloatware - беда любого устройства, купленного в ритейле. Если на устройстве есть операционная система и предусмотрен выход в Интернет, производитель обязательно напихает туда кучу всякого “жизненно необходимого” дерьма, в лучшем случае о существовании которого пользователь может и не знать. Иначе же оно постоянно предлагает купить “полную версию”, дать ему разрешение на всё для “улучшения качества” и “удобства использования”.