0box & 0dns provider

setup nginx & SSL/TLS on 0box & 0dns provider server

Create Route53 Records by following way -

As there is one server which have 0box, 0dns, ipfs, graphnode and portainer in a network. To make each service accessible by secure link can be done in following way -

  1. Install nginx and certbot

sudo apt update
sudo apt install nginx certbot python3-certbot-nginx -y
nginx -t
  1. Replace the /etc/nginx/site-available/default file content with below file. Replace the dns name as per your requirement -

limit_req_zone $binary_remote_addr zone=mylimit:10m rate=30000r/s;

server {

        server_name ipfs.temp.zus.network;
        location / {
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_pass http://localhost:5001/;
                proxy_set_header Connection $http_connection;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
        }
}

server {

        server_name portainer.temp.zus.network;
        location / {
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_pass http://localhost:9000/;
                proxy_set_header Connection $http_connection;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
        }
}

server {

        server_name 0box.temp.zus.network;

        proxy_read_timeout 300;
        proxy_connect_timeout 300;
        proxy_send_timeout 300; 

        location / {
        # limit_req zone=mylimit;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_pass http://localhost:9082/;
        }
}


server {

        server_name graphnode.temp.zus.network;
        location / {
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_pass http://localhost:8000/;
        }
        location /deploy/ {
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_pass http://localhost:8020/;
        }
        location /status/ {
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_pass http://localhost:8030/;
        }
        location /grafana/ {
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_pass http://localhost:8040/;
        }
}

server {

	server_name temp.zus.network;

	location / {
	# limit_req zone=mylimit;
			proxy_set_header Host $host;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_pass http://localhost:9091/;
	}

	location /dns/ {
		proxy_set_header Host $host;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_pass http://localhost:9091/;
	}
}

Below command will generate certificate -

sudo certbot --nginx -d temp.zus.network -d 0box.temp.zus.network -d graphnode.temp.zus.network -d ipfs.temp.zus.network -d portainer.temp.zus.network

Last updated