Kako implementirati zaupanja vreden certifikat SSL v lokalno razvojno okolje?

Kako je z dostopom do lokalnega razvojnega okolja prek HTTPS brez opozorila SSL?


Kot razvijalec boste morda morali delati na več projektih, odjemalcih in spletnih aplikacijah. Eden od pogojev za razvoj spletnih aplikacij je preizkušanje spletnih mest v brskalniku med razvojno fazo. Zelo velika možnost, da bo aplikacija, ki jo razvijate, zavarovana s SSL / TLS certifikatom v proizvodnem okolju.

Strinjam se?

Kaj pa, če morate preizkusiti določeno funkcionalnost, ki uporablja API tretjih oseb, ki zahteva, da je izvor https: //?

Lahko rečete samopodpisani cert in s tem ni nič narobe. Ali ste že poskusili dostopati do spletnega mesta, ki je implementirano v cert? Še vedno boste prejeli opozorilo o brskalniku Chrome in drugih brskalnikih.

Ali vidite Ni varen značko?

Ni dobro, kajne?

Najboljši način, da imate v razvojnem okolju veljavno potrdilo SSL, je upravljanje lastnega CA in njegovega možnega s mkcert. Enostaven za izvedbo, ki vam omogoča veljaven certifikat na naslednjem spletnem naslovu za lokalni razvoj.

  • example.com
  • * .primer.com
  • example.test
  • lokalni gostitelj
  • 127.0.0.1
  • :: 1

Mkcert lahko implementirate v macOS, Windows, CentOS, Ubuntu in druge OS, ki temeljijo na UNIX-u. Naslednji primer je iz Ubuntuja.

Najprej najprej namestimo orodja omrežne varnostne storitve, ki so na voljo za upravljanje baze podatkov potrdil.

apt-get update
apt-get namestite libnss3-orodja

Morda boste morali zagotoviti, da je piva nameščena na vašem strežniku. Če ne namestite z naslednjim ukazom.

apt-get namestite ovoj za linuxbrew

in končno namestite mkcert z uporabo piva.

pivo namestite mkcert

Opomba: če želite namestiti pivo, ne bi smeli biti root. in se namesti v /home/$USER/.linuxbrew/bin/mkcert

Kjer je US USER uporabniško ime, ki ste ga uporabili za namestitev

Zdaj je čas, da se lokalna CA namesti v sistem zaupanja.

[zaščitena e-pošta]: ~ / mkcert # /home/chandan/.linuxbrew/bin/mkcert -install
Uporaba lokalnega CA na "/root/.local/share/mkcert" ✨
Lokalni CA je zdaj nameščen v sistemski trgovini zaupanja! ⚡️

[zaščitena e-pošta]: ~ / mkcert #

In nato ustvarite certifikat za razvojno okolje. Recimo, da boste na spletnem mestu example.com imeli svoje spletno mesto, za pridobitev potrdila in datoteko s ključi pa lahko uporabite naslednji ukaz.

[zaščitena e-pošta]: ~ / mkcert # /home/chandan/.linuxbrew/bin/mkcert example.com
Uporaba lokalnega CA na "/root/.local/share/mkcert" ✨

Ustvaril novo potrdilo, veljavno za naslednja imena ��
– "example.com"

Potrdilo je na "./example.com.pem" in ključ na "./example.com-key.pem" ✅

[zaščitena e-pošta]: ~ / mkcert #

Super! Zdaj imam pripravljeno potrdilo in njegovo ključno datoteko pripravljeno za uporabo na mojih Nginx, Apache ali drugih spletnih strežnikih.

Vzemimo primer strežnika Apache HTTP. Če še ni, omogočite SSL modul in konfiguracijo.

[zaščitena e-pošta]: / etc / apache2 # a2enmod ssl
Če upoštevamo setenvif odvisnosti od ssl:
Modul setenvif je že omogočen
Glede na mime odvisnosti za ssl:
Mime modula je že omogočena
Glede na odvisnost socache_shmcb za ssl:
Omogočanje modula socache_shmcb.
Omogočanje modula ssl.
Glejte /usr/share/doc/apache2/README.Debian.gz o tem, kako konfigurirati SSL in ustvariti samopodpisana potrdila.
Če želite aktivirati novo konfiguracijo, morate zagnati:
systemctl znova zaženite apache2
[zaščitena e-pošta]: / etc / apache2 #

Kot je predlagano, znova zaženite Apache.

V tem trenutku, če netstat, boste opazili, da se je Apache začel z varnim vratom 443.

[zaščitena e-pošta]: / etc / apache2 # netstat -anlp | grep 443
tcp6 0 0 ::: 443 ::: * LISTEN 11616 / apache2
[zaščitena e-pošta]: / etc / apache2 #

Ampak, še nismo končali. Začelo se je s privzetim certnim certifikatom in to moramo nadomestiti.

Spremenite default-ssl.conf z datoteko vi in ​​naslednje nadomestite s potjo, na kateri ste ustvarili datoteko s ključi in certom.

SSLCertificateFile /root/mkcert/example.com.pem
SSLCertificateKeyFile /root/mkcert/example.com-key.pem

Preden začnete znova zagnati Apache, morate manipulirati tudi z datoteko gostiteljev za example.com, tako da se namesto v internetno odpravi na localhost. Ko končate, znova zaženite strežnik Apache HTTP in dostopajte do example.com – videli boste, da se streže zaupanja vredno potrdilo.

Zaključek

To je lahko priročno, če imate zaupno potrdilo v lokalnem okolju. Zgoraj je le primer example.com, vendar lahko storite za localhost in druge. Če za izdajo potrdila potrebujete zunanjega podpisnika, potem preverite, kako to brezplačno pridobiti.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map