Главная > Linux > mosquitto auth plugin install

mosquitto auth plugin install

Mosquitto и mosquitto-auth-plug, как установить и сделать авторизацию через mysql и другие бд.

На гитхабе есть замечательный плагин github.com/jpmens/mosquitto-auth-plug и там даже рассказывается как его установить, но увы, если делать все это с новой версией mosquitto у вас ничего не выйдет.

Оставлю для истории, как победить и скомпилировать плагин.

Первое с чем вы столкнетесь это с ошибками при компиляции, ошибками вида conflicting types for ‘mosquitto_auth_acl_check’ и другими, все это обсуждается тут github.com/mbachry/mosquitto_pyauth/issues/20 и если победи эту ошибку то столкнетесь с другой error: unknown type name 'my_bool' которая обсуждается тут github.com/gearman/gearmand/issues/165

Если все почитать и собрать вместе то каменный цветок соберется, ну а чтобы не мучиться надо сделать вот так:

Оригинал статьи находится в этом блоге www.yasith.me/2016/04/securing-mqtt-connection-using.html

Я его переведу и внесу свой вклад чтобы это все собралось

Создаем папку в домашнем каталоге и качаем два репозитория, сам москит и плагин.
 
Все действия мной были опробованы на ubuntu server 20.04 LTS, в планах попробовать на CeontOS 7 и 8
Далее переходим в папку с москитом, устанавливаем доп пакеты для сборки и собираем москит
При сборке могу быть ошибки, на них не обращаем внимания и переходим в папку с плагином
 
 
Переименовываем файл config.mk.in в config.mk
И редактируем его, т.к. нам нужна mysql авторизация, то ее и выбираем.
 
Далее устанавливаем еще доп пакеты
 
Теперь перед тем как сделать make, нам нужно поправить два файла:
  1. auth-plug.c 
  2. be-mysql.c

Первые правки берем по этой ссылке:

github.com/amimoto/mosquitto_pyauth/commit/7802491379e3f4fdca01b5b07c11d72dcf4f75f6

Правки для второго файла берем тут:  github.com/gearman/gearmand/issues/165#issuecomment-419531249 (их вносим сразу после всех инклудов вначале файла)

P.S. по ссылкам на гитхабе файлы в которые вносятся правки отличаются по названию, на это не обращайте внимание, все функции совпадают.
 
И делаем make
 
Если все удалось, мы увидим готовый auth-plug.so
 
Настройка плагина в рамки статье не входит, ждите продолжения.
Если не хочется все делать руками, архив с файлами которые нужно  заменить
1 звезда2 звезды3 звезды4 звезды5 звезд (11 votes, average: 2,91 out of 5)
Загрузка...
  1. Пока что нет комментариев.
  1. Пока что нет уведомлений.


7 × четыре =

Heads up! You are attempting to upload an invalid image. If saved, this image will not display with your comment.