This guide* assumes you have the following prerequisites:

  • Working Amazon EC2 instance
  • CentOS 7.4
  • SSH access
  • Familiarity with the use of SSH (via PuTTY, for example) and the linux command line in general.

It aims to complete the following:

  • Setup Centos 7.4 with latest updates
  • Install & secure Virtualmin/Webmin admin panel
  • Install PHP versions 5.6 and 7.1
  • Setup a number of virtual sites on the server with LetsEncrypt SSL certificates.
  • Configure Dovecot & Postfix to securely accept and send email.

The steps here have been tested succesfully on an Amazon t2.micro instance, however the low memory of these instances requires some services to be temporarily disabled to complete parts of the installation. These issues are not present on instances with more than 1GB of memory.

To aid copy-pasting commands you can find/replace these values as appropriate:

Your Servers IP:
Your FQDN:
Root password: yourrootpassword
Keyfile name: sitename_key

*This isn't really a complete guide yet. It's a loose collection of notes and reminders I made for myself to aide the process of setting a basic server up. Some instructions may not be in the right order, there can be typos, things could explode etc. You will need to adjust commands to suit your setup. This is not a copy-paste-go guide. I don't provide any support with these instruction and your mileage may vary. Master3395, this means you.