VPS Setup
Installing Nginx on Ubuntu
The process of installing Nginx on Ubuntu includes the following steps:
- Deploying a VPS Ubuntu 24.04 server;
- Configuring the connection and interface for managing the server;
- Installing the .NET Core runtime or SDK;
- Installing the Nginx web server;
- Configuring Nginx and the autostart service;
- Testing.
Deploying a VPS Ubuntu 24.04 Server
Option 1 (recommended)
Deploy a VPS on your hosting provider. For a CMS deployment, a single-core VPS with 2 GB of RAM is sufficient. Next, configure a convenient connection method for server management. While many tools exist, we recommend Visual Studio Code as a universal, extensible environment for file management, terminal access, and code editing/debugging. Install it on your local workstation first.
After setup, open VS Code, navigate to Terminal → New Terminal, and establish your first SSH connection:
ssh [username]@[IP-or-hostname]
Enter your password when prompted. Now you can configure OpenSSH for more secure, password-less authentication using SSH keys.
Always update package lists before installing new software:
sudo apt update && sudo apt upgrade -y
Install OpenSSH server (if not pre-installed) to enable key-based authentication:
sudo apt install openssh-server
For detailed SSH configuration guides, see: Ubuntu SSH Setup Guide.
Option 2 (requires more resources)
If you prefer a graphical interface on Windows, you can set up XRDP with Xfce:
- Update packages:
sudo apt update - Allow RDP port through firewall:
sudo ufw allow 3389 - Install XRDP:
sudo apt install xrdp - Install Xorg XRDP backend:
sudo apt install xorgxrdp - Enable XRDP to start on boot:
sudo systemctl enable xrdp - Verify XRDP status:
sudo systemctl status xrdpStatus should show "active (running)".
- Install Xfce desktop environment:
sudo apt install xfce4 xfce4-terminal -y - Start XRDP service:
sudo systemctl start xrdp
To stop XRDP later: sudo systemctl stop xrdp
You can now connect to Ubuntu via Remote Desktop Protocol (RDP).
Connecting to Ubuntu Desktop from Windows
To connect via RDP, you'll need your Ubuntu account credentials and the server's IP address (provided in your hosting welcome email or control panel).
- Open Remote Desktop Connection: press Win + R, type
mstsc, and press Enter.
- Enter the server's IP address and click Connect.
- Enter your Ubuntu username and password, then click OK.
✅ Done! You are now connected to Ubuntu via Remote Desktop.
Installing .NET Core
Option A: Install the SDK (for development)
The .NET SDK includes everything needed to build and run .NET applications. Installing the SDK also includes the runtime—no separate installation required.
sudo apt update && sudo apt install -y dotnet-sdk-8.0
Option B: Install Runtime Only (for production)
The ASP.NET Core Runtime allows you to run applications built with .NET, but not develop them. This is lighter and suitable for deployment servers.
sudo apt update && sudo apt install -y aspnetcore-runtime-8.0
Verify installation:
dotnet --info
Installing Nginx
To install Nginx using apt on Debian/Ubuntu:
1. Standard Installation
Installs the Nginx version from your OS default repositories:
# Update package index
sudo apt update
# Install Nginx
sudo apt install nginx -y
2. Service Management
Manage Nginx using systemctl:
- Check status:
sudo systemctl status nginx - Start/Stop:
sudo systemctl start nginx/sudo systemctl stop nginx - Enable at boot:
sudo systemctl enable nginx - Reload config (zero downtime):
sudo systemctl reload nginx
3. Firewall Configuration (UFW)
Allow web traffic through the firewall:
- HTTP only (port 80):
sudo ufw allow 'Nginx HTTP' - HTTP + HTTPS (ports 80 & 443):
sudo ufw allow 'Nginx Full'
4. Verification
Visit http://your-server-ip in a browser. You should see the "Welcome to nginx!" default page.
Key File Locations
- Main config:
/etc/nginx/nginx.conf - Site configs:
/etc/nginx/sites-available/and/etc/nginx/sites-enabled/ - Web root:
/var/www/html/ - Logs:
/var/log/nginx/access.log,error.log
