Setup Nginx
Login and User Setup
SSH into Your Machine: Use an SSH client to log into your server.
ssh your_user@your_server_ip
Update System Packages
Frist, ensure that all packages are up to date. This can prevent security vulnerabilities.
sudo apt update && sudo apt upgrade && sudo apt autoremove
Install Monitoring and Web Server Tools
Install Glances: An advanced system monitor for Linux.
sudo apt install glances
Install Nginx: A high-performance web server and a reverse proxy, often used for load balancing.
sudo apt install nginx
Configure UFW Firewall for Nginx: Make sure Nginx can receive HTTP and HTTPS traffic.
sudo ufw allow 'Nginx HTTP'
sudo ufw allow 'Nginx HTTPS'
Set Up Nginx Configuration
Remove Existing Nginx Configuration:
sudo rm -rf /etc/nginx/nginx.conf
Edit New Configuration: Use a text editor like nano to create a new configuration file.
sudo nano /etc/nginx/nginx.conf
Replace the contents with your load balancer configuration. You can use the Example Nginx config as a starting point.
Modify RPC/LCD/gRPC server entries and domain names as required.
Save and exit the editor (
CTRL + X
, thenY
to confirm, andEnter
to save).
Test Nginx Configuration: Ensures your syntax is correct.
sudo nginx -t
Enable and Start Nginx: This will make sure Nginx starts on boot and starts running immediately.
sudo systemctl enable nginx
sudo systemctl start nginx
Secure with SSL/HTTPS
Install Certbot: This tool automates obtaining free SSL/TLS certificates from Let's Encrypt.
sudo apt-get install certbot python3-certbot-nginx
Obtain the SSL Certificate for your domain:
sudo certbot --nginx -d your_domain.com
Finally, you can add a cronjob to crontab to enable auto-newing of the certificates:
crontab -e
0 12 * * * /usr/bin/certbot renew --quiet
Last updated
Was this helpful?