Fejl – CyberPanel udsteder selv-signerede SSL certifikater

I denne artikel vil jeg fokusere på en fejl jeg oplevede ved CyberPanel, hvor den blev ved med at udstede selv-signerede SSL certifikater, så websiden ikke kunne tilgås.

Da jeg oprettede et nyt website på CyberPanel og installerede WordPress, blev jeg mødt af følgende fejl i browseren: NET::ERR_CERT_AUTHORITY_INVALID.

I browseren kan man at certfikatet var udstedt af Dis i stedet for Lets Encrypt, som ellers foregår automatisk i CyberPanel.

I administrationen for websiden i CyberPanel, fremgik det også at websiden havde et selvudstedt SSL certifikat:

For at tjekke om Lets Encrypt havde udstedt et certifikat gik jeg via terminalen til mappen med Lets Encrypt certifikater med følgende kode:

cd /etc/letsencrypt/live/apha.dk

Jeg kunne se at der i denne mappe var to filer: fullchain.pem og privkey.pem. Når jeg åbnede de to filer kunne jeg se at de begge indeholdte et Lets Encrypt certifikat.

Så det ser ud til at Lets Encrypt har udstedt et certifikat, men CyberPanel fastholder certifikatet fra Dis.

Efterfølgende gik jeg ind i CyberPanel Main Log File og her fandt jeg følgende fejlmeddelelser:

[12.08.2022_07-31-52] [Errno 2] No such file or directory: '/etc/letsencrypt/live/apha.dk/fullchain.pem'
[12.08.2022_07-38-28] Status Code: 200 for: http://www.apha.dk/.well-known/acme-challenge/apha.dk
[12.08.2022_07-38-28] Status Code: 200 for: http://apha.dk/.well-known/acme-challenge/apha.dk
[12.08.2022_07-38-30] /root/.acme.sh/acme.sh --issue -d apha.dk -d www.apha.dk --cert-file /etc/letsencrypt/live/apha.dk/cert.pem --key-file /etc/letsencrypt/live/apha.dk/privkey.pem --fullchain-file /etc/letsencrypt/live/apha.dk/fullchain.pem -w /usr/local/lsws/Example/html -k ec-256 --force --server letsencrypt
[12.08.2022_07-38-33] Failed to obtain SSL for: apha.dk and: www.apha.dk
[12.08.2022_07-38-33] Trying to obtain SSL for: apha.dk
[12.08.2022_07-38-34] Failed to obtain SSL, issuing self-signed SSL for: apha.dk
[12.08.2022_07-38-35] Self signed SSL issued for apha.dk.

Forslag fra CyberPanel forum

Når jeg har problemer med noget søger jeg ofte i et forum på nettet, i dette tilfælde i CyberPanel forummet. Der kan man ofte få hjælp fra andre, der har stået i samme situation.

Her henviste en af medlemmerne til denne artikel, der foreslår en løsning på samme problem. Det er en løsning hvor man bruger OpenLiteSpeed (OLS) Adminsystemet, som man kan tilgå på https://[IP-adresse]:7080. Du logger ind her med brugernavn “admin” og passwordet skal du få fra din server ved at skrive følgende kode:

sudo cat .litespeed_password

Når du er kommet der ind vælger du “Virtual hosts” og finder dit domæne. Tryk på SSL-fanen, og fjern så URL-adresserne der står på linjerne Private key file og Certificate file. Gem adresserne fordi du skal tilføje dem senere igen. Bagefter genstarter du serveren oppe i toppen.

Så foreslår de at man sletter de SSL certifikater, der allerede er genereret med følgende kode, hvor du erstatter “mydomain.com” med dit eget domæne. Jeg ville dog sørge for at tage en backup af dem først, fordi vær opmærksom på at du maksimalt kan hente et Lets Encrypt certifikat til en hjemmeside 5 gange på samme uge.

rm -f /etc/letsencrypt/live/mydomain.com/privkey.pem && rm -f /etc/letsencrypt/live/mydomain.com/fullchain.pem

Så henter du et nyt Lets Encrypt certifikat til domænet med følgende kode:

/root/.acme.sh/acme.sh --issue -d mydomain.com -d www.mydomain.com --cert-file /etc/letsencrypt/live/mydomain.com/cert.pem --key-file /etc/letsencrypt/live/mydomain.com/privkey.pem --fullchain-file /etc/letsencrypt/live/mydomain.com/fullchain.pem -w /usr/local/lsws/Example/html --force --debug

Du kan også i stedet bruge dette værktøj, hvor du bare indtaster domæne og så gør den resten:

sh <(curl https://raw.githubusercontent.com/josephgodwinkimani/cyberpanel-mods/main/selfsigned_fixer.sh || wget -O - https://raw.githubusercontent.com/josephgodwinkimani/cyberpanel-mods/main/selfsigned_fixer.sh)

Nu går du så tilbage til OLS admin og tilføjer de to linjer til Private key file og Certificate file igen, og genstarter serveren bagefter. Dette skulle meget gerne virke.

Hvad gør jeg hvis jeg ikke kan hente flere Lets Encrypt certifikater?

Hvis du har forsøgt at hente et certifikat til det samme domæne 5 gange, så bliver du blokeret fra at gøre det igen den samme uge. Derfor kan det være en god ide at gemme en backup, fordi så kan du bare bruge et af de gamle certifikater.

Men hvis du ikke har nogle gamle certifikater, så er der ikke andet at gøre end at vente til der er gået en uge.

Brug et andet gratis SSL certifikat

Jeg fik det ikke til at virke med det samme med ovenstående metode. Men for mig virkede noget andet. Jeg startede med at generere et andet gratis SSL certifikat på ZeroSSL. Her kan du gratis få certifikater til 3 domæner der virker i 3 måneder. Du skal bekræfte at du er ejer af domænet, fx. ved at tilføje en CNAME record i dine DNS indstillinger. Det var meget nemt.

Så gik jeg tilbage til CyberPanel og fandt hjemmesiden og trykkede på “Add SSL”. Her indtastede jeg indholdet i filen “certificate” i feltet “Paste your cert” så lavede jeg to linjeskift og tilføjede indholdet i “ca_bundle” i samme felt. Altså så indholdet af “certificate” og “ca_bundle” står i samme felt adskilt af to linjeskift. Indholdet af “private” sætter du ind i “Paste your key”. Du åbner alle filerne i notesblok, hvorefter du kan læse indholdet i filerne. Når det er tilføjet i felterne trykker du på Save, og så skulle det gerne virke.

Så gik jeg tilbage til SSL, så “Manage SSL” og fandt domænet og trykkede på “Issue SSL”. Så blev ZeroSSL certifikatet overskrevet med Lets Encrypt certifikatet, og så virkede det hele.

Det her virkede for mig, da CyberPanel blev ved med at udstede self-issued SSL certifikater på visse domæner. Sådan var det kun på nogle domæner. Jeg håber også det virker for dig. Hvis du har løst det på andre måder er du meget velkommen til at skrive løsningen i en kommentar nedenunder.

5 1 vote
Article Rating

Andreas Andersen

Forfatter og grundlægger af IT-blogger.dk, der har blogget om IT-emner siden 2012. Findes på Mastodon på @aphandersen@ansico.dk

You may also like...

Abonner
Giv besked ved
guest

0 Comments
mest stemt på
nyeste ældste
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x