MariaDB внезапно отказывается от удаленных подключений, которые работали

У меня возникла странная проблема, и я хотел узнать, есть ли она у кого-нибудь.

Мой сайт' Архитектура системы состоит из двух серверов: на одном работает веб-приложение (Python / Django), а на другом работает MariaDB.

Сайт работает уже более года, и он был довольно стабильным, но теперь у меня есть этот странная проблема.

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

_mysql_exceptions.OperationalError: (1045, "Access denied for user 'user'@'x.x.x.x' (using password: YES)")

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

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

Через два дня после этого и вчера это случилось снова, и я "john.doe@example.net "с почтовым ящиком и общей папкой imap" Shared / ", которая содержит общие папки, к которым имеет доступ каждый пользователь.

Пользователи приходят из одного запроса LDAP (например, имея специальное поле или специальный класс ), а другой запрос должен определить, какие общие папки существуют (общие папки также будут иметь собственный адрес электронной почты, например, press @ , stage @ , team @и т. д.)

Я знаю, как настроить обычные почтовые ящики, но как я могу настроить общие папки из другого запроса?

Есть ли какой-нибудь простой способ также настроить контроль доступа к некоторым из этих общих папок из LDAP, например, что пользователь имеет доступ только к пользователю, а общая папка находится в одной группе или имеет общий атрибут?

0
задан 28 August 2017 в 02:07
1 ответ

Из Dovecot Wiki, Несколько баз данных аутентификации :

Dovecot поддерживает определение нескольких баз данных аутентификации, так что если пароль не совпадает в первой базе данных, он проверяет следующий. Это может быть полезно, если вы хотите легко поддерживать как локальных пользователей системы в / etc / passwd, так и виртуальных пользователей.

Другими словами, просто определите несколько комбинаций passdb / userdb. Предпочтительно упорядочивать их по количеству входящих писем / соединений, так как первое из них всегда запрашивается.

Непосредственное использование LDAP для определения групп ACL невозможно в Dovecot, но обычно возможно с помощью сценария после входа в систему С по получить группы из LDAP .

0
ответ дан 5 December 2019 в 07:28

Теги

Похожие вопросы