Skip to main content

Docs

Why this repository?

To help others (beginners like me) to build secure digitalocean droplets effectively.

Useful Notes

  1. I prefer Ubuntu OS for droplets so you'll find shell commands accordingly.
  2. I've mentioned several references available on internet which are/were useful to me.
  3. I've mostly specified -y option on installation commands which don't prompt me to confirm
  4. If you are unsure about any command how to use it, then always execute it with --help or -h. e.g. certbot --help
  5. Installed services can be found under /etc/init.d directory and service can be restarted using /etc/init.d/sendmail restart

Summary of basics

Sr. #Step
1.Web Server (Apache/Nginx)
2.Server Script (PHP 7.2)
3.Database (MariaDB)
4.Firewall, Security & non-default SSH port
5.Server timezone
6.SSL certificate (LetsEncrypt)
7.Swap memory
8.sFTP (VSFTPD)
9.SMTP (SendGrid)
10.HTTP2
11.MySQL Optimization
12.PHP-FPM Optimization
13.Miscellaneous
14.GIT

Detailed information on basics

Before installation of any packages, it is recommended to update your system repositories:

apt update

It is also recommended to upgrade your packages at regular intervals and restart droplets:

apt upgrade -y