If you had Postfix Enabler installed on a 10.3 client system that you have upgraded, you may find that your mail setup no longer works as expected. No surprise here, since Apple has made some under-the-hood changes with Tiger and how it runs start-up items and services. After a bit of digging around, I finally got my mail server for Tiger client working again. Here is what is needed to get it to work again.
Note: this is a fairly long tip since it includes file listings needed, but the process itself should be relatively straight forward.
[robg adds: I haven't tested this one...]
The first four steps check that the upgrade from 10.3.X hasn't deleted or moved the files needed to get this to work. The Tiger-specific details follow at step five and beyond.
MAILSERVER=-YES-/Library/Startup Items/Postfix/Postfix
/Library/Startup Items/Postfix/StartupParameters.plist
Full contents of each of these files is located at the end of this tip./usr/local/libexec/imapd
/usr/local/libexec/ipop3d
sudo pico /Library/LaunchDaemons/pop3.plist
At the following screen, paste in this content. Hit Control-X to quit out of pico and save changes. sudo pico /Library/LaunchDaemons/imap3.plist
Paste in this content. Quit out of pico (Control-X) and save changes. sudo chown root:admin /Library/LaunchDaemons/*
This will change the files' ownership to root and admin.
/System/Library/OpenSSL/certs/imapd.pem
/System/Library/OpenSSL/certs/ipop3d.pem
/System/Library/OpenSSL/certs/smtpd.pem
If you want to use SSL-enabled POP/IMAP, the same model plists listed above apply except make sure of the following:
<key>Label</key>
<string>edu.washington.imapds</string>
and the "Listener" part is changed to:
<key>SockServiceName</key>
<string>imap3s</string>
POP3s{
Description = "Postfix mail server";
Provides = ("SMTP");
Requires = ("Resolver");
Uses = ("Network Time", "NFS");
Preference = "None";
Messages =
{
start = "Starting Postfix";
stop = "Stopping Postfix";
restart = "Reloading Postfix Configuration";
};
}
and the /Library/StartupItems/Postfix/StartupItems/postfix listing should read:
#!/bin/sh
. /etc/rc.common
StartService ()
{
if [ "${MAILSERVER:=-NO-}" = "-YES-" ]; then
ConsoleMessage "Starting mail services"
/usr/sbin/postfix start
elif [ "${MAILSERVER:=-NO-}" = "-AUTOMATIC-" ]; then
/usr/sbin/postfix-watch
fi
}
StopService ()
{
ConsoleMessage "Stopping Postfix mail services"
/usr/sbin/postfix stop
killall -1 postfix-watch 2> /dev/null
}
RestartService ()
{
if [ "${MAILSERVER:=-NO-}" = "-YES-" ]; then
ConsoleMessage "Reloading Postfix configuration"
/usr/sbin/postfix reload
else
StopService
fi
}
RunService "$1"
Permissions for both files should be owner: root and group: admin
Mac OS X Hints
http://hints.macworld.com/article.php?story=20050426234312324