CDN dédié et renouvellement certificat HTTPS (API ?)
... / CDN dédié et renouvelleme...
BMPCreated with Sketch.BMPZIPCreated with Sketch.ZIPXLSCreated with Sketch.XLSTXTCreated with Sketch.TXTPPTCreated with Sketch.PPTPNGCreated with Sketch.PNGPDFCreated with Sketch.PDFJPGCreated with Sketch.JPGGIFCreated with Sketch.GIFDOCCreated with Sketch.DOC Error Created with Sketch.
question

CDN dédié et renouvellement certificat HTTPS (API ?)

Par
Cyrille37
Créé le 2019-10-12 12:54:46 (edited on 2024-09-04 11:37:10) dans CDN-old

bonjour,

Je ne trouve pas la bonne pratique pour fonctionner avec le certificat https automatiquement géré par le CDN ; effectivement, il faut aussi un certificat pour le backend.

Du coup pour le renouvellement automatique, quelle est la bonne pratique ?

Faut-il utiliser l'API pour désactiver (bypass) le CDN le temps de générer le certificat sur le backend ?

Merci de vos lumière,s
Cyrille.


3 réponses ( Latest reply on 2019-10-14 12:43:25 Par
Cyrille37
)

Je lis dans un https://community.ovhcloud.com/community/fr/faut-il-installer-le-cdn-sur-www-ou-sur-un-sous-domaine-specifique?id=community_question&sys_id=65403104e55286d02d4c0165b3e76680 thread qu'il utilise un certificat auto-signé côté backend, mais ça ne me semble pas correct car en cas de dépassement de quota du cdn ou peut être d'autre cas, le client arrivera directement sur le backend et le certificat auto-signé causera une erreur.

il y a quoi derrière le CDN?
pourquoi pas un certificat let's encrypt?

Le problème avec LetsEncrypt c'est qu'il doit joindre le serveur où sera installé le certificat. Donc lors de la génération (ou renouvellement) il y a échec car c'est le CDN qui répond à LetsEncrypt.
D'où ma question: Quelle est la bonne pratique ? Doit-on utiliser l'API pour désactiver (bypass) le CDN le temps de la génération/renouvellement ou y-a-t'il une pratique plus efficace ?

J'ai essayé le ByPass (déactivation du CDN) et le trafic passe toujours par le CDN. Normal, le CNAME n'a pas changé ;-)

J'en conclu qu'en mode ByPass ou OverQuota le trafic passe toujours par le CDN.
Un certificat auto-signé côté backend est donc fonctionnel (si le CDN accepte n'importe quel certificat).

> le trafic passe toujours par le CDN. Normal, le CNAME n'a pas changé ;-)

non, là tu doit confondre avec le TTL...

???

Mon CDN est désactivé (ByPass). Je vois bien les requêtes passer dans le log du CDN et côté serveur les requêtes sont bien là avec comme ip client une ip OVH. Le ByPass ne change pas le CNAME mais fait que les objets ne sont pas cachés, donc le CDN en mode ByPass transmet toutes les requêtes au Backend, sans cache ni protection.

ok je n'avais pas compris comme cela

J'ai effacé mes messages précédents qui disaient n'importe quoi.

Quand on désactive le CDN : mode ByPass, le CDN change le "A" de sa destination:
- CDN ByPass : domain.com => CNAME domain.com.web.cdn.anycast.me => CNAME domain.com.direct.cdn.anycast.me => A (ip du backend)
- CDN actif : domain.com => CNAME com.web.cdn.anycast.me => CNAME 46-105-199-217.any.cdn.anycast.me => A 46.105.199.217 (ip ovh cache)

Du coup je maintiens que le certificat auto-signé sur le backend ne va pas puisqu'en cas de dépassement de quota le CDN va passer en mode ByPass et du coup les clients vont arrivés sur le backend qui aura un certificat invalide.

Il me semble que l'on est donc obligé d'utiliser l'API OVH :
- pour mettre en bypass le CDN le temps de renouveler le certificat
- puis, on peut pousser (via API) le certificat du backend sur le CDN, ou laisser le CDN renouveler son ccertificat automatiquement

Y-aurait-il une autre méthode ?

Je ne trouve pas de solution "propre".

Passer le CDN en ByPass impact le DNS, donc un temps de propagation qui n'est pas maîtrisé : Combien de temps laisser entre l'activation du ByPass et la demande LetsEncrypt ?

J'ai eu des réponses comme quoi LetsEncrypt n'est pas impacté par la propagation DNS car il interroge les DNS authorité. Du coup on pourrait désactiver le CDN et faire la demande LetsEncrypt dans la foulée.
Reste à essayer ;-)

Les réponses sont actuellement désactivées pour cette question.