Mkcert: et værktøj til at oprette SSL-certifikater til lokal udvikling

aktiverende-SSL-HTTPS

I dag brugen af ​​SSL-certifikater på websteder er af største betydning, da disse giver brugeren et niveau af sikkerhed og tillid til det websted, der bruger dem, ud over det faktum, at Chrome i et par dage allerede har markeret og advaret brugere om websteder, der ikke bruger disse.

En I denne artikel vil vi drage fordel af et værktøj til at kunne installere SSL-certifikater lokalt på vores system.

Mkcert er et simpelt værktøj, der kan bruges til at fremstille pålidelige certifikater lokalt. Det kræver ingen konfiguration. Det er altid farligt eller umuligt at bruge egentlige certifikatmyndighedscertifikater til localhost eller 127.0.0.1. Selv brug af underskrevne certifikater anbefales stadig ikke, da de forårsager tillidsfejl.

mkcert giver os den bedste løsning på dette ved at administrere din egen CA. Dette opretter og installerer automatisk en lokal CA i roden af ​​systemet og genererer pålidelige certifikater lokalt.

I tilfælde af SSL-certifikater til websider kan du konsultere nogle andre gratis alternativer, såsom openSSL.

Requisitos

  • System konfigureret med Go 1.10+ og root-rettigheder.
  • Certifikatdatabaseværktøj (Certutil)

Gå installation

Go er et programmeringssprog til generelle formål som vi kan bygge en bred vifte af applikationer med. Go og dets værktøjssæt er tilgængelige i vores standardlager. Vi kan installere GO på Ubuntu 18.04 bare ved at køre denne kommando.

apt install golang

Y vi kan kontrollere installationen med:

go version

Nu vi kan oprette en fil i den følgende sti "/Etc/profile.d/goenv.sh" for hele miljøvariablen som følger:

nano /etc/profile.d/goenv.sh

Og indeni skal vi placere:

export GOROOT=/usr/lib/go

export GOPATH=$HOME/go

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

Nu skriver vi:

source /etc/profile.d/goenv.sh

Apache-installation

Det næste trin er at installere vores webserver og aktivere SSL at bruge disse udviklingstillidscertifikater lokalt. Vi kan installere apache ved hjælp af følgende kommando.

apt install apache2

systemctl enable apache2

ssystemctl start apache2

Certutil installation

Certutil Database Tool er et simpelt kommandolinjeprogram, der kan oprette og ændre certifikater og deres databaser.

Det kan bruges specifikt til at liste, generere, ændre eller slette certifikater. Det kan endda bruges til at oprette eller ændre adgangskoden, generere nye offentlige og private nøglepar.

For at installere det skal du bare skrive følgende kommando:

apt install libnss3-tools

Installation af Mkcert

mkcert

For at installere dette værktøj download bare koden fra GitHub, til dette behøver vi kun at skrive:

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 vi kompilerer værktøjet med:

lav [/ sourcecode]

Nu Vi kan kopiere denne mkcert binære fra installationsmappen til / usr / bin / mappen, der skal bruges på serverniveau.

cd mkcert-1.0.0/bin/

cp mkcert /usr/bin/

Endelig kan vi generere vores lokale certifikat med denne kommando:

mkcert -install

Dette oprettes og gemmes på stien /root/.local/share/mkcert

Ved normalt er CA-certifikatet og dets nøgle gemt i en applikationsdatamappe i brugerens "hjem" -mappe.

Placeringen kan også opnås ved hjælp af kommandoen mkcert -CAROOT.

mkcert -CAROOT

/root/.local/share/mkcert

Nu Vi kan bruge dette værktøj til at generere lokale udviklingstillidscertifikater efter behov:

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

Som rapporteret i denne kommandokørsel, lokalt genererede pålidelige certifikater gemmes i stien, hvorfra denne kommando køres.

Det er muligt at flytte disse certifikater, for eksempel:

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

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

Nu skal du ændre standard SSL-filen, der findes på /etc/apache2/sites-available/default-ssl.conf

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

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

Nu kan du aktivere SSL-modulet og genstarte Apache 2-tjenesten for at gøre disse ændringer effektive.

a2enmod ssl

a2ensite default-ssl.conf

systemctl reload apache2

systemctl restart apache2

Når dette er gjort, kan vi udføre browsertestene med et lokalt SSL-certifikat. Bare skriv https://localhost og de vil være i stand til at se, at browseren genkender det.


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.

  1.   Jose Pedro sagde han

    Lidt forklaret, du kan ikke forestille dig, hvad jeg skulle samle for at kunne installere det med forudsætningerne.
    Der var ingen menneskelig måde at installere apacheds på for at konfigurere resten.

  2.   Mikel sagde han

    Når du skriver: lav [/ sourcecode]

    Hvad snakker du om??? hvad skal jeg sætte i / sourcecode?

    Beklager ulejligheden.

    Hilsen.

  3.   Julian Laso sagde han

    I Ubuntu 20.04 fungerer det kun for Firefox, men ikke for chrom-baserede browsere: '(