VPN-software op een webhost installeren kan diensten herindelen, maar een onverwacht certificaat bewijst niet dat de Apache-bestanden zijn herschreven. Iets presenteerde dat certificaat aan uw browser, en de eerste taak is het te benoemen. Totdat de listener en de virtuele host zijn geïdentificeerd, is elke reparatie een gok die op de verkeerde laag wordt toegepast. De hele controle hieronder is alleen-lezen.

Niets wordt herstart, verwijderd of overschreven terwijl u de feiten verzamelt die de zaak bepalen.

Lees het certificaat dat de browser werkelijk kreeg

Noteer de hostnaam, het opgeloste adres per familie, de poort en de certificaatdetails waarover de browser klaagde. Een naam die zowel naar een A- als een AAAA-record verwijst, kan twee verschillende frontends bereiken, en slechts één daarvan is mogelijk de host waartoe u shelltoegang hebt. Een browser achter een proxy kan opnieuw een derde pad nemen. Raden welke van hen de waarschuwing veroorzaakte, verspilt de enige observatie die u hebt.

Reproduceer daarna de handshake vanaf een machine op hetzelfde pad, noem het adres expliciet en stuur de bedoelde servernaam zodat het antwoord de site weerspiegelt en niet de standaardhost.

openssl s_client -connect 198.51.100.37:443 -servername www.example.net </dev/null 2>/dev/null |
  openssl x509 -noout -subject -issuer -fingerprint -sha256 -ext subjectAltName

Vergelijk de alternatieve subjectnamen en de vingerafdruk met het certificaat dat u verwacht, niet met een bekende uitgever. Verbinden met een kaal adres zonder de servernaam kan een standaardcertificaat selecteren, dat er dan uitziet als het verkeerde bestand terwijl het in werkelijkheid de verkeerde vraag is.

Identificeer het proces dat aan die poort is gebonden

Op de host die de verbinding moet ontvangen, list u de listeners op en noteert u het bindadres, de adresfamilie en de proceseigenaar. Een dienst die aan het loopbackadres is gebonden, is niet hetzelfde als een dienst die aan alle interfaces is gebonden, en een containerpublicatie kan de openbare listener heel ergens anders plaatsen.

sudo ss -ltnp 'sport = :443'
sudo ss -ltnp | grep -E ':(443|943)\b'

Als TLS wordt beëindigd door een load balancer of een proxy ervoor, stop dan hier en inspecteer in plaats daarvan die frontend. De Apache-instantie erachter presenteert mogelijk nooit een certificaat aan een openbare browser, dus het aanpassen van de configuratie verandert niets van wat de browser ziet. De socketweergave en de externe handshake moeten hetzelfde pad beschrijven, en dat is wat deze vergelijking vaststelt.

Koppel de virtuele host vóór het bestand

Wanneer Apache de terminator is, vraag hem dan welke virtuele host wint voor dat adres en die naam. Het stuurcommando drukt de effectieve indeling af, inclusief de groep die bij elke socket hoort, de gedeclareerde servernamen en de host die als standaard wordt behandeld. Een certificaatbestand aanpassen zonder dat antwoord is hoe de verkeerde site uit een correct bestand wordt geserveerd.

sudo apachectl -S

De Apache SSL-FAQ legt uit hoe server name indication een certificaat selecteert. De HTTP Host-header arriveert na de handshake en kan niet met terugwerkende kracht veranderen wat al is gepresenteerd, dus een niet-overeenkomende of ontbrekende naam valt terug op de standaardhost.

Een benoemde virtuele host met een typefout in ServerAlias levert precies dit symptoom op, en dat geldt ook voor een tweede configuratiebestand dat eerst een catch-all-host laadt. Beide zijn zichtbaar in die indelingslijst.

Verifieer de correctie op elk pad dat u beweert

Herhaal na een goedgekeurde wijziging de hostnaamspecifieke controle voor elke adresfamilie en sluit af met de gewone validatie van de browser in plaats van een omzeilingsvlag. Bewaar een apart beheerpad voordat u gedeelde listenerinstellingen aanraakt, want een fout daar verwijdert de toegang die u zou gebruiken om het ongedaan te maken. Noteer daarna welke listener antwoordde, welke virtuele host overeenkwam en welk certificaat voor en na werd geserveerd.

Het verwijderen van een pakket kan de indeling veranderen en de oorspronkelijke mismatch onverklaard laten, en daarom overleeft dat verslag de reparatie.

Wat u wilt, is de bedoelde site op het bedoelde toegangspunt. Een ander certificaat nadat een niet-gerelateerde dienst is verdwenen, is niet dat resultaat, zelfs niet wanneer de browser ophoudt met klagen.

Gerelateerde artikelen