Discussion:
SSL probleem
(te oud om op te antwoorden)
Paul van der Vlis
2022-09-27 18:51:30 UTC
Permalink
Hoi,

Ik probeer een certificaat probleem op te lossen op een server met
Plesk, ik ben niet thuis in Plesk. Het probleem is dat het certificaat
niet in orde is, want er mist een naam.

Nu redirect de naam naar https, maar omdat het certificaat niet geldig
is mislukt de validatie.

Nu heb ik overal in Plesk gezocht om die redirect even tijdelijk uit te
zetten. Maar dat lukt niet, ik vind wel opties en heb die uitgezet, maar
hij redirect nog altijd naar https, en dan gaat de validatie fout.

Ik heb /etc/apache2 al afgezocht met "grep -i redirect /etc/apache2",
maar vind het daar ook niet. In de vhost staat geen redirect.

Er staat een proxy voor (nginx). Maar ook daar vind ik geen redirect.

Er staat geen .htaccess bestand in de documentroot.

Er is geen HSTS.

Hij schrijft netjes de authenticatie bestanden in de documentroot in de
map .well-known/acme-challenge/ , dus dat is het probleem niet.

Ik heb het testen ook in een andere browser geprobeerd, en met wget.

Iemand nog een idee?

Groet,
Paul
--
Paul van der Vlis Linux systeembeheer Groningen
https://vandervlis.nl
Roger
2022-09-28 04:33:57 UTC
Permalink
Hoi,
Ik probeer een certificaat probleem op te lossen op een server met Plesk, ik ben niet
thuis in Plesk. Het probleem is dat het certificaat niet in orde is, want er mist een naam.
Nu redirect de naam naar https, maar omdat het certificaat niet geldig is mislukt de
validatie.
Nu heb ik overal in Plesk gezocht om die redirect even tijdelijk uit te zetten. Maar dat
lukt niet, ik vind wel opties en heb die uitgezet, maar hij redirect nog altijd naar
https, en dan gaat de validatie fout.
Ik heb /etc/apache2 al afgezocht met "grep -i redirect /etc/apache2", maar vind het daar
ook niet.  In de vhost staat geen redirect.
Er staat een proxy voor (nginx). Maar ook daar vind ik geen redirect.
Er staat geen .htaccess bestand in de documentroot.
Er is geen HSTS.
Hij schrijft netjes de authenticatie bestanden in de documentroot in de map
.well-known/acme-challenge/ , dus dat is het probleem niet.
Ik heb het testen ook in een andere browser geprobeerd, en met wget.
Iemand nog een idee?
Redirects worden in Apache configuraties geconfigureerd met RewriteEngine,
RewriteCond, RewriteRule, etc. (mod_rewrite). Je moet dus zoeken op 'Rewrite'
i.p.v. 'redirect'.

Het is zaak om .well-known/acme-challenge/ uit te zonderen van HTTPS redirects.
Bij het voor de eerste keer aanmaken van een certificaat voor een naam is er
immers nog geen geldig certificaat. In mijn redirect-naar-HTTPS configuratie
staat daarom o.a.

RewriteCond %{REQUEST_URI} !^/\.well\-known/acme\-challenge/

Groeten,
-Roger
Paul van der Vlis
2022-09-28 08:25:59 UTC
Permalink
Post by Roger
Post by Paul van der Vlis
Hoi,
Ik probeer een certificaat probleem op te lossen op een server met
Plesk, ik ben niet thuis in Plesk. Het probleem is dat het certificaat
niet in orde is, want er mist een naam.
Nu redirect de naam naar https, maar omdat het certificaat niet geldig
is mislukt de validatie.
Nu heb ik overal in Plesk gezocht om die redirect even tijdelijk uit
te zetten. Maar dat lukt niet, ik vind wel opties en heb die uitgezet,
maar hij redirect nog altijd naar https, en dan gaat de validatie fout.
Ik heb /etc/apache2 al afgezocht met "grep -i redirect /etc/apache2",
maar vind het daar ook niet.  In de vhost staat geen redirect.
Er staat een proxy voor (nginx). Maar ook daar vind ik geen redirect.
Er staat geen .htaccess bestand in de documentroot.
Er is geen HSTS.
Hij schrijft netjes de authenticatie bestanden in de documentroot in
de map .well-known/acme-challenge/ , dus dat is het probleem niet.
Ik heb het testen ook in een andere browser geprobeerd, en met wget.
Iemand nog een idee?
Redirects worden in Apache configuraties geconfigureerd met RewriteEngine,
RewriteCond, RewriteRule, etc. (mod_rewrite). Je moet dus zoeken op 'Rewrite'
i.p.v. 'redirect'.
Je hebt gelijk, ik was daar ook al opgekomen nadat ik het bericht
schreef en had gezocht op "grep -i rewrite".

Als je de redirect aanzet in Plesk dan stopt hij zoiets in de vhost:
-------
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/\.well\-known/acme\-challenge/
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,QSA]
-------

En als je het uitzet dan verwijderd hij dit. Maar of het er nu in staat
of niet, hij redirect toch alles, ook wat in .well-known/acme-challenge
staat. Ook als ik het met een andere browser doe, of met wget.
Post by Roger
Het is zaak om .well-known/acme-challenge/ uit te zonderen van HTTPS redirects.
Bij het voor de eerste keer aanmaken van een certificaat voor een naam is er
immers nog geen geldig certificaat. In mijn redirect-naar-HTTPS configuratie
staat daarom o.a.
    RewriteCond %{REQUEST_URI} !^/\.well\-known/acme\-challenge/
Bedankt voor je reactie, maar ik ben bang dat er nog iets anders is wat
zorgt voor de redirect.

Groeten,
Paul
--
Paul van der Vlis Linux systeembeheer Groningen
https://vandervlis.nl
richard lucassen
2022-09-28 09:13:00 UTC
Permalink
On Wed, 28 Sep 2022 10:25:59 +0200
Post by Paul van der Vlis
Post by Roger
    RewriteCond %{REQUEST_URI} !^/\.well\-known/acme\-challenge/
Bedankt voor je reactie, maar ik ben bang dat er nog iets anders is
wat zorgt voor de redirect.
Is misschien HSTS aangezet soms? Dat geeft een browser de opdracht
om voor een jaar of 2 jaar (kun je instellen) geen http te accepteren
maar direct naar https te gaan. Dan is het dus niet de webserver die je
redirect naar https maar de browser zelf. Pak een andere browser die
daar nog nooit geweest is en kijk wat-ie doet. Eenmaal op https kun je
niet meer naar http als HSTS geactiveerd is. Je kunt het in de browser
wel ergens weggooien IIRC.
--
richard lucassen
http://contact.xaq.nl/
Paul van der Vlis
2022-09-28 09:55:05 UTC
Permalink
Post by richard lucassen
On Wed, 28 Sep 2022 10:25:59 +0200
Post by Paul van der Vlis
Post by Roger
    RewriteCond %{REQUEST_URI} !^/\.well\-known/acme\-challenge/
Bedankt voor je reactie, maar ik ben bang dat er nog iets anders is
wat zorgt voor de redirect.
Is misschien HSTS aangezet soms? Dat geeft een browser de opdracht
om voor een jaar of 2 jaar (kun je instellen) geen http te accepteren
maar direct naar https te gaan. Dan is het dus niet de webserver die je
redirect naar https maar de browser zelf. Pak een andere browser die
daar nog nooit geweest is en kijk wat-ie doet. Eenmaal op https kun je
niet meer naar http als HSTS geactiveerd is. Je kunt het in de browser
wel ergens weggooien IIRC.
Nee, er is geen HSTS en ik heb verschillende browsers geprobeerd.

Groet,
Paul
--
Paul van der Vlis Linux systeembeheer Groningen
https://vandervlis.nl
Roger
2022-09-28 10:46:47 UTC
Permalink
Post by Roger
Redirects worden in Apache configuraties geconfigureerd met RewriteEngine,
RewriteCond, RewriteRule, etc. (mod_rewrite). Je moet dus zoeken op 'Rewrite'
i.p.v. 'redirect'.
Je hebt gelijk, ik was daar ook al opgekomen nadat ik het bericht schreef en had gezocht
op "grep -i rewrite".
-------
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/\.well\-known/acme\-challenge/
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,QSA]
-------
Dat ziet er prima uit.
En als je het uitzet dan verwijderd hij dit. Maar of het er nu in staat of niet, hij
redirect toch alles, ook wat in .well-known/acme-challenge staat. Ook als ik het met een
andere browser doe, of met wget.
Zie je als om een HTTP URL vraagt ook twee regels in de Apache access log? (één
regel voor de HTTP GET met status 301 en één voor de HTTPS GET met status 200).

Zo ja, dan moet er ergens een Apache RewriteRule zijn die de redirect veroorzaakt.

Zo nee, dan zit de oorzaak ergens anders (misschien de nginx proxy? Zie bv.
https://phoenixnap.com/kb/redirect-http-to-https-nginx (het woord redirect komt
in dit voorbeeld niet voor)).

Groeten,
-Roger
Paul van der Vlis
2022-09-28 13:17:46 UTC
Permalink
Post by Roger
Post by Paul van der Vlis
Post by Roger
Redirects worden in Apache configuraties geconfigureerd met
RewriteEngine,
RewriteCond, RewriteRule, etc. (mod_rewrite). Je moet dus zoeken op 'Rewrite'
i.p.v. 'redirect'.
Je hebt gelijk, ik was daar ook al opgekomen nadat ik het bericht
schreef en had gezocht op "grep -i rewrite".
-------
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/\.well\-known/acme\-challenge/
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,QSA]
-------
Dat ziet er prima uit.
Post by Paul van der Vlis
En als je het uitzet dan verwijderd hij dit. Maar of het er nu in
staat of niet, hij redirect toch alles, ook wat in
.well-known/acme-challenge staat. Ook als ik het met een andere
browser doe, of met wget.
Zie je als om een HTTP URL vraagt ook twee regels in de Apache access
log? (één regel voor de HTTP GET met status 301 en één voor de HTTPS GET met
status 200).
Nee.
Post by Roger
Zo ja, dan moet er ergens een Apache RewriteRule zijn die de redirect veroorzaakt.
Zo nee, dan zit de oorzaak ergens anders (misschien de nginx proxy? Zie bv.
https://phoenixnap.com/kb/redirect-http-to-https-nginx (het woord
redirect komt in dit voorbeeld niet voor)).
Ik heb door jouw hulp de oplossing waarschijnlijk gevonden. Hij let hier
ook niet op de .well-known/acme-challenge/ . Er staat:
if ($scheme != "https") {
return 301 https://$host$request_uri;
}

Reuze bedankt!

Groeten,
Paul
--
Paul van der Vlis Linux systeembeheer Groningen
https://vandervlis.nl
Loading...