Success stories

I would appreciate if you leave a comment here telling others if your mail server is running. Perhaps even a word about the purpose of the mail server and the number of users you have. That allows others to see that their time is well-spent and indeed leads to a working mail server. Thanks for your feedback.

(Have I mentioned the donation and Flattr buttons at the bottom? 🙂 )

52 thoughts on “Success stories”

  1. I started with the Squeeze tutorial and it helped me tremendously to understand the different bits and pieces and eventually led me to my first working mailserver.

    Since then I’ve changed the OS (to FreeBSD) and the authentication (to openldap) and I developed my own ansible roles to deploy the servers but the root still lies here 🙂

    And yes, I went through all that trouble to provide mail service for me and some close friends and I do not regret it.

    Thank you!

  2. I’ve been using this tutorial for years now to configure a small mail server for myself and family. It works, what more can you say.

    Thank you. The clarity of your tutorial is what all tutorials should aim for.

  3. I had taken a whack at every single guide you could find searching for mail server setups on Debian. It seemed like every guide I used would have issues, and be completely lacking in any information on what was being done and where to look to try and fix issues. the ISPMail guide is by far the best and most informative guide i found that not only ended up with something that actually works as expected, but laid out the details of how everything works together to operate as an email server. I cleared out all my bookmarks on the subject, leaving only this one. I have actually gone step by step through this guide several times, each time wiping my system with a fresh minimal install. It works every time, and I learn more and more each time I work through it. Thank you very much for taking the time to write this guide, I only wish others could come up with something like this on other subjects. My next step is getting ftp up and running….another long list of broken how-to on the web.

  4. Marcus Dewald

    One of the best Tutorials out there in the world wide web! I’ve got now my first mailserver up and running on my dedicated server. Thanks for this great step by step tutorial! I can just encourage anybody to try this tutorial even out of curiosity to see how simple it is to setup an mailserver with a lot of nice features and to learn how a mailserver works in Real-Life.

  5. Many years ago I installed my first mail-server following the tutorial here: https://www.howtoforge.com/virtual-users-and-domains-with-postfix-courier-mysql-and-squirrelmail-debian-squeeze
    Now I got a new server and was looking for a similar tutorial for jessie, I found yours, and I am very happy with it, pretty straight forward, a lot of explanations, to remember stuff I knew once, but burried it somewhere.

    The only thing I am missing is the transport-table and the integration of mailman, which I need. But I think I can figure that out by my own, leaning on the instructions of the other tables.

    So thank you for your great work.

  6. I work as an IT manager for a small law firm and as an IT consultant for a couple other firms. My firm was using OS X Server version 10.4 for around 7 years. OS X Server is, unfortunately, a dreadful system with rather poor support. The problems piled up, until, eventually, the SSH server would stop functioning, meaning if there were an issue, I couldn’t even log in to assess the issues or reboot the system.

    I had to move to a new server. I opted to roll my own with the ISP Mail guide (Wheezy). It works! Not only does it work, but the up-to-date software and Ubuntu’s/Debian’s APT system is a breeze to manage. I’ve since set up a similar system for a client and I even manage multiple domains on a single server. My server has been up for around a year and, unlike with an Apple ecosystem, I can typically find solutions to Linux issues in a relatively short order.

  7. Saying thank you isn’t nearly enough. Your tutorial is a 100% Handbook , my machine was sending and receiving within a few hours. I am now diving deeper into Auth Methods and the Quick Server Response Options… I hope i did not skip things like that @workaround.org – Nice work!

    Btw. my Machine is a dedicated .vdi and lives in a MBP driven also by a basic Jessie. Several other Servers live besides… So i guess backing up those Guys is not the problem. I have also learned alot from your other backup strategies. ki

  8. I’m about to set up an email server for myself on a Digital Ocean VPS, and I have to set up one for a client as well. This guide is by far the best I’ve found, and I’ll report back after success. He prefers Nginx, though I don’t suppose that will be an issue.

    What he wants is to run his own public email server where users can register and all that good stuff. We already have the front end working well from his previous attempt, except that he had to manually create users. This was using iRedMail. I persuaded him to let me rebuild the server from scratch, and I understand all but one part, about actually creating the user. From what I understand of what I read, a user is represented by an entry in the database. So a simple php script to create the user in the database and fire a welcome message should enable them to login to their mail and start using the service, correct?

    By far the most extensive tutorial I’ve come across, I appreciate it tons 🙂

    1. Christoph Haas

      Hi Aaron. Yes, a user is basically added by inserting a row into the virtual_users table. I have even documented the SQL queries you need to run if you like to use that.

  9. Hi,
    I have followed this tutorial to create a mailserver on Gandi VPS two years ago. It still works like a charm, serving 14 different domains and nearly 60 users.
    I have also set up a mailserver for a medium sized car spare-parts firm, which runs on a local server. It serves one hundred of users and works very well.
    What can I say? A huge thank you!

  10. Thank you so much for your great tutorials. I’ve used them to set up multiple email servers over the years with great success. Just finished migrating/consolidating two of my old vservers into a single new vserver that now hosts both domains. Worked like a charm. Actually, not quite done yet, as I still need to set up roundcube (on nginx).

    Just wanted to point out: There’s a new alternative to self-signed certificates that is also no-cost: Let’s Encrypt. It’s pretty easy to set up (I use nginx + webroot option) and it also supports SAN (Subject Alternative Names). This means I now have a single valid certificate for both domains (and multiple subdomains!). Additionally, certificate renewal can be fully automated.

    And another addition: I used this guide to set up DKIM with opendkim: https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-dkim-with-postfix-on-debian-wheezy. Might be a good starting point for others. It’s for Wheezy but can be used on Jessie as well.

  11. I’ve used a combination of your tutorial and the one by sealedabstract.com to get my mail-server running. It’s meant for a bunch of friends who want to escape GMail 🙂 It would be great if you could add a bit more on how how the server could be configured to encrypt each user’s mailbox separately, so that the admin can’t read them. Or is that not at all possible?

  12. Thank you very much for running this site for as long as you have – it’s been immensely useful to me a few times now! I especially like how you completely avoid using Courier IMAP for the Debian Jessie tutorial. 😉

    I worked out how to add SPF, DKIM and DMARC to my setup and took some notes: http://words.bombast.net/?p=208 – feel free to use any of it if you were considering expanding your tutorial to cover these topics. 🙂

  13. Using it since Squeeze(2 versions before Jessy, I mean Debian of course). Right now configuring it for a Dev1 server on an old Proliant I found for 60 euro. Maybe 20 users. Planning to go pro this year or the next one (providing web, mail, sync and pbx solutions for small to med enterprises).
    I checked the net for tutorials and this by far the best I could(can as well, by the way) find when I was beginning(actually not so long ago, maybe 3~4 years). Now looking it from time to time, those tutorials should be protected somehow as they are well-done, easily understandable and the feedback is amazing. What to say more, except than Im looking for a solution like Hadi above.

  14. I installed my first mail server in 2006 thanks to your tutorial. Now I’m going to upgrade to Jessie.
    The server has 400 users, it’s a school. It’s been working for 10 years.

  15. Hi, I finally upgraded to the new version from Lenny (I think, it was years ago). I had minor problems, but it is working ok now. Thank you.

  16. Robin Martens

    Hey there!
    I wanted to thank you for your absolutely great tutorial! I set up my own mail sever this week and it’s working great! I did run into some problem with receiving mail, but it turned out that I hadn’t read the instructions properly (setting mydestination wrongly).

    I also have two suggestions:
    1) I used PostgreSQL instead of MySQL and I noticed the changes were really minor. I’m sure people would like to see this added.
    2) I used Let’s Encrypt to create the certificate. It’s really easy to do if you already run a webserver and I’m sure it would make a great addition.

    I also ran into one other issue: for some reason, mail forwarding does not work properly. If I create a catch-all forward, incoming mail stops working completely and if I create a forward from one user to the other, the original user (the source) will stop receiving mails. Everything works fine as soon as I clear the virtual_alias table though. Any idea what could be going wrong.
    -Robin

    Content of /etc/postfix/main.cf:
    # See /usr/share/postfix/main.cf.dist for a commented, more complete version
    # Debian specific: Specifying a file name will cause the first
    # line of that file to be used as the name. The Debian default
    # is /etc/mailname.
    #myorigin = /etc/mailname
    smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
    biff = no
    # appending .domain is the MUA’s job.
    append_dot_mydomain = no
    # Uncomment the next line to generate “delayed mail” warnings
    #delay_warning_time = 4h
    readme_directory = no
    # TLS parameters
    smtpd_tls_cert_file = [REMOVED FOR PRIVACY]
    smtpd_tls_key_file = [REMOVED FOR PRIVACY]
    smtpd_use_tls=yes
    smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
    smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
    # See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
    # information on enabling SSL in the smtp client.
    smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
    myhostname = [REMOVED FOR PRIVACY]
    alias_maps = hash:/etc/aliases
    alias_database = hash:/etc/aliases
    myorigin = /etc/mailname
    mydestination = localhost
    relayhost =
    mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
    mailbox_size_limit = 0
    recipient_delimiter = +
    inet_interfaces = all
    virtual_mailbox_domains = pgsql:/etc/postfix/postgres-virtual-mailbox-domains.cf
    virtual_alias_maps = pgsql:/etc/postfix/postgres-virtual-alias-maps.cf,pgsql:/etc/postfix/postgres-email2email.cf
    virtual_mailbox_maps = pgsql:/etc/postfix/postgres-virtual-mailbox-maps.cf
    virtual_transport = lmtp:unix:private/dovecot-lmtp
    smtpd_sasl_type = dovecot
    smtpd_sasl_path = private/auth
    smtpd_sasl_auth_enable = yes
    smtpd_tls_security_level = may
    smtpd_tls_auth_only = yes
    smtpd_milters = unix:/spamass/spamass.sock
    milter_connect_macros = i j {daemon_name} v {if_name} _
    message_size_limit = 40960000

    Content of /etc/postfix/postgres-email2email.cf:
    user = mailuser
    password = [REMOVED FOR PRIVACY REASONS]
    hosts = 127.0.0.1
    dbname = mailserver
    query = SELECT email FROM virtual_users WHERE email=’%s’

    Content of /etc/postfix/postgres-virtual-alias-maps.cf:
    user = mailuser
    password = [REMOVED FOR PRIVACY REASONS]
    hosts = 127.0.0.1
    dbname = mailserver
    query = SELECT destination FROM virtual_aliases WHERE source=’%s’

  17. Pierrick Caillon

    Hi, thank you again for all these updates to your tutorial during the years. I think the first I have used was the Etch tutorial, or was it lenny, I can’t remember. Well I have only used it on a personal level for less the 10 users. It never let me down except when toying with encrypted server to server settings and accessing using Windows (Phone) 8 mail apps which cannot use plain text auth on encrypted channel.

  18. Thanks for the guide and especially the ansible configuration.

    It has been saving me a lot of time producing a script to deploy my own mail servers. Still in the tweaking/testing phase, but everything is going great.

  19. thanks, great tutorial, I got everything working great except roundcube logins, still debugging the errors but it looks like the TLS authentication is not configured properly. I will check back maybe something I missed

  20. Thanks, everything is working fine. It is a small mail server behind a DDNS service for personal use (1 user). Also I did some modifications not listed in this tutorial, those were no problem at all (e.g. adding relaying over gmail, to bypass spam filters for dynamic ips).

    Main purpose of the server is getting system messages from the linux machine, update notifications, monitoring health of raid system and so on. It has to be available from external, so e.g. letsencrypt can send notifications to the registered mail address for my TLS certificates.

  21. Ismael Ricardo Magaña Guerrero

    I’ve used this guide and my mail server is running, thank you.

  22. Ludovic BIARDEAU

    Thank you very much ! The first tutorial that worked, that I perfectly understood and that gave me the information I needed to debug my problems.

  23. Thanks for all the info. My server is now set up and running. Just one issue. This is my first experience with Roundcube and I am really struggling with installing plugins. I would like the calendar plugin but can just not seem to get it to work. Any suggestions or recommendations for a tutorial on installing additional Roundcube plugins?

  24. Thank you so much, Christoph!
    Before finding your tutorial, I had been trying for several days to install vexim/dovecot/squirrelmail (which I had used over years on my old server) on my new jessie server, to which I had already successfully moved all the web stuff. It was a nightmare trying to find the information I needed to make it work and I was on the brink on giving up the idea of running my own mail server and move to some commercial mail provider. Then I found your tutorial! I purged all the exim/vexim/dovecot/squirrelmail stuff that I had tried to configure and started from scratch with your tutorial. Not only did I get my mail server up and running in a few hours exactly as I needed it, but going through your notes was an eye opener for me! Every step is well explained and put into its context, so that now I not only have a mail server running, but I learned enough about the basic workings of its components. It’s no longer the “don’t-touch-it-blackbox” (as was my old mail server), but a system I feel competent to keep alive and adjust it to any future needs that I might come along… Once again, a BIG THANK YOU!

  25. Troy Dowling

    Thanks Christoph! My last email server was a solution I rolled myself. I spent an hour scraping it and rebuilding it following this guide. It’s better and more stable than ever.

    The one thing that caught me up, and had me scratching my head, was the following problem I ran into. Maybe this will save someone else undue effort:

    After you implement virtual users, the $mydestination variable in /etc/postfix/main.cf must be all of PRESENT, UNCOMMENTED, and POPULATED ONLY WITH ‘localhost’.

    I had my FQDN listed there as well and postfix would not deliver mail to /some/ virtual users and would to others.

    So thanks again for the great guide and the hard work.

  26. Yann Schlame

    And another big thanks! 🙂

    I’d been struggling with email servers ever since I started to work in IT. Running an email server was a necessity, but I never understood it and relied on mighty ugly and awful software. I was happy when it worked — and terrified when it didn’t.

    Ever since I found your tutorial for Debian Etch, running and configuring and upgrading email servers has been fun, joyful, relaxing. Now I know what happens, and why (most of the time anyway ;)), and can easily give support (which is hardly ever necessary because these things just work).

    Currently running my own email server for myself, friends, and customers, plus two servers for a small IT company with about a dozen users, nothing wild.

  27. Thanks Christoph! A really well done set of tutorials; very much appreciated.

    You mentioned an update to Ubuntu 14.04 (Trusty Tahr); that would be very welcome.

    Also, I’m curious about what I could omit to set postfix (which is installed by default) so it properly handles outbound (only) emails, e.g., from the logging / cron subsystems in Ubuntu 14.04.

    Again, thanks!

  28. A really well done set of tutorials; very much appreciated. Thank you, Christoph!

    You mentioned an update to Ubuntu 14.04 (Trusty Tahr); that would be very welcome.

    Also, I’m curious about what I could omit to set postfix (which is installed by default) so it properly handles outbound (only) emails, e.g., from the logging / cron subsystems in Ubuntu 14.04.

    Again, thanks!

    1. Christoph Haas

      Hi Don. Considering my current todo list it’s not likely that I will update the guide to support 14.04. Sorry.

      Regarding turning Postfix into an outgoing relay: that case is so simple that I suggest you read the Postfix documentation.

  29. This tutorial was so informative! Definitely a better experience than my first email server install.
    I successfully installed a mail server on Ubuntu 14.04LTS using this guide. I only had to use “update-rc.d spamassassin defaults” instead of “systemctl enable spamassassin” to enable spamassassin.
    I added DKIM and DMARC support, and my new family email server is working perfectly.

    Thanks again for this great tutorial!

  30. Michele Bendazzoli

    Thank you for your insightful advices. I successfully installed the mail server to serve three domains with a dozen of users. I arrange the material to use postgresql, nginx and dkim in a pine64 and i very satisfied with the result.
    A great tutorial.

  31. Deploying a mail server without making a mess is damn difficult.
    Internet is a jungle!
    This tutorial is just GOLD.
    Thanks!

  32. Shane Grey

    Thank you Christoph for putting together and maintaining this guide. The instructions are clear and easy to follow. The ansible playbook was an incredible time saver too!

    My use case was that I inherited a server that was not operational, but I had access to the file system. I needed to get the email accounts and all the mail on the server migrated to a new working server.

    Just getting to the point where I had the mailboxes working on a new domain, connecting remotely with a mail client or webmail took me about 20 hours of work so far.

    After trying a few other tutorials, your guide and playbook was finally the key to making it happen.

    Thanks for all the work you put into this.

    Shane

  33. Hey! Thank you for writing this up. Very easy to follow and I have a working mail server!

    I was wondering if anyone else is having trouble trying to send emails from an OS X application like mail. I can authenticate and receive mail fine. But I’m not sure why I cannot reply or send out emails. Could anyone point me in the right direction?

    1. Nick, I’m successfully sending and receiving email in Mail.app and on iOS Mail. You probably have to configure your outgoing SMTP server details. Setting that to your server’s domain with your email user’s credentials should do the trick. If not, re-check the SMTP authentication[1] or Postfix-to-Dovecot[2] sections to make sure that you’ve configured everything correctly, restart Postfix and Dovecot, and check the /var/log/mail.log to ensure that start-up was smooth.

      [1]: https://workaround.org/ispmail/jessie/relaying-smtp-authentication
      [2]: https://workaround.org/ispmail/jessie/postfix-dovecot

  34. Thank you for this guide. It worked perfectly. I am now administering my own mail server and have successfully emailed friends with Gmail addresses. On top of that, because I followed step-by-step (albeit with some tweaks to fit my own purposes), I feel confident that I know where to look if something is behaving differently than expected.

  35. Thanks again for your guide which I’ve worked through carefully resulting in a fully-fledged ISPMail mail server.
    The final tweak —since I wished to use it for several domains —was to set up Roundcube to open at example.com/webmail by adding Alias /webmail /var/lib/roundcube/ to /etc/roundcube/apache.conf and now everything works perfectly.
    Having read a post about it, I also tried postfixadmin —installed from the Debian main repository, as I’ve mentioned in previous comments but something went askew, so I finally opted to use ISPmail Admin for easy management of aliases & domains seeing that Version 0.9.4 implements SHA-256 hashes.
    A very nice guide which I’ve enjoyed reading and putting into practice.

  36. I fighted a lot with different tutorials but this was the only one from whcih I understood what, how and why.
    I would read so many guides like this.
    Thank you

  37. Aaron_Cygnus

    Hi! From Debian 6, searching from a lot time, i find this exelent web guide considering a golden grial, ist the best, i work with 6 subdomains, gateway, in and out rules by user, and always everythings is 100%, thanks a lot agains for a GREAT work. I always recommend the site. Regards from Cuba.

  38. Running this setup since Debian etch (upgraded to wheezy and will move to jessie soon). Works like a charm. Have 12 domains, 20 e-mail-accounts and about 80 aliases. I’m still using amavisd for virus-filtering and additionally added DKIM-signing and a few new database fields to be able to have ‘send_only’-accounts and to disable users or domains in case there is a spamming issue, etc. Also hacked a little email-admin in PHP, so I can update the database and DKIM-keys without having to connect to the database by hand. Maybe I’ll release it some day to the public. But I’ve seen here are plenty other email-admin-consoles, so there’s already a good choice of tools.
    Thx for your excellent how-to!

  39. Leigh (the frusrtated)

    Maybe it’s just me… maybe I am part retarded or something, but it seems there are also a lot of users out there that have been confused or frustrated about this guide as it is a bit too vague. I would like to think I know a fair bit about linux. I usually muck about with arch linux and I have built routers with 8 seperate connections to tor using privoxy and all sorts of cool things. …But this tutorial is just too vague. For instance you say in your guide to use letsencrypt for certs but still have the instructions underneath for startssl which are useless if you use letsencrypt. You go on about explaining the types of domains, but nowhere in the actual guide do you integrate that knowledge into actual practice! And even the part where you mention in the config about “seperator = .”, if I am not upgrading do I change that or not? your convention later on with “mailbox INBOX.Junk { auto = subscribe…” would suggest perhaps I do, but who knows if that’s even related if you have never used this software before. You presume too much of your reader sir… I am sure if you have experience with linux mail server software then you can follow this guide, but I challenge you sir to give this guide to a friend of yours who has very little knowledge of actual linux mail servers and get him to make it work just by reading and following your guide. I still cant even get dovecot setup correctly without errors like: Warning: Killed with signal 15 (by pid=1 uid=0 code=kill) every time and I have read your guide 5 times very carefully and on to about my 8th attempt at this server right from scratch. I have wasted days of going around in infuriating circles! Maybe it makes a difference that I am doing this as a virtual in hyper-v or something, I don’t know. Either way for a “easy to understand guide”, it really is kind of not. I have setup MS Exchange many times in my role as a Systems Engineer, so I know the basics and have even setup a redundant cluster with CAS and 3 mailbox servers with Exchange. This should not be that difficult, yet the way you have written it seems you have edited it too much and not proof checked your changes or something. It is frustrating as hell to say the least. I would love to learn more about this linux setup, but your guide in current state is just not for the new user regarding mail systems. Could just be me, but I kind of doubt it… I would love for it to be checked over and everything corrected so that it is something both informative and complete. There is nothing else like that online and it would benefit many people out there whereas at the moment it seems to only be a benefit to those who have already setup your earlier mail servers. Please go over it and review as this is the only guide of its kind but its just not enough in its current edited state.

    1. Christoph Haas

      Leigh, thanks for your feedback. Yes, honestly. In my opinion the guide works well for many people. And most of the problems arise from slips – like wrong copying/pasting. But let me answer your specific criticism:

      The section about certificates. I admit that it needs editing. That StartSSL stopped being a useful CA was a pretty surprising event. I had hoped that they turn the corner. But seeing major browsers removing it’s CA certificate was a clear sign. So I’ll edit that page and elaborate on using LetsEncrypt. Fair enough.

      The types of domains. You claim that I do not mention how to actually use the knowledge. I just checked the page “Types of email domains” to see if I may have left out something. But in fact I explain what “mydestination” is used for and that if you do not intend to use local domains you can for example set it to “localhost”. Is there anything specific you are missing?

      Regarding the seperator: if you are not upgrading – just use it as described. I’m trying hard to avoid changing anything when a new Debian version comes out. It’s really a hassle to migrate thousands of mail directories. So far you could just leave them as they are.

      Depending on your personal experience it may really be hard to follow the guide. Unfortunately the whole business of running your own mail server became a huge mess. Transport encryption. DKIM. SPF. Black lists. Scores/reputation. Spam fighting. It may require an experienced sysadmin to read through the matter and actually end up with a working mail server. I can assure that I’m writing all guides for every version mainly from scratch. I’m even using automated testing to make sure I don’t leave out anything.

      So I’ll edit the page about the certificates because it’s obviously misleading. Regarding other sections I would like if you re-read the page and tell me where you get stuck. I’m more than happy to make the guide more readable. I probably just can’t make it both an introduction to Linux and mail servers. And Linux is a beast if you are new to it.

  40. Joe rock Christoph! Super guide, thank you so much for your time and effort writing this. It helped me so much. One little # before a } somewhere in a default conf file, but no problem at all. Works on rPi3 out of the box.
    Loads of fun riding your motorcycle.
    Regards, Marc

  41. Way back I used to run a root server with just your average default qmail server. Then the Russians attacked, used qmail to gain root access to the machine and basically send spam for a week before I found out, because my host has null-routed all my IPs.

    I then consulted a multitude of tutorials on how to setup a mail server but this was in a time where it was a clusterf**k of processes all tightly interwoven and undebuggable. I didn’t understand a thing and there were few resources. The resources I had mostly used outdated configuration file formats that didn’t translate very well to the new format, or use very specific versions of this package and very specific versions of that package that wouldn’t work together if a different version was used. I’ve spend the better part of a month setting up and tearing down mail servers to test them, validate them and always find some other issue that broke some pipe. If it wasn’t spam, or handling IMAP folders, it’d be open relays or only using the first 12 characters of a password.

    Eventually I gave up and did the unthinkable; I’ve set up Plesk. It was nice since not only does it setup and configure email with virtual users for me, it also manages everything else with a pretty usable web interface. But now I’ve come to the conclusion that Plesks fatty fingers are the cause of some other headaches and also I want to virtualize my server environment to have more flexibility and security. So I’ve come full circle and setup a dedicated mail server VM.

    This time I didn’t even care to lookup any documentation, I just tried out lots of solutions like iRedMail. Most of them are borderline decent but unfortunately they all have Pro-features that cost, well, too much.

    Thankfully a friend of mine has heard about my plan and suggested this very tutorial, because it’s not just a “copy this text into that file” tutorial that uses partially outdated configuration files, but it actually decently explains what’s what, why, how and is completely based on the Jessie repo. No version bamboozling. I didn’t think that I’d ever understand the inner workings of mail delivery and retrieval but after reading through this tutorial I finally understand most or at least the relevant things.

    Great guide! Finally I am in control again.

  42. I followed both Debian tutorials on this site to get my mail server running on openSUSE.
    The main problem was that there is no spamassassin-miter package that works – but eventually I got everything working using AMavis.
    Even openDKIM and works.
    I now host my own websites and e-mail on a VPS for 9 Euro a month instead of paying for such services outsourced for ca. 150 Euro per domain.
    Thank you very much for all the effort to put this together so nicely.
    Kind Regards, Ralf

  43. Computerhirn

    Hi there,

    as I do not need postfix I fetch my private mails with getmail. In the end everything is fine, but the date of all e-mails is the date of fetching, not the real e-mail date.

    Does anybody know how to solve that?

    Thanks.

    Bye,

  44. Hey Christoph vielen Dank für dieses unvergleichliche Tutorial.
    Es ist leicht zu verstehen und birgt auch für manch erfahrenen Anwender interessante Informationen.

    Dennoch habe ich eine Frage die Du mir vielleicht beantworten kannst.
    Wir betreiben einen Mailserver für eine Community Seite welche wie üblich, Verifizierungsmails,
    Passowortrecoverys usw via php an die Mitglieder versendet. Dies geschieht über sendmail.
    Nun ist mir aufgefallen das diese Mails nicht in der Roundcube Übersicht zu finden sind, sondern
    mühselig über das Rootsystem via log Dateien zu prüfen sind. Siehst Du eine Möglichkeit diese gesendeten Mails in die Roundcube Übersicht zu integrieren und wenn ja würde es mich freuen wenn Du mir hierfür ein paar Tipps geben könntest. Vielleicht interessiert es ja andere Leser Deines Tutorials ebenfalls und ein Integration als solches wäre Interessant.

    Vielen Dank

  45. This tutorials are perfect… I started off with “ISPmail tutorial for Debian Wheezy” as I was using UBUNTU 12.04 LTS but fast realised its limitation ….wiped the server clean and installed Ubuntu Ubuntu 16.04.3 LTS and followed ( ISPmail guide for Debian Jessie) …. It took me about 3hrs as i discovered certain configuration were missing from master.cf so i had to go to “ISPmail tutorial for Debian Wheezy” … for example
    this line of code is missing in ( ISPmail guide for Debian Jessie) but is explained in (ISPmail tutorial for Debian Wheezy)

    dovcot unix – n n – – pipe
    flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/dovecot-lda -f ${sender} -d ${recipient}

    And few hacks like getting the junk folders to appear in dovecot i stored my 15-mailboxes.conf as follows

    mailbox Junk {
    auto = subscribe
    special_use = \Junk
    }
    mailbox Trash {
    auto = subscribe
    special_use = \Trash
    }

    *notice I removed the INBOX.

    Also I edited my spam-to-folder.sieve under spam section as follows

    require [“fileinto”,”mailbox”];

    if header :contains “X-Spam-Flag” “YES” {
    fileinto :create “Junk”;
    stop;
    }

    *notice I removed the INBOX.

    Under setting up dovecot , the latest tutorial does not speak about this part

    chmod u+w /var/vmail

    this command in “ISPmail tutorial for Debian Wheezy” is run immediately after this one

    chown -R vmail:vmail /var/vmail

    * run this command after the one above chmod u+w /var/vmail

    Otherwise I can confirm that these tutorial worked perfectly on my installed Ubuntu 16.04.3 LTS .

    Cheers

  46. Hello,

    I would like to thank you for this guide. It allowed me to script the entire install of this along with extras such as Fail2Ban, PSAD, OpenDKIM and even a script to add email users from the terminal. Before going through your guide I spent months of my spare time trying to get this working but your guide let me do this by hand in under two hours and the script takes under 10 minutes.

    Many Thanks

Leave a Reply

Your email address will not be published. Required fields are marked *

Scroll to Top