Per configurare SSL/TLS con Nginx on CentOS, puoi seguire questi passaggi:
Passaggio 1: installa Nginx
Se non hai installato Nginx, esegui il seguente comando per installarlo:
sudo yum install nginx
Passaggio 2: installa OpenSSL
Se non hai installato OpenSSL, installalo utilizzando il seguente comando:
sudo yum install openssl
Passaggio 3: creare una directory per i file del certificato SSL
Crea una directory per archiviare i file del certificato SSL:
sudo mkdir /etc/nginx/ssl
Passaggio 4: generazione di certificati SSL/TLS autofirmati(facoltativo)
Se non si utilizzano certificati SSL di un'autorità di certificazione, è possibile generare certificati autofirmati con OpenSSL. Questo è utile per testare SSL/TLS in un ambiente di sviluppo. Per creare un certificato autofirmato, eseguire i seguenti comandi:
cd /etc/nginx/ssl
sudo openssl genrsa -out server.key 2048
sudo openssl req -new -key server.key -out server.csr
sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Passaggio 5: configurare Nginx per utilizzare SSL/TLS
Apri il Nginx file di configurazione per il sito Web che desideri proteggere:
sudo vi /etc/nginx/conf.d/your_domain.conf
Aggiungi le seguenti righe al file di configurazione per abilitare SSL:
server {
listen 80;
server_name your_domain.com www.your_domain.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name your_domain.com www.your_domain.com;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
# Additional SSL/TLS options can be added here(optional)
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
# Additional configurations(if needed)
location / {
# Reverse proxy configuration(if needed)
}
}
Passaggio 6: prova e riavvia Nginx
Controlla se la Nginx configurazione ha errori:
sudo nginx -t
Se non ci sono errori riavviare il Nginx servizio per applicare la nuova configurazione:
sudo systemctl restart nginx
Una volta completato, il tuo sito web sarà protetto con SSL/TLS. Si noti che l'utilizzo di certificati autofirmati comporterà l'avviso del browser sui certificati non attendibili. Per avere un certificato SSL/TLS attendibile, è necessario acquistare o ottenere un certificato gratuito da un'autorità di certificazione.