gog's info

Free eBook on configuring a mail server with Postfix

Goran Jurić,

Today I finally managed to release a first public version of a book I have been working on for a while.

If you ever wanted to build a mail server but all the tutorials and howtos on the internet where too vague or old, this is a book for you.  It will guide you through the setup of a complete email server on a latest Debian 6.0 (Squeeze) distribution. I tried to go beyond just listing steps needed to get a working email server online. Hopefully this book explains a little bit more about the why and not just how.

As everything else in life, this book is a work in progress and I would really appreciate all the feedback I could get. Both positive and negative. I have tried to give credit, where credit is due, but there is always a chance I missed to attribute somebody for the work they did. Don’t hesitate to point that out.

The book was written in Docbook 5.0 format and when my free time allows it I will try to explain a little bit more about the whole process because finding tried and tested information about myriad of choices and tools in the Docbook publishing chain proved to be a not so easy task.

I hope you will enjoy reading Building a mail server on Debian 6.0.

Posted in Uncategorized

Comments

11 Responses to 'Free eBook on configuring a mail server with Postfix'

  1. Fred / 28 Apr 11 at 05:28

    Goran, this is great. Thanks for doing this.
    I’m guessing the work ports well to Ubuntu?
    I’ll give it a try. And will let you know

  2. Goran Jurić / 28 Apr 11 at 10:00

    Well, I do not see a reason why it shouldn’t work. But I didn’t test it out.

  3. Stanisław Klekot / 28 Apr 11 at 12:15

    Well, what’s the point in generating RSA key pair protected by 3-DES in chapter 3.1, when you’re removing encryption in next paragraph? You’ve never thought of how to use /usr/bin/openssl tool, do you?

  4. Goran Jurić / 28 Apr 11 at 12:56

    You are right. I am not really an expert in the cryptography field.

    I guess the right way would be to remove “-des3″ flag during the generation of the key and skip the part where the pass phrase is removed?

    Thank you for your comment.

  5. Mateusz / 19 May 11 at 10:16

    Great work :) everything works almost as i would love to :D but i have one question … about logins, im not going to use multiple domains with some other users … so can we swap authorisation from column username ( where the whole mail is used … ) to column local_part? i have tried to do it but something went wrong :) what should I change to make it work ? pam.d, saslauth ? maybe im missing something ?

  6. Goran Jurić / 19 May 11 at 13:19

    I am not quite sure, I have never needed this kind of setup.

    But, you will certainly have to edit the start up options for saslauthd (note the -r switch, and look into saslatuhsds man pages for explanation). You can also look into the smtpd_sasl_local_domain option in /etc/postfix/main.cf.

    But note that you can’t mix and match setups. If you choose not to use full email addresses as usernames you can only serve mail for one domain.

  7. Mateusz / 20 May 11 at 09:46

    To be exact … thats what im about to do. i have few domains … but one user database … one domain is set because it was once used … the other is a temporary solution but used by some ppl :) and the primary one that SHOULD be used … so what i need is to receive mails for example janedoe@domain1.com janedoe@domain2.com and janedoe@domain3.com all and should be delievered for one account

  8. Goran Jurić / 23 May 11 at 11:10

    You can do that with forwards.

  9. Mateusz / 27 May 11 at 11:17

    echo DEFAULT_DOMAIN domain1.com >> /etc/courier/authmysqlrc
    and it solves my problem :) without any other auth config changes :)
    works like a charm :]

  10. Mateusz / 27 May 11 at 12:19

    was a bit hasty about that xD i needed to change in /etc/pam.d/smtp the part with usercolumn=username to usercolumn=local_part in both lines … and set in database column local_part as UNIQUE :)
    this was needed to make sending messages possible ;]

    i hope that these information would help someone :)

  11. codereplica / 2 Mar 12 at 22:46

    Hi,
    On the dns caching page there is the following config example:
    listen-on { 127.0.0.1; }
    allow-transfer { none; }
    allow-query { 127.0.0.1; };

    I think this should be:
    listen-on { 127.0.0.1; };
    allow-transfer { none; };
    allow-query { 127.0.0.1; };

    Bind9 wont’t start otherwise

Leave a Reply