Назад | Перейти на главную страницу

Статус выхода OpenDKIM и пароли в виде открытого текста mysql

На моем VPS Debian Jessie, почтовом сервере Postfix + Dovecot с пользователем и паролем в MySQL я установил OpenDKIM, который также использует MySQL для ключей. Если по какой-то причине сервер перезагружается, я могу каждый раз находить службу OpenDKIM в статусе «активна (завершена)» и отчет журнала:

opendkim: /etc/opendkim.conf: dsn:mysql://NAME-MAILUSER:**PLAINTEXT-PASSWORD**@MYSQL-PORT+127.0.0.1/mailserver/table=virtual_domains?keycol=name?datacol=ID: dkimf_db_open(): Can't connect to MySQL server on '127.0.0.1' (111)

Причина, похоже, связана с подключением к серверу MySQL.

если я перезапускаю OpenDKIM, проблема всегда исчезает.

У меня два вопроса:

  1. можно ли запретить systemctl показывать пароль MySQL в журналах?
  2. убедиться, что OpenDKIM обнаруживает, что сервер MySQL запущен, и правильно перезагружается (OpenDKIM)? Установка приоритета различных сервисов может решить проблему? И что лучше всего в этом сценарии?

Большое спасибо!

Дэвид

Ответ на 2: Запуск opendkim после mariadb или mysql:

  mkdir /etc/systemd/system/opendkim.service.d

добавьте в этот каталог /etc/systemd/system/opendkim.service.d/database-dependency.conf:

  [Unit]
  After=mariadb.service

Примечание: используйте mysql.service скорее, чем mariadb.service если это имя службы в вашей системе.

ссылка: Справочная страница systemd.unit

Ответ на вопрос 1:

Удаление ошибки может помешать вводу пароля в журнал. Насколько мне известно, в конфигурации нет возможности удалить пароль из журнала.

Однако альтернативой является создание пользователя opendkim базы данных, который не зависит от пароля, только пользователь unix также является opendkim. Это можно сделать с помощью аутентификация через сокет unix.

   INSTALL PLUGIN unix_socket SONAME 'auth_socket';
   ALTER USER opendkim IDENTIFIED VIA unix_socket;

примечание: ALTER USER - это только mariadb-10.2 +. В более ранних версиях может потребоваться удаление и повторное создание пользователя / грантов.

Opendbx dsn, который использует opendkim, должен будет подключаться к сокету unix, а не к TCP-соединению. Это может просто потребовать вызова хоста localhost однако я не уверен на 100%. Кроме того, некоторые постфиксные процессы запускаются в chroot и, следовательно, не могут подключиться к сокету unix без изменения chroot=n в столбце в master.cf.

edit: * изменено на xxx.conf соглашение об именах файлов * разрешено для mysql или mariadb в зависимости от используемой службы * edit - некоторые постфиксные процессы привязаны к корневому каталогу.