V dnešnej dobe použitie SSL certifikátov na webových stránkach je nanajvýš dôležité, vzhľadom na to, že tieto poskytujú používateľovi úroveň zabezpečenia a dôvery v stránky, ktoré ich používajú, navyše skutočnosť, že Chrome už niekoľko dní používateľov označil a varoval ich pred webmi, ktoré ich nepoužívajú.
En V tomto článku využijeme príležitosť a spoznáme nástroj, ktorý umožní lokálnu inštaláciu certifikátov SSL v našom systéme.
Mkcert je jednoduchý nástroj, ktorý sa dá použiť na miestnu výrobu dôveryhodných certifikátov. Nevyžaduje žiadnu konfiguráciu. Použiť skutočné certifikáty certifikačnej autority pre localhost alebo 127.0.0.1 je vždy nebezpečné alebo nemožné. Ani použitie podpísaných certifikátov sa stále neodporúča, pretože spôsobujú chyby dôvery.
mkcert poskytuje nám to najlepšie riešenie spravovaním vlastnej CA.. Týmto sa automaticky vytvorí a nainštaluje lokálna CA v koreňovom adresári systému a miestne sa vygenerujú dôveryhodné certifikáty.
V prípade certifikátov SSL pre webové stránky môžete vyhľadať niektoré ďalšie bezplatné alternatívy, napríklad openSSL.
Požiadavky
- Systém nakonfigurovaný s oprávneniami Go 1.10+ a root.
- Nástroj na databázu certifikátov (Certutil)
Prejdite na inštaláciu
Go je univerzálny programovací jazyk pomocou ktorých môžeme vytvoriť širokú škálu aplikácií. Go a jeho sady nástrojov sú k dispozícii v našom predvolenom úložisku. GO môžeme nainštalovať na Ubuntu 18.04 iba spustením tohto príkazu.
apt install golang
Y môžeme skontrolovať inštaláciu pomocou:
go version
Teraz môžeme vytvoriť súbor na nasledujúcej ceste „/Etc/profile.d/goenv.sh“ pre celú premennú prostredia takto:
nano /etc/profile.d/goenv.sh
A dovnútra musíme umiestniť:
export GOROOT=/usr/lib/go export GOPATH=$HOME/go export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
Teraz napíšeme:
source /etc/profile.d/goenv.sh
Inštalácia Apache
Ďalším krokom je inštalácia nášho webového servera a povolenie SSL použiť tieto vývojové certifikáty dôveryhodnosti lokálne. Apache môžeme nainštalovať pomocou nasledujúceho príkazu.
apt install apache2 systemctl enable apache2 ssystemctl start apache2
Inštalácia Certutilu
Databázový nástroj Certutil je jednoduchý nástroj príkazového riadku, ktorý umožňuje vytvárať a upravovať certifikáty a ich databázy.
Môže sa konkrétne použiť na zoznam, generovanie, úpravu alebo odstránenie certifikátov. Môže sa dokonca použiť na vytvorenie alebo zmenu hesla, na generovanie nových párov verejných a súkromných kľúčov.
Ak ju chcete nainštalovať, zadajte nasledujúci príkaz:
apt install libnss3-tools
Inštaluje sa Mkcert
Ak chcete nainštalovať tento nástroj stačí stiahnuť kód z GitHubu, preto musíme napísať iba:
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 zostavujeme nástroj s:
vytvoriť [/ zdrojový kód]
Teraz môžeme skopírovať tento binárny súbor mkcert z inštalačného priečinka / usr / bin / priečinok, ktorý sa má použiť na úrovni servera.
cd mkcert-1.0.0/bin/ cp mkcert /usr/bin/
Nakoniec môžeme náš lokálny certifikát vygenerovať pomocou tohto príkazu:
mkcert -install
Toto sa vytvorí a uloží do cesty /root/.local/share/mkcert
Podľa obvykle je certifikát CA a jeho kľúč uložený v priečinku s údajmi aplikácie v „domovskom“ priečinku používateľa.
Polohu je možné získať aj pomocou príkazu mkcert -CAROOT.
mkcert -CAROOT /root/.local/share/mkcert
Teraz Tento nástroj môžeme použiť podľa potreby na generovanie certifikátov dôveryhodnosti miestneho rozvoja:
mkcert example.com '*.example.org' myapp.dev localhost 127.0.0.1 ::1
Ako je uvedené v tomto spustení príkazu, lokálne generované dôveryhodné certifikáty sa ukladajú na cestu, z ktorej sa spúšťa tento príkaz.
Je možné presunúť tieto certifikáty, napríklad:
cp /root/example.com+5.pem /etc/ssl/certs / cp /root/example.com+5-key.pem /etc/ssl/private /
Teraz musíte upraviť predvolený súbor SSL umiestnený na /etc/apache2/sites-available/default-ssl.conf
SSLCertificateFile /etc/ssl/certs/example.com+5.pem SSLCertificateKeyFile /etc/ssl/private/example.com+5-key.pem
Teraz môžete povoliť modul SSL a reštartovať službu Apache 2, aby boli tieto zmeny účinné.
a2enmod ssl a2ensite default-ssl.conf systemctl reload apache2 systemctl restart apache2
Akonáhle je to hotové, môžeme vykonať testy prehliadania s miestnym certifikátom SSL. Stačí napísať https://localhost a uvidia, že to prehliadač rozpoznáva.
Trochu vysvetlené, neviete si predstaviť, čo som musel zostaviť, aby som to dokázal nainštalovať s predpokladmi.
Neexistoval žiadny ľudský spôsob, ako nainštalovať apache, aby sa nakonfiguroval zvyšok.
Keď píšete: make [/ sourcecode]
O čom to rozprávaš??? čo vložiť / zdrojový kód?
Ospravedlňujem sa za nepríjemnosť.
S pozdravom.
V Ubuntu 20.04 funguje iba pre Firefox, ale nie pre prehliadače založené na chróme: '(