Enregistrement DNS de type CAA

Introduction

Défini en 2013 par la RFC6844, le CAA est un type d’enregistrement DNS qui permet aux propriétaires de sites de préciser quelles autorités de certification (CA) sont autorisées à émettre des certificats contenant leurs noms de domaine.

Quel est l’intérêt

Par défaut, chaque autorité de certification publique est autorisée à émettre des certificats pour tout nom de domaine dans le DNS public, à condition qu’elle valide le contrôle de ce nom de domaine.

L’enregistrement CAA offre aux détenteurs de domaines un moyen de réduire ce risque d’une émission de certificat non souhaitée en intégrant une étape de confirmation/refus aux autorités de certification dans leurs processus d’émission de certificat.

L’intérêt d’un tel système prend tout son sens suite à l’essor des certificats générés « à la volée ». Ces types de certificat sont émis sans aucune vérification sur le titulaire du domaine. Il est aisé de demander un certificat pour n’importe quel domaine.

L’enregistrement CAA permet donc au propriétaire d’un nom de domaine de spécifier les autorités de certification qu’il autorise à émettre un certificat.

Notez que l’utilisation de DNSSEC pour authentifier les enregistrements CAA est fortement recommandée mais non requise (RFC 6844, section 4.1). Du point de vue sécurité, vous devez absolument utiliser le DNSSEC pour obtenir une requête/réponse authentique des CA à votre serveur DNS.

Enfin, cet enregistrement n’est pas encore obligatoire, mais je vous encourage à le mettre en oeuvre avant de personnes malveillantes n’utilisent cet oubli à leur avantage.

Principe de fonctionnement

Quand une autorité de certification reçoit une demande de certificat, elle vérifie le domaine afin de déterminer si un enregistrement de type CAA existe. Si un enregistrement existe et que la CA est bien autorisée, alors l’autorité de certification génère le certificat. Si l’enregistrement CAA spécifie une CA différente, alors la génération du certificat est refusée. A ce jour, si l’enregistrement CAA n’existe pas, alors la CA est autorisée à générer le certificat.

Structure d’un enregistrement CAA

Chaque enregistrement CAA est constitué d’un octet « flag » et d’une paire étiquette-valeur appelée une propriété.

Plusieurs propriétés peuvent être associées au même nom de domaine en publiant plusieurs enregistrements CAA à ce nom de domaine.

Un seul « flag » est défini: le « issuer critical » est représenté par le bit le plus significatif de l’octet. S’il est activé (c’est-à-dire que l’entier résultant est égal ou supérieur à 128) l’autorité de certification qui n’est pas à même de comprendre ou de mettre en œuvre l’étiquette de cet enregistrement doit refuser de délivrer un certificat pour le domaine.

Outre le « flag », trois mots clés sont définis:

  • issue : autorise une autorité (via son nom de domaine spécifié dans le champ « value ») à délivrer des certificats pour le domaine sur lequel l’enregistrement pointe
  • issuewild : est similaire à issue et vise les émissions de certificats wildcard
  • iodef : indique un moyen pour les autorités de signaler une demande de certificat ou un souci avec celle-ci

Pour interdire l’émission d’un certificat, il faut spécifier « ; » comme valeur pour le mot clé issue ou issuewild.

Exemple de mise en oeuvre

Qui prend en charge l’enregistrement CAA ?

Si vous voulez publier un enregistrement CAA, le logiciel (ou le fournisseur) de DNS de votre domaine doit prendre en charge le CAA.
Le site https://sslmate.com/caa/support vous indique quels logiciels et fournisseurs DNS prennent en charge la CAA. En France, les 2 principaux fournisseurs, Gandi et OVH, supportent le CAA.

Mise en oeuvre

Pour illustrer notre exemple, nous allons utiliser le domaine example.com et l’autorité de certification Let’s Encrypt.
Le nom de domaine d’identification de Let’s Encrypt pour la CAA est letsencrypt.org.

Si votre fournisseur est répertorié, vous pouvez utiliser le générateur d’enregistrements CAA de sslmate pour générer un ensemble d’enregistrements CAA répertoriant les CA que vous souhaitez autoriser.

Voici les captures :

Enfin, vous publiez votre politique CAA en ajoutez les enregistrements CAA suivants au DNS de votre domaine. Votre DNS doit être hébergé par un service qui prend en charge la CAA.

Plusieurs formats sont rencontrés :
– générique (utilisé par Google Cloud DNS, Route 53, DNSimple, et les autres services DNS hébergés) :

Name Type Value
example.com. CAA 0 issue ";"
0 issuewild "letsencrypt.org"
0 iodef "mailto:support@example.com"
  • standard (utilisé par BIND ≥9.9.6, PowerDNS ≥4.0.0, NSD ≥4.0.1, Knot DNS ≥2.2.0) :
Name Type Value
example.com. IN CAA 0 issue ";"
example.com. IN CAA 0 issuewild "letsencrypt.org"
example.com. IN CAA 0 iodef "mailto:support@example.com"
  • legacy RFC 3597 (utilisé par BIND <9.9.6, NSD <4.0.1, Windows Server 2016) :
Name Type Value
example.com. IN TYPE257 \# 8 000569737375653B
example.com. IN TYPE257 \# 26 0009697373756577696C646C657473656E63727970742E6F7267
example.com. IN TYPE257 \# 33 0005696F6465666D61696C746F3A737570706F7274406578616D706C652E636F6D

Résolution des problèmes

Comment vérifier

Commande DIG

Une requête de test avec dig montre les enregistrements :

$ dig @1.1.1.1 celea.org caa +dnssec +multi +noauthority +noadditional

; <<>> DiG 9.16.1-Ubuntu <<>> @1.1.1.1 celea.org caa +dnssec +multi +noauthority +noadditional
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45743
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 1232
;; QUESTION SECTION:
;celea.org. IN CAA

;; ANSWER SECTION:
celea.org. 1800 IN CAA 0 iodef "mailto:mathias@celea.org"
celea.org. 1800 IN CAA 0 issuewild "letsencrypt.org"
celea.org. 1800 IN CAA 128 issue "letsencrypt.org"
celea.org. 1800 IN RRSIG CAA 13 2 1800 (
20210520000000 20210429000000 7209 celea.org.
9CmiaEqazRE272NDI8SgfY4iaWFI+Du13j0bTDWAzsCn
H6Y4dI7VT2UfG/vWNuLdUPSpXGkhwee0MOSMoQJcFA== )

;; Query time: 96 msec
;; SERVER: 1.1.1.1#53(1.1.1.1)
;; WHEN: ven. mai 07 17:43:20 CEST 2021
;; MSG SIZE rcvd: 258

Services en ligne

Vous pouvez aussi utiliser un service en ligne https://caatest.co.uk/ :

Erreur CAA liée au fournisseur DNS

Avant l’émission d’un certificat, l’autorité de certification vérifie les enregistrements CAA. Parfois des erreurs sont renvoyées même pour des domaines n’ayant pas défini d’enregistrements CAA. Lorsqu’une erreur est obtenue, la CA ne peut pas savoir si elle est autorisée à émettre un certificat pour le domaine concerné. En effet, des enregistrements CAA pourrait être présents interdisant l’émission, mais qui ne sont pas visibles à cause de l’erreur.

Certains fournisseurs DNS qui ne sont pas familiers avec la CAA répondent initialement aux rapports de problèmes par « Nous ne prenons pas en charge les enregistrements CAA ». Votre fournisseur DNS n’a pas besoin de prendre spécifiquement en charge les enregistrements CAA. Il doit seulement répondre par une réponse NOERROR pour les types de requêtes inconnus (y compris le CAA). Renvoyer d’autres opcodes, y compris NOTIMP, pour les types de requête inconnus est une violation de la RFC1035, et doit être corrigé.

SERVFAIL

L’erreur les plus courantes rencontrée est SERVFAIL. Le plus souvent, cela indique un échec de la validation DNSSEC.
Si vous obtenez une erreur SERVFAIL, votre première étape devrait être d’utiliser un débogueur DNSSEC comme dnsviz.net. Si cela ne fonctionne pas, il est possible que vos serveurs de noms génèrent des signatures incorrectes uniquement lorsque la réponse est vide. Et les réponses CAA sont le plus souvent vides.

Si vous n’avez pas activé DNSSEC et que vous obtenez un SERVFAIL, la deuxième raison la plus probable est que votre serveur de noms faisant autorité a renvoyé NOTIMP, ce qui est une violation de la RFC1035. Il devrait plutôt renvoyer NOERROR avec une réponse vide. Si tel est le cas, contactez de votre fournisseur DNS.

Enfin, les SERVFAILs peuvent être causés par des pannes au niveau de vos serveurs de noms faisant autorité. Vérifiez les enregistrements NS de vos serveurs de noms et assurez-vous que chaque serveur est disponible.

Timeout

Parfois, les requêtes CAA n’aboutissent pas. Même après plusieurs tentative, le serveur de noms faisant autorité ne répond pas. Le plus souvent, cela se produit lorsque votre serveur de noms est protégé par un pare-feu mal configuré qui rejette les requêtes DNS avec des QTYPES inconnus. Contactez alors votre fournisseur DNS.

Les champs QTYPE apparaissent dans la partie question d’une requête. Les QTYPES sont un sur-ensemble de TYPEs, donc tous les TYPEs sont des QTYPEs valides

Surveillez votre domaine

Même si vous publiez un enregistrement CAA, une autorité de certification non conforme peut ignorer vos enregistrements CAA. Utilisez Cert Spotter pour surveiller les journaux de Certificate Transparency afin d’être averti si cela se produit.

Jean-Baptiste Kempf, Videolan, parle de startup nation – à écouter

Comment envoyer des SMS à partir d’un Raspberry ?

Une carte Raspberry peut-être utilisée pour de nombreux cas d’usage et nous allons l’utiliser pour envoyer des SMS.

Philippe vous a préparé un article détaillé expliquant la mise en oeuvre avec une carte GSM Nadhat et une Rapsberry 3B+ sous Debian : Raspberry et SMS

Et un autre article sur ce même sujet mettant en jeu Node-RED pour ajouter un peu de programmabilité : Envoyer un SMS sur changement d’état d’une GPIO

Bonne lecture et bon développement

Vous êtes intéressé par une spécialisation en Télécommunications ?

Bonjour. Je partage une initiative qui me semble très intéressante et de grande qualité.


Vous êtes intéressé par une spécialisation en Télécommunications ?

Posez vos questions en direct aux Directeurs de programme !

RDV sur Campus-Channel !

SAVE THE DATE

TELECOM ParisTech / Mastère Spécialisé Conception et Architecture de Réseaux

22 février 2018 – 12h00

Avec ce Mastère Spécialisé®, Télécom ParisTech vise à former des étudiants capables de concevoir un réseau répondant aux contraintes fonctionnelles ou à un schéma organisationnel précis. Ce MS prépare les étudiants aux métiers d’ingénieur ou architecte réseau, responsable réseaux et télécoms, chargés de la conception, du choix et du dimensionnement des réseaux. Au programme : Réseau commutés et signalisation, Nouvelles technologies IP, Réseaux radiomobiles cellulaires, Sécurité des systèmes d’information, etc. Le MS allie à la fois des outils techniques et technologique, que ce soit pour l’analyse, la conception ou encore la planification. Les étudiants participent également au projets fil rouge, et rédigent une thèse professionnelle.

 

TELECOM ParisTech / Mastère Spécialisé Architecte Digital d’Entreprise

Retrouvez le Replay !

Le Mastère Spécialisé® Architecte Digital d’Entreprise (anciennement Architecte Télécom Orienté Multiservices – ATOMS) vise à fournir un socle de compétences techniques et business intégrant toutes les problématiques TIC, network, IT ou encore services et positionnement du client. Il est proposé en partenariat industriel avec Orange. Son objectif ? Encourager une approche de la pratique de l’architecture qui repose sur le dialogue entre urbanisme et projets opérationnels tout en intégrant les dimensions techno centric et customer centric.

A noter : l’importance de la qualité de service, des infrastructures ou encore de la sécurité dans ce domaine

Campus-Channel, la plateforme 100% vidéo pour vous aider dans votre choix de formation.


 

Vivaldi : découverte du navigateur performant, sécurisé et sur mesure

Une vidéo présentant le navigateur web multi-plateforme Vivaldi. Un des créateurs de Opera, déçu par l’orientation du projet, a créé ce navigateur en ayant pour objectif de le rendre aussi souple que l’était Opera à ses débuts, sécurisé et performant. Basé sur le moteur de chromium, il accepte les extensions de chrome.
Devant la lourdeur de Firefox, l’affiliation de Chrome avec Google, Vivaldi semble un vraie bonne alternative.

 

J’utilise ce navigateur depuis plusieurs mois en alternant parfois avec Chromium et Firefox, et je dois bien avouer que je l’apprécie de plus en plus. De plus, ses défauts de jeunesse semble maintenant oubliés. Il est tout simplement en train de devenir mon butineur préféré.

Installer FreeSwitch sur Ubuntu à partir des paquets

L’équipe de FreeSwitch vient de publier les paquets pour Ubuntu 14.04 LTS et 16.04 LTS. Une excellente nouvelle pour les utilisateurs d’Ubuntu. L’installation est maintenant simplifiée.

Pour Ubuntu 16.04 LTS, voici les commandes à taper pour installer la dernière version stable de FreeSwitch :

wget -O - https://files.freeswitch.org/repo/ubuntu-1604/freeswitch-unstable/freeswitch_archive_g0.pub | apt-key add -
 
echo "deb http://files.freeswitch.org/repo/ubuntu-1604/freeswitch-unstable/ xenial main" > /etc/apt/sources.list.d/freeswitch.list
 
# you may want to populate /etc/freeswitch at this point.
# if /etc/freeswitch does not exist, the standard vanilla configuration is deployed
apt-get update && apt-get install -y freeswitch-all

Pour Ubuntu 14.04 LTS :

wget -O - https://files.freeswitch.org/repo/ubuntu/freeswitch-unstable/freeswitch_archive_g0.pub | apt-key add -
 
echo "deb http://files.freeswitch.org/repo/ubuntu/freeswitch-unstable/ trusty main" > /etc/apt/sources.list.d/freeswitch.list
 
# you may want to populate /etc/freeswitch at this point.
# if /etc/freeswitch does not exist, the standard vanilla configuration is deployed
apt-get update && apt-get install -y freeswitch-all

Attention : les paquets permettant de gérer les flux vidéos ne sont pas installés. Des étapes complémentaires sont à prévoir.

Toutefois, l’équipe de FreeSwitch ne recommande d’utiliser cette méthode pour un usage en production pour le moment. Sur Ubuntu, seule la méthode en téléchargeant et compilant les sources est recommandée.

La documentation de la team FreeSwitch pour installer FreeSwitch sur Ubuntu.

Dolibarr : email de relance des factures impayées

Comment créer un email de relance pour les facture en retard de paiement sous Dolibarr, logiciel de gestion libre pour les TPE, PME et associations.

Dolibarr est un logiciel de gestion open source réputé pour les TPE/PME et associations permettant la gestion de la facturation. Il est aisé grâce à une fonction intégrée facilement appelable via un bouton, d’envoyer une facture à un contact par email. Dans une ancienne version, un bouton équivalent permettait de relancer les factures en retard de paiement par email,  facture par facture. Ce bouton a maintenant disparu !

Nous allons voir comment, sans toucher au code (sauf pour l’ajout d’éléments complémentaires), intégrer simplement une fonction de relance de facture en retard de paiement par email.

Pour cela, nous allons utiliser les modèles d’email, utilisables pour les factures clients mais aussi pour les commandes, propales … Ainsi, il nous suffira de choisir le bon modèle dans la liste déroulante juste au dessus du mail, afin de sélectionner le texte adéquat.

Premièrement, des messages d’envoi d’emails sont prédéfinis. Ils sont disponibles dans le dossier des langues de dolibarr /htdocs/langs/fr_fr/other.lang . Nous retrouvons notre modèle d’envoi de facture par email mais aussi, avec surprise, le modèle de relance de facture par email.

Nous allons donc créer un nouveau modèle. Pour cela, il faut aller dans Accueil -> configuration -> dictionnaires -> modèles des courriels , puis renseigner les différents éléments : libellé (champs définissant le modèle dans liste déroulante, par exemple Relance_facture), type de modèle (« pour l’envoi de facture client » dans notre cas), privé (0, sinon juste vous pourrez utiliser ce modèle), la position dans la liste déroulante (1, c’est votre premier modèle), le sujet (par ex : Relance de la facture REF ), et enfin le content (par ex : Bonjour,\n\nNous voudrions vous avertir que le facture REF ne semble pas avoir été payée. Nous vous avons joins la dite facture comme rappel.\n\nCordialement\n\n__SIGNATURE__ ).

J’ai utilisé 2 variables REF qui sera remplacé par le numéro de facture, et SIGNATURE qui sera remplacé par … votre signature (bien penser à compléter votre signature dans votre profil d’utilisateur.

Voici la liste des variables disponibles pour les factures (elles sont définies dans le fichier htdocs/compta/facture.php ) :

$formmail->substit['__REF__'] = $object->ref;
$formmail->substit['__SIGNATURE__'] = $user->signature;
$formmail->substit['__REFCLIENT__'] = $object->ref_client;
$formmail->substit['__THIRDPARTY_NAME__'] = $object->thirdparty->name;
$formmail->substit['__PROJECT_REF__'] = (is_object($object->projet)?$object->projet->ref:'');
$formmail->substit['__PROJECT_NAME__'] = (is_object($object->projet)?$object->projet->title:'');
$formmail->substit['__PERSONALIZED__'] = '';
$formmail->substit['__CONTACTCIVNAME__'] = '';

Voici l’exemple d’un modèle d’email plus complet :

__CONTACTCIVNAME__,\n\n
Veuillez trouver ci-joint votre facture __REF__ d'un montant de __FACTOTALTTC__ € TTC.\n\n
Nous vous rappelons que cette facture doit être réglée avant le __FACDATELIMREG__ .\n\n
Vous en souhaitant bonne réception, nous vous prions de croire,__CONTACTCIVNAME__, en l'assurance de nos salutations distinguées.\n\n
__SIGNATURE__

Il faut noter que les 2 dernières variables, PERSONALIZED et CONTACTCIVNAME, qui sont pourtant utilisées dans les modèles de base, retournent une chaîne vide ! à vous de les compléter (je vous laisse un peu de taf).

J’utilise aussi des variables complémentaires qu’il nous faut créer. Pour cela,  il suffit d’ajouter en ligne 3942 dans le fichier htdocs/compta/facture.php (version 3.9.3), les variables personnalisées complémentaires :

$formmail->substit['__FACDATE__'] = date('d/m/Y',$object->date);
$formmail->substit['__FACTOTATTC__'] = number_format($object->total_ttc,2,',','');
$formmail->substit['__FACDATELIMREG__'] = date('d/m/Y',$object->date_lim_reglement);

A noter, qu’à chaque mise à jour, vos modifications seront écrasées et seront donc à refaire !

Il est aussi possible d’utiliser des extensions permettant de réaliser cette opération, mais aussi d’intégrer à Dolibarr un process complet de recouvrement. Je vous conseille Relance factures impayées v2, le plus complet, ou Rappel impayé facture, devis, adhérent (3.9.x) , deux outils intéressants, à des prix différents mais n’offrant pas les mêmes fonctionnalités.

Source : wiki dolibarr

Installation ou mise à jour de Dolibarr directement en SSH

Dolibarr est un formidable logiciel de gestion pour les TPE / PME. Je vous conseille fortement de le découvrir soit via la démo en ligne soit en l’installant sur votre serveur. Un livre sur Dolibarr est disponible afin de vous guider dans l’utilisation du logiciel (l’image est la couverture de ce livre).

La documentation d’installation de Dolibarr indique l’usage de Source forge pour l’installation via les sources. Comme beaucoup, je préfère gérer en ssh mes serveurs, et l’usage de Source Forge n’est pas top. Mais une solution simple est d’utiliser le repo de github et d’aller dans l’onglet « release », vous aurez ainsi les dernières versions en tar.gz !

Migration du blog vers php 7

Mon hébergeur proposant php 7, j’ai décidé d’effectuer la migration ce jour du blog des télécoms. Je n’ai rencontré aucun problème. Néanmoins, si vous rencontrez des difficultés, n’hésitez pas à m’en faire part.

Je trouve que le blog gagne en vitesse, ce qui est cool.

Nouvelle année 2016

Je vous souhaite une excellente année 2016, que la santé soit avec vous.

2016 sera encore une année mouvementée dans les télécoms.

Tout d’abord les grandes manoeuvres des opérateurs mobiles pour revenir à tout prix à 3 acteurs sur le marché français tout en se renforçant à l’international.

Le géant Numéricable qui doit finir de digérer SFR et faire face à la fuite des abonnés : réussir la difficile équation de pouvoir relancer les inévitables financements du réseau avec des revenus en baisse. La direction a trouvé une idée : augmenter les abonnements, mais … cela ne leur fait pas perdre des abonnés en plus ? la solution passe inévitablement par la fibre comme les autres opérateurs fixes ! mais voilà comment revenir à un pseudo monopole sans qu’une entité de régulation efficace ne puisse controler les coûts.

Est-ce que 2016 sera l’année où une régulation courageuse imposera la mutualisation des réseaux de fibres optiques en arguant avec force que c’est du domaine du service publique au même niveau que l’électricité. Et pourquoi pas un RTE des télécoms ?

2016 sera aussi l’année de la surveillance tout azimut. Vu les évènements récents, certaines décisions peuvent être compréhensibles, néanmoins il nous faut avoir sacrément confiance en nos dirrigeants. Malheureusement, condamnations et mises en examens à l’appui, cette confiance est fortement ébranlée. Que faire : sécuriser nos réseaux, nos serveurs, nos procédures, former les personnels afin de ne pas se trouver au milieu de cette guerre électronique.

Mais 2016 sera aussi une année remplie de nouveaux projets excitants qui remplira nos journées de stress mais aussi de bonheur (surtout quand ce foutu !$##!## se décide enfin à fonctionner 😀 ).

Je souhaite aussi une bonne année à quelques projets qui me tiennent à coeur : Dolibarr, Asterisk, FreeSwitch et Debian.

Profitez bien, la vie est courte.