Fix: servercertifikat innehåller INTE ett ID som matchar servernamnet



Prova Vårt Instrument För Att Eliminera Problem

När du försöker konfigurera SSL på en server som är utformad för att köra Apache eller eventuellt en annan liknande webbhotellteknik kan det hända att du får ett fel som säger att servercertifikatet INTE innehåller ett ID som matchar servernamnet. Detta är tekniskt sett bara en varning och du kan teoretiskt arbeta dig runt det.



Det är en mycket bättre idé att göra lite felsökning för att få saker att fungera som vanligt igen. När du har matchat servernamnet och certifikatet behöver du inte göra om något av dessa steg nästa gång du uppdaterar systemet. Du kan behöva regenerera några saker om en enkel filredigering inte fixar saker, men när du har gjort det behöver du inte konfigurera filer längre.



Metod 1: Redigera httpd [dot] conf-filen

Börja med att titta igenom fil, som istället kan vara på en något annan plats om du kör Apache på Fedora, Red Hat eller CentOS. Debians och Ubuntu-servrar ska ha den på den här första adressen. Leta efter text som stavar ut servercertifikatet INTE innehåller ett ID som matchar servernamnets varningsmeddelande.



Du kanske upptäcker att det slänger ut 443 eller ett annat nummer efter varje del av IP-adressen men inga andra SSL-problem. I det här fallet kanske du inte har berättat för Apache om vilka portar du ska lyssna på. Springa
och hitta en rad som lyssnar på Lyssna 80. Lägg till Lyssna 443 eller något annat portnummer du kan behöva under det. När du har sparat och stängt filen kan du använda den för att starta om httpd-processen.

De som kör Ubuntu- eller Debianservrar kanske inte har den här filen eller så kan de tycka att den är helt tom, till skillnad från dem som använder vissa versioner av Fedora eller Red Hat Enterprise Linux. Använd i så fall
för att redigera den textfil som behövs för att lägga till portar att lyssna på.



I många fall borde detta ha rättat till problemet. Om inte, kontrollera sedan alla relevanta nätverksproblem innan du fortsätter för att inspektera certifikatsituationen.

Metod 2: Regenerera nya certifikat

Dessa varningsmeddelanden kan också komma om du har arbetat med utgångna certifikat som du själv signerat. Om du behöver regenerera dem, försök använda
och leta efter två rader märkta File och KeyFile. Dessa kommer att berätta var platsen för certifikatnyckelfilen är när du skapar ett SSL-certifikat.

Om du arbetar med ett professionellt undertecknande företag som tillhandahåller officiella World Wide Web-certifikat bör du följa de specifika instruktionerna från din licensorganisation. Annars måste du sudo openssl req -x509 -noder -dagar 365 -nyckel rsa: 2048 -keyout KeyFile -out-fil , ersätter KeyFile och File med texten som du kunde få ut av det tidigare kattkommandot. Du borde ha hittat platsen för två olika filer, som fungerar vid in- och utdata för certifikaten.

Om vi ​​antar att de var inaktuella, skulle det bara vara tillräckligt för att åtgärda felet, men du kan behöva starta om tjänsten innan den slutar kasta varningar mot dig.

Du kan också ta reda på mer om certifikaten som du har installerat för att hjälpa dig i felsökningen. För att se vilket namn som för närvarande finns på ditt certifikat för att säkerställa att det matchar kan du köra openssl s_client -showcerts -anslut $ {HOSTNAME}: 443 men du måste placera ditt faktiska värdnamn inom parentes. Byt ut siffran 443 om du har problem med en annan port.

Om du har flera certifikat installerade på samma enhet och serveras från samma IP-adress, måste du köra openssl s_client -showcerts -connect $ {IP}: 443 -servernamn $ {HOSTNAME} , ersätter IP med din faktiska IP och fyller i värdnamnet. Återigen kan du behöva ersätta 443 med en annan siffra för att matcha ditt specifika användningsfall.

Tänk på att du måste se till att rätt värdnamn anges som ett alias eller det vanliga namnet när CSR skapades i första hand.

3 minuter läst