Я рекомендовал бы создать группу, назвал что-то как Компьютеры Ведения счетов, к которым Вы добавите эту учетную запись как участник. Таким образом, можно всегда изменять элементы группы для обновления делегации, не изменяя ACL.
Это сообщение списка рассылки cyrus-sasl в конечном итоге направило меня на правильный путь.
Для потомков, попытка создать достаточно явный конфиг. /etc/postfix/main.cf:
smtpd_sasl_type = cyrus
smtpd_sasl_path = smtpd
cyrus_sasl_config_path = /etc/postfix/sasl
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
Уловка в приведенном выше conf заключается в том, что postfix + libsasl2 делает следующее: $ {cyrus_sasl_config_path} / $ {smtpd_sasl_path} .conf
Как только мы дошли до этого, в / etc / postfix / sasl / smtpd.conf мы можем сообщить libsasl, что мы хотим поговорить с saslauthd:
pwcheck_method: saslauthd
mech_list: LOGIN PLAIN
saslauthd_path: private/saslauthd/mux
Поскольку smtpd привязан к корневому каталогу, saslauthd_path относится к / var / spool / postfix. Я использую монтирование с привязкой, чтобы сделать / var / run / saslauthd приватным.
Я боролся с этим около часа, прежде чем выяснить это с помощью strace -f -p pid
сообщая работающему процессу postfix, что он не смог найти мой файл sasldb2
, поскольку он поместил себя в chroot
.
Отредактируйте /etc/postfix/master.cf
и поместите n
в столбец chroot
. Перезапустите постфикс. Должно работать сейчас.
Сталкиваюсь с похожей проблемой в Ubuntu 20.04. Там параметр cyrus_sasl_config_path
для постфикса вообще не распознается. Вместо этого он ищет /etc/postfix/sasl2/ для содержания smtpd.conf.
В Ubuntu 20.04 smtpd по умолчанию имеет chroot. Однако его сценарий подготовки chroot в /usr/lib/postfix/configure-instance.sh не распространяется ни на какие файлы, связанные с SASL, поэтому вам нужно поместить его в chroot вручную.
Создайте недостающую папку в chroot:
mkdir -p /var/spool/postfix/etc/postfix/sasl2
Создайте файл конфигурации SASL2 здесь:
cat >>/var/spool/postfix/etc/postfix/sasl2/smtpd.conf <
Ссылка из связанной глобальной папки:
mkdir -p /etc/postfix/sasl2
ln -s /var/spool/postfix/etc/postfix/sasl2/smtpd.conf /etc/postfix/sasl2/smtpd.conf
Убедитесь, что сокет saslauthd доступен в папке /var/spool/postfix/var/run/saslauthd/. Вы можете управлять этим, изменив файл /etc/default/saslauthd. См. комментарии, найденные в этом файле.