GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare Nginx con Let's Encrypt su RHEL 8

La popolarità di Nginx non è solo legata al suo essere un'applicazione software web open source, ma anche al suo adattamento come server modulare e ad alte prestazioni. Questi attributi lo rendono un candidato ideale per un ruolo di server Web, bilanciamento del carico o proxy inverso.

Il ruolo di Nginx come server web lo rende utilizzabile tramite la porta 80 e la sua directory principale per la gestione dei file web è /usr/share/nginx/html/ in RHEL 8 Linux .

[ Potrebbe piacerti anche:Come sincronizzare automaticamente due server Web in Linux ]

Installa Nginx in RHEL 8

Per installare Nginx sul tuo RHEL 8 sistema, è necessario disporre dell'accesso come root o dei privilegi di Sudoer. Il passaggio successivo consiste nell'eseguire un controllo degli aggiornamenti di sistema sul sistema.

$ sudo yum update

Successivamente, puoi procedere ed eseguire il seguente comando per installare Nginx applicazione software web.

$ sudo yum install nginx

Il passaggio successivo è abilitare e avviare il servizio firewalld in modo che la porta 80 (HTTP ) e porta 443 (HTTPS ) sono accessibili a Nginx .

$ sudo firewall-cmd --permanent --add-port={80/tcp,443/tcp}
$ sudo firewall-cmd --reload 

Ora dobbiamo abilitare e avviare Nginx in modo che venga eseguito automaticamente anche dopo l'avvio del sistema.

$ sudo systemctl enable nginx
$ sudo systemctl start nginx 

Ora controlla Nginx stato per vedere se è in esecuzione.

$ sudo systemctl status nginx

Ora che hai Nginx installato, abilitato e funzionante, dobbiamo capire come usarlo per ospitare pagine web. Innanzitutto, visita il seguente URL per assicurarti che la pagina predefinita di Nginx venga caricata.

http://YOUR-IP-ADDRESS
OR
http://localhost 

Ospitare un sito Web con Nginx in RHEL

Per configurare Nginx per fornire le funzionalità di base del server web, dovrai fare riferimento/modificare il file /etc/nginx/nginx.conf .

$ sudo nano /etc/nginx/nginx.conf

Questo file ti dà un'idea di come dovrebbe apparire un blocco server Nginx di base.

Ha anche una configurazione commentata per un TLS server abilitato come illustrato di seguito.

Ad esempio, se abbiamo due nomi di dominio (ad es. linuxshelltips.com e linuxshelltips.net ) che devono servire file web tramite questo Nginx server, creeremo i blocchi di server associati nel modo seguente.

Creazione di blocchi server Nginx

 server {
    server_name linuxshelltips.com;
    root /var/www/dlinuxshelltips.com/;
    access_log /var/log/nginx/linuxshelltips.com/access.log;
    error_log /var/log/nginx/linuxshelltips.com/error.log;
    
  }

   server {
    server_name linuxshelltips.net;
    root /var/www/dlinuxshelltips.net/;
    access_log /var/log/nginx/linuxshelltips.net/access.log;
    error_log /var/log/nginx/linuxshelltips.net/error.log;
    
  }

Assicurati che esistano anche le directory menzionate che contengono i file web accessibili per i due nomi di dominio.

$ sudo mkdir -p /var/www/linuxshelltips.com
$ sudo mkdir -p /var/www/linuxshelltips.net

Inoltre, crea le directory di registro.

$ sudo mkdir /var/log/nginx/linuxshelltips.com/
$ sudo mkdir /var/log/nginx/linuxshelltips.net/

Crea alcuni dati Web di esempio da visualizzare tramite ciascuno di questi nomi di dominio:

$ sudo nano /var/www/linuxshelltips.com/index.html

Aggiungi le seguenti righe a index.html file.

<!DOCTYPE html>
<html>

<head>
  <title>LinuxShellTips.com</title>
</head>

<body>

  <h1>LinuxShellTips.com</h1>
   <p>I am a Paragraph</p>

</body>
</html>

Quindi, apri il secondo index.html pagina.

$ sudo nano /var/www/linuxshelltips.net/index.html

Aggiungi le seguenti righe a index.html file.

<!DOCTYPE html>
<html>

<head>
  <title>LinuxShellTips.net</title>
</head>

<body>

  <h1>LinuxShellTips.net</h1>
   <p>I am a Paragraph</p>

</body>
</html>

Il passaggio finale è riavviare Nginx.

$ sudo systemctl restart nginx

Con Nginx server web attivo e funzionante, possiamo accedere contemporaneamente a questi due domini dal nostro browser e quindi notare cosa succede.

http://linuxshelltips.com
http://linuxshelltips.net

Proteggi Nginx con Let's Encrypt su RHEL 8

Per proteggere i siti Web ospitati su Nginx con HTTPS , devi installare il Certbot strumento che ti offrirà un certificato SSL Let's Encrypt gratuito.

$ sudo dnf install epel-release 
$ sudo dnf install certbot python3-certbot-nginx mod_ssl

Una volta installato Certbot, puoi eseguire il comando seguente per ottenere i tuoi certificati SSL gratuiti per i tuoi domini.

$ sudo certbot --nginx -d linuxshelltips.com
$ sudo certbot --nginx -d linuxshelltips.net

I certificati acquisiti saranno raggiungibili all'interno di una sottodirectory intitolata al tuo dominio in /etc/letsencrypt/live directory.

Ora che i tuoi certificati sono installati, puoi verificare lo stato del certificato SSL del tuo dominio al seguente URL.

https://www.ssllabs.com/ssltest/analyze.html?d=linuxshelltips.com
https://www.ssllabs.com/ssltest/analyze.html?d=linuxshelltips.net

Nginx il server web ti offre la flessibilità di gestire più di un nome di dominio attraverso la configurazione della configurazione del blocco del server. È uno strumento che ti guiderà attraverso i dettagli dell'amministrazione del server web in modo semplice.


Linux
  1. Come installare phpMyAdmin con Nginx su CentOS 7 / RHEL 7

  2. Come installare phpMyAdmin con Nginx su CentOS 8 / RHEL 8

  3. Come installare Let's Encrypt su CentOS 8 con Nginx

  4. Come installare Let's Encrypt SSL su Ubuntu 18.04 con Nginx

  5. Come installare Let's Encrypt su Ubuntu 20.04 con Apache

Come installare Nginx con Let's Encrypt TLS/SSL su Ubuntu 20.04

Come installare Let's Encrypt SSL con Nginx su CentOS 7

Come installare Let's Encrypt SSL con Lighttpd su CentOS 7

Come installare Nginx con Let's Encrypt SSL su Fedora 35

Come installare Let's Encrypt SSL su Ubuntu con Apache

Come installare Nginx con Let's Encrypt SSL su Ubuntu 20.04 LTS