Recently I was working with another "consultant". I've deliberately put that in quotes because this person really lacked the skills to do the job he was doing, but for political reasons I had to refrain from pushing him out of the way and taking over. His lack of basic knowledge was frustrating, but I gritted my teeth and kept my comments friendly. It wasn't easy.
Anyway, part of what he was doing was configuring a router. I had to hold my breath as he explained that he always left the default password unchanged because "it's easy to remember". After he left, and with the permission of the owner, I changed that. It's just this funny idea I have that a router sitting on the Internet ought not to have a password that is known by a few million people and published on hundreds of websites. I'm funny like that.
We had other fun interactions while he was there, such as his continued attempts to ping 192.168.2.1 from a 192.168.1.0 subnet with no gateway, but that's techy stuff that you don't need to understand. Let's just say that he had no business doing ANYTHING with a router. Yet here he was, and I had to put up with it.
What I needed him to do was include some port forwarding. Specifically I needed him to forward TCP port 25 to a machine inside the LAN. Of course he had no idea what I meant and was staring rather stupidly at the packet filtering screens of the router setup. You don't have to understand what that means either, or why I needed it, or even why it was wrong for him to be looking at packet filtering. Just follow along and eventually I'll get to the point, I promise.
"Why do you need that?", he asked, still staring helplessly at the packet filtering stuff.
"Because the mail server is now behind your router and the outside world still needs to talk to it", I said. Honestly, I was not at all sarcastic. I was tempted, yes. But I was nice.
"Why on earth would he have a mail server?"
The "he" referred to was, of course, our mutual customer who kept looking nervously at me because he knew very well that I wanted to throttle this person.
Our router technician continued:
"I just have people pop their mail down from their ISP. It makes a lot more sense".
OK, we've established that I already had a low opinion of this person's technical qualifications. For a second or two, I wasn't quite sure how to answer. On the face of it, it's a naive question. Yet, as I thought about it, I realized that anyone who DOESN'T run their own mail server might very well wonder the same thing. So, I gave him a respectful and intelligent answer, and that answer, after this long lead in, is what the rest of this article is about.
Indeed, why would you run your own mail server? Obviously it must cost more, at least for small companies with just a handful of mail accounts. You have to buy hardware, and probably mail server software itself, and you have to maintain it, and feed it electricity. It seems like a dumb idea, right?
Nope. It's actually a very good idea, and here (at last) are some of the reasons why.
(I'm going to simplify some things here. The techies in the audience will get upset, but they still will understand that what I'm telling you is true)
When someone sends mail to firstname.lastname@example.org, their mail program either connects directly to wherever.com, or it passes it off to somebody else's mail server which then connects directly to wherever.com. If YOUR machine is wherever.com, it gets there right then. But if wherever.com is hosted by someone else, yes, it gets THERE immediately but that doesn't mean that YOU can get it.
Consider your typical large ISP like AOL. How many email messages do you think land at AOL's servers every second? An unimaginable number. Computers are fast, but they can only do what they can do: AOL may take minutes or sometimes even hours before it can process your mail and put it somewhere where you can get it.
Now consider your smaller ISP, the type that is more likely to be hosting mail for wherever.com. They are not AOL, so they don't get clobbered with the millions of emails AOL gets, but on the other hand, they don't have the resources of AOL either. Their computers aren't as big, aren't as fast, and they don't have as many of them either. So it still may be minutes or hours before you can get that email message.
If you are running the mail server for wherever.com, outside mail comes directly to you, with no waiting. It's usually ready for you to read in seconds, because you don't get millions of emails a day. If by chance you do, it will still be ready faster than it would if stored elsewhere (unless you have woefully undersized your hardware).
Now to satisfy the techies: if wherever.com is not immediately available, the sending machine will employ some sort of back-off algorithm where it will try again after ever increasing periods of time and eventually give up. This can also delay the receipt of your mail. If you have a "flaky" internet connection, that delay could cost you more delay time than you would get from the worst ISP.
Mail sent within your organization arrives at your mail server NOW. It's ready to be picked up and read by the recipient almost instantly. If you use an ISP, mail goes out to them first, and then comes back to you - eventually.
If you are trading emails with big attachments inside your company, you really appreciate this. You can wait a long time for an ISP to process a big attachment. Also, if your internet connection speed is less than ideal, that email can take extra time going out and back in, and affect other mail and browsing.
Not so if you run the server. Mail arrives at LAN speeds, is processed quickly, and that's the end of it. No waiting, no affect on Internet access at all.
Most ISP's charge you per mailbox, or for a group of 10 or less etc. The charge is pretty small nowadays, but it is an offsetting cost. With your own mail server, you can have as many accounts as you want, whenever you want.
When you control the server, you add and delete users yourself. Some ISP's let you do that now, but not all, and it isn't always instant even if they do let you. And again, they will limit you somewhere as to how many users you can have.
With your own server, it's easy to have "tony_law" be the same as "tony_lawrence" and the same as "boss". It's easy to make groups (addresses that send the mail to multiple people) too. Some ISPs are better than others in this regard, but none are like controlling it yourself.
For example, it's easy to have "tony_law"'s email also copied off to "email@example.com"- nice for people who want to get their work email at home, too.
You may need someone like me to do this kind of thing, but without your own server, you probably can't do it at all. With your own mail server, you can have email addresses that do special things, like:
I often use email to transfer data between computer programs, for example when a program on one machine needs to send data that a program running somewhere else needs. It's simple, reliable, and easy to do (if you have your own mail servers of course).
Some ISP's offer virus scanning and spam control nowadays, and most of them price it pretty reasonably. But when you run your own server, you get full control over this kind of thing.
Whenever mail is stored somewhere else, you have at least the possibility that someone else can look at it or copy it. That may not be important to you, but if it is, you definitely want your own server.
Really, this is what it's all about. It's like riding the train vs. driving your own car. Owning vs. renting. That kind of thing. If you own the mail server, you control it. You can set and more easily enforce usage policies, you can automatically add legalese to every outgoing message, you can automatically store every incoming message or scan them for trigger words and so on. You are in control.
For a mailserver that I like, see https://aplawrence.com/Kerio.
By the way, our helpless technician didn't seem to appreciate much of this. That's OK, it's a big world and there's room for all of us.
Got something to add? Send me email.
More Articles by Tony Lawrence © 2012-03-27 Tony Lawrence