I’ve spent some time with my Postfix config on Virtualmin GPL, which is installed on Ubuntu-1004-lucid-32-minimal with the install.sh script.
My mail to external domains was not being delivered (mails getting stuck in the queue).
The log showed this error when I requeued the mails:
postfix/smtp: fatal: unknown service: smtp/tcp
I also had problems logging in from external clients, with the log pointing to issues with sasl:
postfix/smtpd: warning: xsasl_cyrus_server_get_mechanism_list: no applicable SASL mechanisms
postfix/smtpd: fatal: no SASL authentication mechanisms
These issues seemed to be a problem with the fact that the default Ubuntu Postfix installation has a chrooted smtp service (see https://help.ubuntu.com/10.04/serverguide/C/postfix.html and http://www.seaglass.com/postfix/faq.html#eruksvc).
After rummaging around with various settings (copying /etc/postfix/services to /var/spool/postfix/, trying to copy sasl files) I now have resorted to getting Postfix working by not running the smtp service chrooted. This seemed to be the best option given my limited Linux and chroot experience (e.g. when I googled, I found conflicting information on whether I should copy or link files, etc.).
I am not aware of having made any changes before I noticed the Postfix setup, so I’m pretty sure the whole installation was default when the problem arose.
Is this an issue that could be adressed in the install.sh script? Or is it the Ubuntu packages that are not getting set up correctly on installation? Looking at the Ubuntu Postfix description, sasl should have worked out of the box, and one would expect the same for postfix/smtp?
As far as I can test this on a local virtual machine (It is based on a Ubuntu 10.04 server, though), all these issues are not present there. I’m trying to find the root cause, so I can address it properly instead of just removing the chroot.