Nginx Proxy Manager è un’interfaccia facile da usare per la gestione dei reverse proxy. Semplifica il processo di instradamento del traffico verso diversi servizi, rendendolo accessibile anche a chi non ha conoscenze approfondite di networking. Fornendo un’interfaccia grafica (GUI) sopra Nginx, questo strumento consente di configurare e gestire rapidamente proxy host, certificati SSL e varie impostazioni avanzate, senza dover ricorrere a complesse operazioni da riga di comando.
L’installazione di Nginx Proxy Manager è semplice grazie a Docker. Di seguito una guida passo passo per avviarlo:
Docker e Docker Compose installati sul server cloud
Conoscenza di base dei comandi Docker
Crea una directory per Nginx Proxy Manager e accedi ad essa:
mkdir nginx-proxy-manager
cd nginx-proxy-manager
Crea un file docker-compose.yml con il seguente contenuto:
version: '3'
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: always
ports:
- '80:80'
- '81:81'
- '443:443'
environment:
DB_MYSQL_HOST: "db"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "npm"
DB_MYSQL_PASSWORD: "npm"
DB_MYSQL_NAME: "npm"
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
db:
image: 'mysql:5.7'
restart: always
environment:
MYSQL_ROOT_PASSWORD: 'npm'
MYSQL_DATABASE: 'npm'
MYSQL_USER: 'npm'
MYSQL_PASSWORD: 'npm'
volumes:
- ./data/mysql:/var/lib/mysql
Avvia i container:
docker-compose up -d
Accedi a Nginx Proxy Manager tramite l’indirizzo IP del server sulla porta 81 (ad esempio http://localhost:81).
Dopo l’installazione, procedi con la configurazione iniziale:
Accesso:
Apri il browser e vai su http://<ip-del-server>:81. Le credenziali predefinite sono:
Email: admin@example.com
Password: changeme
Modifica delle credenziali predefinite:
Aggiorna immediatamente email e password per mettere in sicurezza Nginx Proxy Manager.
Panoramica della dashboard:
La dashboard fornisce una panoramica dei proxy host, dei certificati SSL e delle altre configurazioni. Prenditi del tempo per familiarizzare con l’interfaccia.
Per esporre un servizio, è necessario configurare un nuovo proxy host:
Vai alla sezione “Proxy Hosts”
Clicca su “Add Proxy Host”
Nomi di dominio:
Inserisci i nomi di dominio da associare al servizio. È possibile aggiungerne più di uno separandoli con virgole.
Hostname/IP di destinazione e porta:
Inserisci l’indirizzo IP interno e il numero di porta del servizio da esporre.
Esempio: per un servizio web in esecuzione sulla porta 8080, inserisci 192.168.1.100 e 8080.
Opzioni:
Seleziona “Block Common Exploits” per aggiungere un livello di sicurezza
Abilita “Websockets Support” se il servizio lo richiede
SSL:
Puoi utilizzare un certificato SSL esistente oppure richiederne uno nuovo tramite Let’s Encrypt.
Salva:
Clicca su “Save” per completare la configurazione del proxy host.
I certificati SSL sono fondamentali per la sicurezza dei servizi. Nginx Proxy Manager rende il processo semplice:
Richiedere un nuovo certificato SSL:
Vai alla sezione “SSL Certificates”
Clicca su “Add SSL Certificate”
Seleziona “Let’s Encrypt” e inserisci i dettagli richiesti, inclusi email e nome di dominio
Rinnovo automatico:
Nginx Proxy Manager rinnova automaticamente i certificati Let’s Encrypt, garantendo la sicurezza continua dei servizi.
Certificati personalizzati:
Se disponi di un certificato SSL personalizzato, puoi caricarlo in questa sezione.
Nginx Proxy Manager offre diverse opzioni avanzate per ottimizzare la configurazione:
Liste di accesso (Access Lists):
Limita l’accesso ai servizi
Consenti o nega il traffico in base agli indirizzi IP
Host di reindirizzamento (Redirection Hosts):
Configura facilmente reindirizzamenti da un dominio a un altro
Stream Hosts:
Gestisci il traffico TCP/UDP, ad esempio per servizi SSH o FTP
Configurazione Nginx personalizzata:
Aggiungi direttive Nginx personalizzate se il servizio richiede configurazioni specifiche
Identifica il servizio
Determina l’indirizzo IP interno e la porta del servizio da esporre.
Crea un proxy host
Segui i passaggi descritti nella sezione “Configurazione di un nuovo proxy host”.
Abilita SSL
Richiedi un certificato SSL per il dominio associato al servizio.
Testa la configurazione
Accedi al servizio tramite il nome di dominio per verificare che tutto funzioni correttamente.
Monitora e regola
Controlla regolarmente le prestazioni del servizio e modifica le impostazioni se necessario.
Log:
Accedi ai log tramite la sezione “Logs”
I log includono informazioni dettagliate sulle richieste in ingresso, come indirizzi IP, percorsi delle richieste e stati di risposta
Monitoraggio:
Usa la dashboard per controllare lo stato dei proxy host e dei certificati SSL
Assicurati che i certificati SSL siano aggiornati e che tutti i servizi funzionino correttamente
Errori dei certificati SSL:
Verifica che il dominio punti correttamente all’IP del server
Controlla che le porte 80 e 443 siano aperte e accessibili
502 Bad Gateway:
Assicurati che il servizio esposto sia in esecuzione e accessibile internamente
Verifica di aver inserito correttamente IP interno e porta nelle impostazioni del proxy host
Timeout di connessione:
Controlla le impostazioni del firewall
Testa la connettività tra il server e il servizio
Nginx Proxy Manager semplifica notevolmente il processo di esposizione dei servizi, rendendolo uno strumento eccellente sia per principianti che per utenti esperti. Grazie alla sua interfaccia intuitiva e alle funzionalità avanzate, puoi configurare e gestire rapidamente i reverse proxy, proteggere i servizi con certificati SSL e risolvere eventuali problemi. Seguendo i passaggi descritti in questa guida, potrai gestire ed esporre i servizi in modo efficiente con Nginx Proxy Manager.