Checklist for Hosting ASP.NET Core Site in Linux VM

I have listed items with references which will help you in deploying your ASP.NET Core site from scratch in a fresh VM for production environment.

  • Install and Setup Supervisor — It is a tool which will help in the autostart of your site on server restart, otherwise, on server restart, you might need to manually start site.
  • Install and Setup Nginx — For Reverse Proxying to your .NET app
  • Install DotNet Core
  • Get a domain — Can get from GoDaddy or any other vendor.
  • After purchasing the domain, Map DNS pointing to your server
  • Setup and Install Lets Encrypt — To Obtain Free SSL Certification or if you have own certificate purchased you can also use it.
  • Enable Firewall to allow port 80, 443 — or any other port based on your requirement.
  • Enable https redirect in your Ngnix Configuration
  • After Hosting ensure you have enabled basic Security Headers for the site — Can test Using Security Headers site—
  • Can test your site for SEO if your site needs it —


Server Setup
You can get a cheap Digital Ocean Server for $5–$10 which is more than enough to run a simple site.
This site runs on same —

Enabling Remote Desktop — XRDP

Installing Ubuntu Mate OS
Usually, when you purchase Linux VM from Digital Ocean or any other Vendor you won't get OS. To install a lightweight Ubuntu Mate Linux OS

Supervisor, Nginx Configuration

Microsoft Official Docs

Nginx — In-Depth configurations

Setting up Firewall

Installing Putty in Windows

Transferring file from windows to Linux using Putty

Security Headers

Refer this for Unzip file in Ubuntu

Installing My SQL In Linux

The above-mentioned checklist is more than enough to host your ASP.NET Core site in a fresh Linux VM starting from Scratch.

For more such interesting ASP.NET Core related blogs, resources visit my site

Tech Enthusiast, Full Stack Software Engineer, Product Manager, Engineering Enterprise SaaS product

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store