Certificati SSL: differenze tra le versioni
| Riga 134: | Riga 134: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Importante, alla domanda sul '''Common Name''' specificare il NOME DEL DOMINIO (es <code>designbestmagazine.com</code>) | Importante, alla domanda sul '''Common Name''' specificare il NOME DEL DOMINIO (es <code>designbestmagazine.com</code>) | ||
=== Certificato ssl autofirmato === | |||
Per <u>generare un certificato autofirmato</u> | |||
<syntaxhighlight> | |||
sudo mkdir /etc/nginx/ssl | |||
sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt | |||
</syntaxhighlight > | |||
Alla domanda sul ''common name'' è necessario scrivere il nome della macchina sul dominio (lo stesso di a <code>/etc/hostname</code>). Il certificato generato vale solo 10 anni, cambiare il parametro days a piacimento<br/><br/> | |||
== Trovaprodotti == | == Trovaprodotti == | ||
Versione delle 15:24, 15 feb 2024
Certificati SSL
Esistono diversi tipi di certificati SSL, genericamente si possono suddividere in 3 tipologie
- DOMAIN VALIDATION
Validano il dominio. Non c'è nessuna identificazione dell'azienda e non sono consigliati per "scopi commerciali".
Sono la categoria più economica (~ 70€ all'anno per dominio).
- ORGANIZATION VALIDATION
Validano il dominio e identificano l'azienda. Sono molto più costosi (~ 225€ l'anno).
- EXTENDED ORGANIZATION VALIDATION
Come l'altro ma con molti servizi aggiuntivi.
Ognuno di questi può avere opzionalmente la caratteristica wildcard che comprende tutti i sottodomini (es. webmobili.it + tavoli.webmobili.it + notte.webmobili.it + cucine.webmobili.it ...).
I nostri consulenti SEO (InTarget) hanno asserito che Google non bada alla qualità del certificato ma solo alla sua presenza.
Apache
Per creare un VirtualHost con certificato autentico aggiungere un file dentro alla cartella /etc/apache2/sites-available con la configurazione personalizzata che utilizzi i certificati giusti.
Esempio pratico:
- Copiare i file del certificato (crt e key) + il certificato intermedio nella cartella
/etc/apache2/ssl/. N.B. Se si dispone del file .cer basta rinominare l'estensione in .crt - Unire certificato e certificato intermedio in un unico file con il comando
cat nomesito.com_ssl_certificate.crt nomesito.com_ssl_certificate_intermediate.crt >> nomesito.com_ssl_certificate_bundle.crt
Ricordarsi di mettere in /etc/apache2/ssl/ i tre file
nomesito.com_ssl_certificate.crtnomesito.com_private_key.keynomesito.com_ssl_certificate_bundle.crt
Il virtualhost aggiunge le direttive SSLEngine, SSLCertificateFile e SSLCertificateKeyFile.
È possibile configurare un redirect http => https direttamente dal virtualhost.
Esempio pratico:
#
# blog.designbest.com
#
<VirtualHost *:80>
ServerName blog.designbest.com
Redirect / https://blog.designbest.com/
</VirtualHost>
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin s.vincenzi@webmobili.it
ServerName blog.designbest.com
DirectoryIndex index.html index.htm index.php
DocumentRoot /var/www/blog.designbest.com/
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/blog.designbest.com/>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/designbest.com_ssl_certificate_bundle.crt
SSLCertificateKeyFile /etc/apache2/ssl/designbest.com_private_key.key
ErrorLog ${APACHE_LOG_DIR}/blog.designbest.com/error.log
CustomLog ${APACHE_LOG_DIR}/blog.designbest.com/access.log combined
</VirtualHost>
</IfModule>
Nginx
Per creare un VirtualHost con certificato ssl aggiungere un file dentro alla cartella /etc/nginx/sites-available con la configurazione personalizzata che utilizzi i certificati giusti.
Per renderlo disponibile creare un symlink dentro alla cartella /etc/nginx/sites-enabled e restartare nginx.
Esempio pratico:
- Copiare i file del certificato (crt e key) + il certificato intermedio nella cartella
/etc/nginx/ssl/. N.B. Se si dispone del file .cer basta rinominare l'estensione in .crt - Unire certificato e certificato intermedio in un unico file con il comando
cat nomesito.com_ssl_certificate.crt nomesito.com_ssl_certificate_intermediate.crt >> nomesito.com_ssl_certificate_bundle.crt
Ricordarsi di mettere in /etc/nginx/ssl/ i tre file
nomesito.com_ssl_certificate.crtnomesito.com_private_key.keynomesito.com_ssl_certificate_bundle.crt
Per il momento su MULAN c'è solo designbest.com .
wm4pr.com è settato ma non usato. In uso in Test su POCAHONTAS.
- Creare il virtual host
sudo touch /etc/nginx/sites-available/nomesito.com
sudo nano /etc/nginx/sites-available/nomesito.com
e scriverci dentro qualcosa come
server {
listen 443 http2;
ssl on;
ssl_certificate /etc/nginx/ssl/nomesito.com_ssl_certificate_bundle.crt;
ssl_certificate_key /etc/nginx/ssl/nomesito.com_ssl_certificate.key;
server_name nomesito.com;
location / {
proxy_pass http://127.0.0.1:80;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Port 443;
proxy_set_header Host $host;
}
}
- Pubblicare il virtual host su nginx
sudo ln -s /etc/nginx/sites-available/nomesito.com /etc/nginx/sites-enabled
sudo service nginx restart
Verificare la validità del certificato su siti come questo: SSL Certificate Checker
Richiesta CSR
Genera un file .csr e un file .key che sono la richiesta di certificato per il server in questione e la chiave privata.
openssl req -new -newkey rsa:2048 -nodes -keyout designbestmagazine.com_private_key.key -out designbestmagazine.com.csr
Importante, alla domanda sul Common Name specificare il NOME DEL DOMINIO (es designbestmagazine.com)
Certificato ssl autofirmato
Per generare un certificato autofirmato
sudo mkdir /etc/nginx/ssl
sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crtAlla domanda sul common name è necessario scrivere il nome della macchina sul dominio (lo stesso di a /etc/hostname). Il certificato generato vale solo 10 anni, cambiare il parametro days a piacimento
Trovaprodotti
E' stato acquistato il certificato per *.wm4pr.com di tipo domain validation da 1&1. Ricordo che 1&1 ci hanno intimato la creazione della mail hostmaster@wm4pr.com per le comunicazioni relative ai certificati. La posta si scarica dalla webmail di register.
I file (.cer , .pfx e .key) si trovano sul server ARIEL nel folder
D:\WM3Resources\SSL
Per settare il binding https in IIS:
aggiungere il binding, selezionare https e selezionare il certificato stando attenti a checkare Request Server Name Indication.
I nostri binding
Certificato SSL designbest
DESIGNBEST
- designbest.com
- www.designbest.com
DESIGNBEST-AREAPROGETTI
- projects.designbest.com
DESIGNBEST-COMMERCE
- shop.designbest.com
DESIGNBEST-COMMERCE-SYNC
- testcommerce.designbest.com
DESIGNBEST-IMAGES
- immagini.designbest.com
DESIGNBEST-MAGAZINE
- magazine.designbest.com
DESIGNBEST-RESTSERVICE
- ws.designbest.com
DESIGNBEST-STATISTICHE
- statistics.designbest.com
USO
- my.designbest.com
BLOG DESIGNBEST (MERIDA)
- blog.designbest.com (no Let's Encrypt, certbot lancia un errore che butta giù apache)
- promo.designbest.com (ora gestito con Let's Encrypt)
DESIGNBEST (MULAN)
- designbest.com
- www.designbest.com
Problema con file PFX
Nel maggio 2022 è capitato che il file del certificato designbest per Windows, il PFX scaricato dal portale di ionos fosse corrotto.
La soluzione è stata generarlo autonomamente a partire dai file certificate.cer , certificate_intermediate.cer e certificate.key.
Dalla macchina MERIDA , in una cartella con i tre file,
prima genero un bundle
cat designbest.com_ssl_certificate.cer designbest.com_ssl_certificate_intermediate.cer >> designbest.com_ssl_certificate_bundle.cer
Poi creo il file .pfx con openssl
openssl pkcs12 -export -name "*.designbest.com" -out designbest.com.pfx -inkey designbest.com_private_key.key -in designbest.com_ssl_certificate.crt -in designbest.com_ssl_certificate_bundle.crt
Specificando il Friendly Name (*.designbest.com) che apparirà su IIS e i file che devono essere inclusi.
Viene chiesta la password, usare sempre la stessa solita.
Certificato SSL webmobili
DESIGNBEST-IMAGES
- immagini.webmobili.it
WEBMOBILI-REPOSITORY
- repository.webmobili.it
BLOG DESIGNBEST (su Merida)
- www.webmobili.it
- webmobili.it
Certificato SSL wm4pr
TROVAPRODOTTI
- wm4pr.com
- www.wm4pr.com
- bo.wm4pr.com
- test.wm4pr.com (su JASMINE)
TROVAPRODOTTI-IMAGES
- imgs.wm4pr.com
Certificato SSL dbdemo47
Tutto Let'sEncrypt.
Ricordarsi di passare tutti i WebSites di JASMINE.
Il certificato deve essere messo anche sulla macchina POCAHONTAS.