Adgang til Node-RED
- Åbn din browser og gå til:
https://<SERVER_IP> - En SSL-advarsel i browseren er forventet (selvsigneret certifikat)
- Godkendelse er påkrævet (Basic Auth-popup)
- Godkendelsesmetode: HTTP Basic Auth
- Legitimationsoplysninger gemmes sikkert i:
/root/.cloudzy-creds
Vigtige filer og mapper
- Hovedinstallationsmappen er
/root/node-red. - Docker-orkestrationsfilen er
/root/node-red/docker-compose.yml. - Vedvarende Node-RED-data gemmes i
/var/lib/docker/volumes/node-red_node-red-data/_data. - Nginx-konfigurationsfilen findes på
/etc/nginx/sites-available/node-red. - Legitimationsoplysninger til grundlæggende godkendelse gemmes i
/etc/nginx/auth/node-red.htpasswd. - TLS-certifikater gemmes i
/etc/nginx/ssl.
Service-håndtering
Tjek containerstatus:
docker ps
Se logs:
docker compose -f /root/node-red/docker-compose.yml logs -f
Genstart Node-RED:
docker compose -f /root/node-red/docker-compose.yml restart
Genstart Nginx:
systemctl restart nginx
Node-RED Admin-bruger (alternativ til Basic Auth)
Node-RED har sit eget interne godkendelsessystem, som kan erstatte HTTP Basic Auth.
1. Find sted settings.js
Hovedkonfigurationsfilen ligger inde i Node-RED Docker-volumenet: /var/lib/docker/volumes/node-red_node-red-data/_data/settings.js
2. Aktivér adminAuth
Åbn settings.js og fjern kommentering af (eller tilføj) adminAuth sektionen. Den bør se nogenlunde sådan ud:
adminAuth: {
type: "credentials",
users: [
{
username: "admin",
password: "<HASHED_PASSWORD>",
permissions: "*"
}]
},
3. Generér et password-hash
Du kan generere hash'et inde fra Node-RED-containeren:
docker exec -it node-red-node-red-1 node-red admin hash-pw
Du bliver bedt om at indtaste din adgangskode i klartekst.
Kopiér det resulterende hash og indsæt det som password værdi i settings.js.
4. Genstart Node-RED
Efter redigering settings.js:
docker compose -f /root/node-red/docker-compose.yml restart
5. Deaktiver HTTP Basic Auth i Nginx (valgfrit)
Rediger Nginx-sitefilen: /etc/nginx/sites-available/node-red
Fjern eller kommenter disse linjer ud:
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/auth/node-red.htpasswd;
Genindlæs Nginx:
systemctl restart nginx
Aktivering af SSL med et domæne
1. Peg dit domæne mod serverens IP.
2. Rediger Nginx-config og erstat begge server_name <IP>; med dit domæne (<your-domain>) for både HTTP (port 80) og HTTPS (port 443) blokke:
vim /etc/nginx/sites-available/node-red
3. Installer Certbot:
apt install -y certbot python3-certbot-nginx
4. Kør følgende kommando for at generere et gyldigt Let’s Encrypt-certifikat:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
5. Erstat SSL-stier i Nginx-config:
vim /etc/apache2/sites-available/node-red
# Before:
# ssl_certificate /etc/nginx/ssl/fullchain.pem;
# ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
6. Genstart Nginx for at aktivere ændringerne:
systemctl restart nginx
7. Åbn din browser og gå til: https://yourdomain.com