Než budeme mluvit o chybě a jejím řešení, zde je moje nastavení OpenCA – je to offline certifikační úřad. tj. RA
(online registrační autorita, která zahrnuje RA &NODE) a CA
(offline certifikační autorita, která zahrnuje CA a NODE) je nainstalován na různých počítačích. To znamená, že RA a CA komunikují prostřednictvím metody Data Exchange, kterou provádí knihovna s názvem export-import.lib
. Například certifikát CA a jeho konfigurace lze exportovat z počítače CA a importovat do počítače RA. Pokud vše půjde dobře, pak by měla být data mezi CA a RA bez problémů vyměněna. Ale nestalo se, při výměně dat z CA do RA se mi zobrazila chyba „Can't call method get on a undefined value at export-import.lib“. Tento tutoriál vysvětlí, jak to opravit.
Níže je úplná chyba při provádění importu @ RA machine.
Error Code: 700 The compilation of the command cmdNodeDownloadCert failed. Can't call method "get" on an undefined value at /home/openra/lib/openca/functions/export-import.lib line 2225.
Ačkoli certifikát CA pod cestou:/home/openca/var/openca/crypto/cacerts/
a CRL pod /home/openca/var/openca/crypto/crls/
je importován správně, certifikát CA nebyl importován do databáze! Nejprve jsem tedy měl podezření, zda počítač CA exportoval data správně (myslím tím, zda byl certifikát CA exportován správně?) v ca-down
soubor tar.
ca-down je soubor tar používaný pro výměnu dat mezi RA a CA. Může to být jiný soubor ve vašem nastavení a stejný lze nakonfigurovat v node
konfigurační soubory.
Ověřte certifikát CA v souboru tar ca-down
jak je uvedeno níže:
tar -tvf /home/openca/var/openca/tmp/ca-down
Z výše uvedeného snímku obrazovky můžete pochopit, že certifikát CA byl exportován správně. Import se však nepodařilo aktualizovat v databázi.
Poté, co jsem strávil spoustu času, chápu, že OpenCA používá dva adresáře "upload"
&"download"
pod /home/openca/var/openca/log/
ke správě výměny dat. Překvapivě tyto dva adresáře chyběly a to byl důvod chyby – Nelze volat metodu na nedefinovanou hodnotu na export-import.lib.
Takže vše, co musím udělat, je vytvořit upload
a download
adresáře pod log
složku a poskytnout potřebná oprávnění pro webový server, aby do ní vytvořil soubor. A je to! Výměna dat mezi CA a RA probíhala hladce.