Applicable to:
- Plesk for Linux
Symptoms
-
When sending an email from webmail, the following error message is shown:
PLESK_INFO: SMTP Error (535): Authentication failed.
-
The following error message appears in
/var/log/maillog
:CONFIG_TEXT: postfix/smtpd[7538]: warning: unknown[203.0.113.2]: SASL login authentication failed: authentication failure
-
The saslauthd service is up and running on the server:
# service saslauthd status
...
Active: active (running) since ...
Cause
The Postfix smtpd.conf
configuration file is corrupted.
Resolution
-
Connect to the Plesk server via SSH.
-
Open the
smtpd.conf
file in a text editor (in this example, we are using the vi editor) and edit the file as follows:-
on CentOS/RHEL-based distributions
# vi /usr/lib64/sasl2/smtpd.conf
pwcheck_method: auxprop saslauthd
auxprop_plugin: plesk
saslauthd_path: /var/spool/postfix/private/plesk_saslauthd
mech_list: DIGEST-MD5 CRAM-MD5 PLAIN LOGIN
sql_engine: intentionally disabled
log_level: 4 -
on Debian/Ubuntu-based distributions
# cat /etc/postfix/sasl/smtpd.conf
pwcheck_method: auxprop saslauthd
auxprop_plugin: plesk
saslauthd_path: /private/plesk_saslauthd
mech_list: DIGEST-MD5 CRAM-MD5 PLAIN LOGIN
sql_engine: intentionally disabled
log_level: 4
-
-
Save the changes and close the file.
-
Restart the saslauthd service:
# service saslauthd start
Comments
7 comments
On Ubuntu is /etc/postfix/sasl and not /usr/lib64/sasl2. Please correct your article.
Hello @Miomir, the article will be updated soon.
On Debian 10 there is no saslauthd (and never has been)
# service saslauthd status
Unit saslauthd.service could not be found.
Yes, Postfix is complaining about unreachable saslauth...
Apparantly, saslauthd is/should be ran bij Postfix, as it is listed in master.conf.
The documentation in this article is wrong. A recent Plesk update breaks Plesk saslauthd on Postfix which changed the chroot flags of a lot of services in /etc/postfix/master.cf.
The solution mentioned for CentOS (setting saslauthd path to the full system path, instead of the chroot) works for Debian machines as well.
# service saslauthd start
Failed to start saslauthd.service: Unit saslauthd.service not found.
Debian 9
1. The service saslauthd start command is incorrect, most debian/ubuntu systems use systemctl instead of the service command
2. the config "saslauthd_path: /private/plesk_saslauthd" as listed for debian/ubuntu seems incorrect, the value for CentOS/RHEL "saslauthd_path: /var/spool/postfix/private/plesk_saslauthd" worked on my Debian system.
Hi there Ivo Smits,
Thanks for your input!
1. The "service" command still works on all Debian/Ubuntu systems. It does not matter which command you use, "service" or "systemctl", to start a service.
2. In the config line "saslauthd_path: /private/plesk_saslauthd", "/private/plesk_saslauthd" is a default chrooted path. If it works for you with "/var/spool/postfix/private/plesk_saslauthd", then most likely you have hit a bug in Plesk Obsidian 18.0.34 described here.
Please sign in to leave a comment.