The end result

When you’ve followed all the instructions for compilation and configuration what do end up with. Here’s a short list with all the functionality, software packages and versions:

The web server:
A full blown web server with all the functionality to build and host great web-sites, you can install almost all PHP and MySQL based web-applications on this installation.

The mail server:
The mail server is a full functioning mail server that will allow you to receive mail for unlimited users on unlimited domains (only limited by the performance of your server and the storage capacity). It will allow IMAP clients to read mail or even support a web based mail application you can host on your server.

  • Cyrus-sasl 2.1.18
  • Postfix 2.2.9
  • Courier-Authlib 0.58
  • Courier-IMAP 4.1.0
  • Postfix Admin 2.1.0 to administer the mail accounts

This is it for now, but I will keep adding stuff, extra steps and change errors.

Good luck with your setup, let me know if you have used any info from this site to build your own server…

If you liked this documentation and used it to your advantage I would be very pleased if you would express it and supported this site. All current donations would go to the aid of buying a Intel based Mac to support their owners as well.

7 Responses to “The end result”

  1. macmax Says:

    You have done great work !
    But I have a problem.
    I have this messagge in log mail :
    imapd: authentication error: No such file or directory
    and
    imapd: error: No such file or directory
    imapd: pippo@pallino.it: chdir(/user/local/virtual) failed!!

    Why ??
    Thanks.
    Max

    Richard5: The problem is solved, Max made a typo, he entered /user/local/virtual instead of the /usr/local/virtual as described in the documentation.

  2. Ben Says:

    Hi,

    I am really interested in your setup and I am considering following your lead to setup a server using the Mac mini.

    I am just wondering have you encountered any problems running the mini 24/7 ? Such as the unit heating up etc?

    I have also read an article (http://www.macintouch.com/macmini05.html) that mentions concerns about hard disk life. I am just wondering have you had any problems relating to that or if you have done any research about that?

    Kind regards,
    Ben

  3. david Says:

    Richard,
    Thanks very much for putting this out for the rest of us! I’ve configured everything through postfixadmin, and it seems to work, except my first trial virtual account does not receive mail sent to it, and I cannot send mail. The mail log says, e.g.:

    Feb 6 13:22:45 MyDomain postfix/master[26085]: fatal: unable to set session and process group ID: Operation not permitted

    Any clues?
    Thanks again!
    David

    Richard5: There were several issues with this error, one or two forgottten steps but it went mostly wrong because there was aother configuration active as well. David is currently re-installing OS-X to start from a clean setup.

  4. Todd Wheeler Says:

    Dare I ask,… although I’ve yet to set up my own server from scratch (currently running Tenon’s iTools), I was wondering if you had any success setting up virtual hosts on your mac-mini server.

    I have googled and found different techniques, and I won’t call them *hacks*, I see wildly different approaches. I don’t mind doing it all via teminal,… I just haven’t seen a source that does virtual hosts clearly or clean.

    Thanks,
    Todd

    Richard5: Todd has been helped, I’m going to write a simple document on how to do this yourself.

  5. TJ Snider Says:

    Thanks muchly for the howto, I’ve gotten this working as is with virtual domains.

    I also still need to get access to the underlying original domain on which this is hosted… ie. a non-virtual domain. I’ve tried adding in the PAM module and am able to use authtest to find and verify the account, but IMAP doesn’t want to allow it. I’ve also tried the “DEFDOMAIN=mydomain.com” and that didn’t work. Can you provide any pointers or suggestions?

    I’ve looked through the original docs, and must be missing something.

    Thanks,
    TJ

    Richard5: TJ just make your underlying domain another virtual domain. You can’t mix local mail with the IMAP virtual mail.

  6. daniel Says:

    With this documentation you have realy done a geat work. Thanks a lot.

    Unfortunately I still have a problem. I can send mails but I can not receive them. In the system.log I find often this message: May 5 22:37:54 imac postfix/smtpd[417]: mysql plugin couldnt connect to any host\n
    Do you hav any suggestions what this mean?
    The authentication produces a logoutput where some strings and I’m not sure if this is correct.
    authdaemond: Authenticated: sysusername=, sysuserid=27, sysgroupid=27, homedir=/usr/local/virtual, address=dani@tuquoc.org, fullname=Daniel Fasel, maildir=, quota=, options=
    And finally I have this servtab file problem which was already mentioned in reply.

    Thanks,
    Dani

    Richard5: Just mist some configuration details, problem solved.

  7. Carlton Says:

    Hi there. This guide is really great thanks!

    I’m fully installed, configured and working. I can send and receive mails using TLS no problem. On the way I’ve had every error listed here and have slowly managed to handle them all.

    Just one problem: I get get rid of the

    mysql plugin couldnt connect to any host\n

    error when sending e-mails.

    The emails do go. And smptd is authenticating because I’ve tried it every other way (no password, wrong username, wrong password etc.) and then it fails. The username and password are only stored in the MySQL database and so smptd must be connecting to that, via authdaemond.

    Typing the error message into google, you get two types of response. One is a bit of source code for the Sasl MySQL plug-in, which suggests that Sasl is, somehow, still trying to use AUXPROP as its pwcheck_method (despite us telling it not to).

    The other is to discussions you have been involved in suggesting that the problem is to do with incorrect myhostname, mydomain, and virtual domain settings. I’ve followed every bit of advice here and have tried every combination, and still I’m getting the error. I’m confused and am probably missing something obvious. Any understanding you have here would really help.

    (Thanks again.)