Mkcert: uno strumento per creare certificati SSL per lo sviluppo locale

abilitazione-SSL-HTTPS

Al giorno d'oggi l'uso di certificati SSL sui siti web è della massima importanza, dato che questi forniscono all'utente un livello di sicurezza e confidenza sul sito che li utilizza, oltre al fatto che da qualche giorno Chrome ha già contrassegnato e avvisato gli utenti sui siti che non li utilizzano.

En In questo articolo, coglieremo l'occasione per conoscere uno strumento per poter installare i certificati SSL localmente sul nostro sistema.

Mkcert è un semplice strumento che può essere utilizzato per produrre localmente certificati affidabili. Non richiede alcuna configurazione. È sempre pericoloso o impossibile utilizzare i certificati effettivi dell'autorità di certificazione per localhost o 127.0.0.1. Anche l'uso di certificati firmati è ancora sconsigliato in quanto causano errori di fiducia.

mkcert ci fornisce la migliore soluzione a questo problema gestendo la tua CA. Questo creerà e installerà automaticamente una CA locale nella radice del sistema e genererà certificati attendibili in locale.

Nel caso dei certificati SSL per le pagine web, puoi consultare alcune altre alternative gratuite, come openSSL.

Requisiti

  • Sistema configurato con Go 1.10+ e privilegi di root.
  • Strumento database certificati (Certutil)

Vai all'installazione

Go è un linguaggio di programmazione generico con cui possiamo costruire un'ampia varietà di applicazioni. Go ei suoi toolkit sono disponibili nel nostro repository predefinito. Possiamo installare GO su Ubuntu 18.04 semplicemente eseguendo questo comando.

apt install golang

Y possiamo controllare l'installazione con:

go version

Ora possiamo creare un file nel seguente percorso "/Etc/profile.d/goenv.sh" per l'intera variabile d'ambiente come segue:

nano /etc/profile.d/goenv.sh

E all'interno dobbiamo posizionare:

export GOROOT=/usr/lib/go

export GOPATH=$HOME/go

export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

Adesso digitiamo:

source /etc/profile.d/goenv.sh

Installazione di Apache

Il prossimo passo è installare il nostro server web e abilitare SSL per utilizzare localmente questi certificati di attendibilità per lo sviluppo. Possiamo installare Apache usando il seguente comando.

apt install apache2

systemctl enable apache2

ssystemctl start apache2

Installazione di Certutil

Lo strumento di database Certutil è una semplice utilità della riga di comando che può creare e modificare certificati e relativi database.

Può essere utilizzato specificamente per elencare, generare, modificare o eliminare certificati. Può anche essere utilizzato per creare o modificare la password, generare nuove coppie di chiavi pubbliche e private.

Per installarlo, digita il seguente comando:

apt install libnss3-tools

Installazione di Mkcert

mkcert

Per installare questo strumento basta scaricare il codice da GitHub, per questo dobbiamo solo digitare:

wget https://github.com/FiloSottile/mkcert/archive/v1.0.0.tar.gz

tar -xvzf v1.0.0.tar.gz

cd mkcert-1.0.0/

Y compiliamo lo strumento con:

make [/ sourcecode]

Ora possiamo copiare questo binario mkcert dalla cartella di installazione di / usr / bin / la cartella da utilizzare a livello di server.

cd mkcert-1.0.0/bin/

cp mkcert /usr/bin/

Infine, possiamo generare il nostro certificato locale con questo comando:

mkcert -install

Questo viene creato e salvato nel percorso /root/.local/share/mkcert

da di solito il certificato CA e la relativa chiave sono archiviati in una cartella dei dati dell'applicazione nella cartella "home" dell'utente.

La posizione può essere ottenuta anche utilizzando il comando mkcert -CAROOT.

mkcert -CAROOT

/root/.local/share/mkcert

Ora Possiamo utilizzare questo strumento per generare certificati di fiducia per lo sviluppo locale secondo necessità:

mkcert example.com '*.example.org' myapp.dev localhost 127.0.0.1 ::1

Come riportato in questo comando eseguito, i certificati attendibili generati localmente vengono salvati nel percorso da cui viene eseguito questo comando.

È possibile spostare questi certificati, ad esempio:

cp /root/example.com+5.pem /etc/ssl/certs /

cp /root/example.com+5-key.pem /etc/ssl/private /

Ora è necessario modificare il file SSL predefinito che si trova in /etc/apache2/sites-disponibili/default-ssl.conf

SSLCertificateFile /etc/ssl/certs/example.com+5.pem

SSLCertificateKeyFile /etc/ssl/private/example.com+5-key.pem

Ora puoi abilitare il modulo SSL e riavviare il servizio Apache 2 per rendere effettive queste modifiche.

a2enmod ssl

a2ensite default-ssl.conf

systemctl reload apache2

systemctl restart apache2

Fatto ciò, possiamo effettuare i test di navigazione con un certificato SSL locale. Basta digitare https://localhost e potranno vedere che il browser lo riconosce.


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.

  1.   Jose Pedro suddetto

    Poco spiegato, non puoi immaginare cosa ho dovuto montare per poterlo installare con i prerequisiti.
    Non c'era un modo umano per installare apached per configurare il resto.

  2.   mikel suddetto

    Quando digiti: make [/ sourcecode]

    Di cosa stai parlando??? cosa mettere in / sourcecode?

    Ci dispiace per l'inconvenienza.

    Saluti.

  3.   giuliano lasso suddetto

    In Ubuntu 20.04 funziona solo per Firefox ma non per i browser basati su Chrome: '(