Aggiornamento del sistema
Mi collego al server ed eseguo i seguenti comandi per aggiornare il sistema, riavviando se necessario:
apt update
apt upgrade
shutdown -r nowApertura porte del server
Verifico quali porte siano aperte nel server ed, eventualmente, apro quelle necessarie al www (porta 80) ed alla connessione sicura ssl (porta 443):
ufw status numbered
ufw allow 80
ufw allow 443Installazione Nginx
Sempre dalla console ssh del server:
apt install nginxConfigurazione di una landing page
Elimino la configurazione di default ed inserisco la mia landing-page all’interno della cartella /var/www/start:
mv /var/www/html /var/www/start
mv /var/www/start/index-nginx-debian.html /var/www/start/index.html
rm /etc/nginx/sites-available/default
rm /etc/nginx/sites-enabled/defaultCreo il server della landing page creando il relativo file:
touch /etc/nginx/sites-available/startEd inserendo il seguente codice:
server {
listen 80 ;
listen [::]:80 ;
root /var/www/start;
index index.html;
server_name massimo-fontana.net www.massimo-fontana.net ;
location / {
try_files $uri $uri/ =404;
}
}Abilito il server creando il relativo collegamento e ricarico quindi il webserver:
ln -s /etc/nginx/sites-available/start /etc/nginx/sites-enabled/
systemctl reload nginx.serviceCreazione di sotto domini
Allo stesso modo posso creare i vari sotto domini, ad esempio blog.max73.it:
mkdir /var/www/blog
touch /etc/nginx/sites-available/blogInserisco il seguente codice:
server {
listen 80 ;
listen [::]:80 ;
root /var/www/blog;
index index.html;
server_name blog.massimo-fontana.net ;
location / {
try_files $uri $uri/ =404;
}
}Abilito il server e ricarico quindi nginx:
ln -s /etc/nginx/sites-available/blog /etc/nginx/sites-enabled/
systemctl reload nginx.serviceAbilitazione della connessione sicura
apt install python3-certbot-nginx
certbot --nginxInserisco la email di Google, rispondo Yes per accettare i termini e le condizioni e No per l’iscrizione alla newsletter, quindi premo invio per certificare i domini creati con Nginx. Successivametne posso scegliere a quali domini rinnovare il certificato utilizzando il seguente comando:
certbot --nginxIl rinnovo automatico è garantito dal servizio di systemd:
systemctl status certbot.timer