Would I recommend self hosting websites and emails?

The TL:DR in this is NO!

I have self-hosted websites and emails since 2008, so going with a provider now would be weird. I started off hosting at home with business broadband – and that is your first hurdle. You cannot host websites and email servers on residential broadband. These are the reasons why;

You need a static public IP address – Residential Internet Service Providers (ISP) change your IP address from time to time – because we are running out of IP (v4) addresses, but that’s for another blog post!

Certain ports are blocked;

  • 80 and 443 – These are for websites
  • 25 and 110  – Unsecured email services
  • 465,  587 and 995 – Secure email services
  • 993 and 143 – IMAP email services

As some businesses have public web-facing servers – it means these are open for you to use.

So you have got business broadband, but now you have other hurdles. The first one is to set up a Linux Server, as Linux dominates the server industry. If you have gotten past the installation, you still need to configure and install these services;

  • Nginx and/or Apache2 – for web hosting
  • Certbot – for securing the website (that padlock thing in your browser)
  • PHP – so you can have dynamic websites.
  • MySql or MariaDB – for databases so you can save data like users, and products if it’s an e-commerce site plus many more uses.
  • Dovecot and Postfix  – sending and receiving emails.
  • SpamAssassin – so you can kill spam that stops spam email clogging your email addresses

On top of this, you need to know about DNS, reverse DNS, SPF, DMRC, and DKIM so that your emails don’t get flagged as spam by Microsoft and Google.

You have to keep on top of looking at MXtoolbox to see if your server ISN’T on a blacklist, you also have to harden your server with Fail2Ban as well as other software.

You ‘can’ install a web panel to automate a lot of these, there are free ones – but trust me after doing this since 2008, the free ones are only useful if you are learning, the industry standards are Plesk and CPanel. I prefer Plesk – it’s a bit more expensive but it comes with cool addons that I can’t live without – such as offsite backups, 24/7 monitoring, and email security to name a few.

So if you have got this far, you still have to update the server, make sure that you aren’t on blacklists, keep backups and if you are silly like me, you also host friends’ sites, make sure the server is on 24/7.

So – doing this at home I wouldn’t recommend whatsoever UNLESS you want to learn how the internet works, in its unforgiving glory – and your server isn’t part of your home network – as you are effectively letting hackers into your home.

The other option is to use a cloud provider such as Linode – even then they block the email ports, as they have had people spin up spam bots on their servers so you really have to prove that you NEED these services AND you know all the above.

So why am I still doing it even though I know the risks? Partly because I didn’t listen to the ‘DONT TRY THIS AT HOME’, partly because I did it four years professionally, and partly because I don’t want to go back to Gmail or Outlook, but mostly because it still looks cool to be able to say I host my own stuff!

If you want to learn, then do it, if you are wanting to save money, there are hidden costs, and even if you go down the web panel route – you still have to learn that too.

Just because I did this – doesn’t mean you can – I took the risk, and it paid off (after a LOT of trial and error), but if you take the risk, at best you learn how this stuff works, at worst you have an infected Server, a blocked IP address and you may have inadvertently caused more risk on your home network.