GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare il certificato SSL su Apache per CentOS 7

Introduzione

I certificati SSL sono piccoli file di dati che certificano la proprietà di una chiave crittografica pubblica. Le autorità di certificazione (CA) garantiscono che la chiave appartenga a un'organizzazione, un server o un'altra entità elencata nel certificato.

Quando un utente, tramite il proprio browser, accede a un sito web certificato, le informazioni vengono crittografate con una chiave pubblica univoca. I dati possono essere decrittografati solo utilizzando una chiave privata univoca che si trova sul server host. Questo alto livello di crittografia impedisce tentativi non autorizzati di accedere alle informazioni.

In questo tutorial, scopri come installare un certificato SSL su CentOS 7.

Prerequisiti

  • Un utente con sudo privilegi
  • Accesso a una riga di comando (Ctrl-Alt-T)
  • Una macchina CentOS 7
  • Un nome di dominio valido con DNS puntato al server

Come ottenere un certificato SSL

Esistono diversi modi per ottenere i certificati:

  1. Utilizzo di un'autorità di certificazione automatizzata e gratuita come il progetto Let's Encrypt.
  2. Le autorità di certificazione commerciali forniscono certificati a pagamento (Comodo, DigiCert, GoDaddy)
  3. In alternativa, è possibile creare un certificato autofirmato. Questo tipo di certificato è utile a scopo di test o per l'utilizzo in un ambiente di sviluppo.

Se stai ancora valutando il tipo di certificato di cui hai bisogno o quale CA scegliere, abbiamo preparato una guida completa ai certificati SSL, alle chiavi private e alle CSR per assisterti nel processo.

Installa il certificato SSL con Let's Encrypt

Let's Encrypt è un'autorità di certificazione gratuita, aperta e automatizzata. Utilizza il certbot strumento software per amministrare i certificati automaticamente.

Certbot è uno strumento altamente automatizzato. Assicurati che la tua installazione di Apache sia valida e di avere un host virtuale configurato per i tuoi domini. Dovresti prima leggere il nostro tutorial su come installare Apache su CentOS 7 se hai bisogno di assistenza con la configurazione del firewall e degli host virtuali.

Installazione Certbot

1. Utilizzare il terminale di comando per installare EPEL repository e yum-utils :

sudo yum –y install epel-release yum-utils

2. Quindi, installa un modulo che supporti SSL per Apache:

sudo yum -y install mod_ssl

In questo esempio è già disponibile l'ultima versione del modulo.

3. Ora possiamo installare certbot per Apache:

sudo yum –y install python-certbot-apache

4. Al termine dell'installazione, è possibile avviare il processo per ottenere un certificato inserendo:

sudo certbot –apache –d yourdomain.com

In alternativa, avvia certbot digitando:

sudo certbot

5. Il cliente chiede di fornire un indirizzo e-mail e di leggere e accettare i Termini di servizio. Certbot elenca quindi i domini disponibili sul tuo server. Attiva HTTPS per domini specifici o per tutti lasciando vuoto il campo.

Il prompt successivo ti consente di forzare tutte le richieste per proteggere l'accesso HTTPS.

Una volta effettuate le tue scelte, il messaggio sul terminale conferma che hai abilitato la crittografia per il tuo dominio.

Rinnovo automatico del certificato

I certificati emessi da Let's Encrypt hanno una validità di 90 giorni. Il certbot rinnova comando controlla i certificati installati e prova a rinnovarli se mancano meno di 30 giorni dalla scadenza. Per automatizzare questo processo, crea un processo cron per eseguire periodicamente il comando.

Usa il tuo editor di testo preferito per definire la frequenza con cui eseguire il rinnovo comando:

sudo crontab -e

Inserisci questa riga e salva il crontab:

* */12 * * * /usr/bin/certbot renew >/dev/null 2>&1

Come installare il certificato SSL con Comodo

1. Il primo passaggio consiste nell'inviare una Richiesta di firma del certificato ad un'Autorità di Certificazione. La nostra guida dettagliata su come generare una richiesta di firma del certificato (CSR) con OpenSSL è un'ottima risorsa se hai bisogno di assistenza con questo processo.

2. Una volta che una CA certifica la tua richiesta, ricevi una copia del tuo certificato SSL. Ora puoi installare il certificato sul tuo server CentOS 7.

Questo esempio mostra come installare un certificato da un provider SSL a pagamento, Comodo.

3. Una volta che Comodo ha verificato la tua richiesta CSR, scarica i file SSL. Copiali (ComodoRSACA.crt ) e il certificato principale (tuodominio.crt ), nella directory del server Apache. La chiave privata generato durante il processo CSR (Certificate Signing Request) deve trovarsi sullo stesso server.

Configura host virtuali per SSL

Dopo aver certificato con successo il dominio e posizionato i file chiave sul server, il passaggio successivo sarà configurare gli host virtuali per visualizzare il certificato.

1. Accedi al file di configurazione SSL:

sudo nano /etc/httpd/conf.d/ssl.conf

2. Modifica il file di configurazione in modo che punti ai file corretti sul tuo server.

Decommenta le seguenti righe nella sezione e inserisci i percorsi dei file corretti:

  • DocumentRoot “/var/www/tuodominio.com”
  • Nomeserver tuodominio.com:443
  • Motore SSL su
  • File di certificazione SSL – Il percorso del file del certificato.
  • SSLCertificateKeyFile – Il percorso del file della chiave.
  • SSLCertificateChainFile – Il file del certificato COMODO intermedio.

3. Dopo aver apportato le modifiche necessarie, esci dal file (Ctrl+X) e premi y per salvare le modifiche.

4. Testare la configurazione di Apache prima di riavviare. Assicurati che la sintassi sia corretta digitando:

sudo apachectl configtest

5. Una volta che il sistema ha confermato che la sintassi è corretta, riavvia Apache:

sudo systemctl restart httpd

Ora hai configurato il tuo server Apache per utilizzare il certificato SSL.

Come creare un certificato SSL autofirmato

Un certificato autofirmato è utile per i test, negli ambienti di sviluppo e su una intranet.

1. Come con Let's Encrypt, il mod_ssl Il modulo Apache fornisce supporto per la crittografia SSL:

sudo yum –y install mod_ssl

2. Crea una nuova directory per memorizzare la chiave privata:

sudo mkdir /etc/ssl/privatekey

3. Limita l'accesso a quella directory solo all'utente root:

sudo chmod 700 /etc/ssl/privatekey

4. Genera un certificato autofirmato utilizzando questo comando OpenSSL:

sudo openssl req -x509 -new -newkey rsa:2048  -nodes -days 365 -keyout /etc/ssl/privatekey/ yourdomain.key -out /etc/ssl/certs/yourdomain.csr

Questa è una panoramica dettagliata degli elementi:

  • apressl – attiva il software OpenSSL
  • richiesto – indica che abbiamo bisogno di una CSR
  • -x509 – specifica di utilizzare la richiesta di firma X.509
  • -new -newkey – genera una nuova chiave
  • rsa:2048 – generare una chiave matematica RSA a 2048 bit
  • -nodi – no DES, ovvero non crittografare la chiave privata in un file PKCS#12
  • giorni 365 numero di giorni di validità del certificato
  • -keyout – indica il dominio per cui stai generando una chiave
  • -fuori – specifica il nome del file che contiene la CSR

5. Il sistema lancia un questionario da compilare.

Inserisci le tue informazioni nei campi disponibili:

  • Nome del Paese – usa un prefisso internazionale di 2 lettere
  • Stato – lo stato in cui è incorporato il proprietario del dominio
  • Località – la città in cui è incorporato il proprietario del dominio
  • Nome dell'organizzazione – un'entità proprietaria del dominio
  • Nome dell'unità organizzativa –il dipartimento o il gruppo della tua organizzazione che lavora con i certificati
  • Nome comune – il più delle volte, il nome di dominio completo (FQDN)
  • Indirizzo email – indirizzo email di contatto
  • Sfida la password – definisci una password opzionale per la tua coppia di chiavi

L'immagine rappresenta un esempio di questionario in CentOS 7.

6. Procedere con la configurazione dell'host virtuale per visualizzare il nuovo certificato. Il processo è identico ai passaggi descritti nel Capitolo 2, Configurazione di host virtuali per SSL.

7. Testare la configurazione di Apache prima di riavviare. Per assicurarti che la sintassi sia corretta, digita:

sudo apachectl configtest

8. Una volta che il sistema ha confermato che la sintassi è corretta, riavvia Apache:

sudo systemctl restart httpd

Ora hai configurato il tuo server Apache per utilizzare il tuo certificato SSL autofirmato e dovresti essere in grado di visitare il tuo sito con SSL abilitato.

Come verificare se un certificato SSL è valido?

Per verificare se un certificato SSL è valido puoi servizi disponibili pubblicamente, come SSL Server Test. Conferma lo stato del tuo certificato e verifica se tutti i dettagli sono corretti.

In alternativa, accedi al tuo sito web utilizzando https:// per vedere se il certificato SSL è visibile. Il lucchetto verde indica che è presente il livello aggiuntivo di crittografia.


Cent OS
  1. Come installare SSL su RHEL 8 / CentOS 8

  2. Come installare Apache Cassandra su CentOS 8

  3. Come installare Apache su CentOS 7

  4. Come installare Apache Kafka su CentOS 8

  5. CentOS / RHEL:come abilitare SSL per Apache

Come installare Apache CouchDB su CentOS 7

Come installare Apache ServiceMix su CentOS 7

Come installare Apache Cassandra in CentOS

Come installare elgg su CentOS 8

Come installare il certificato SSL gratuito per Apache su CentOS 8

Come installare il certificato SSL gratuito per Nginx su CentOS 8