Connu pour ses réservations d’appartement ou de maison, Airbnb a énormément investi dans sa plateforme IT pour servir son métier d'intermédiaire. Dans un blog, la société vient de mettre en open source (disponible sur GitHub) OTTR, un framework d’infrastructure serverless pour gérer les clés publiques (PKI). Cet outil a été développé en interne et a pour objectif de gérer le cycle de vie des certificats sans l’utilisation d’un agent. Cette gestion est souvent un point de tension, même si des solutions d’automatisation avec agent existent pour appréhender la rotation des certificats pour les distributions Linux et Windows.
La firme californienne explique que le processus de courtage de certificats pour l'infrastructure réseau implique généralement une intervention manuelle des équipes d'ingénierie ou l'utilisation de protocoles d’enrôlement tels que CMP (Certificate Management Protocol), SCEP (Simple Certificate Enrollment Protocol) ou EST (Enrollment over Secure Transport), qui présentent tous des problèmes de sécurité. OTTR propose donc un cadre serverless configurable sur AWS avec peu de frais et de dépendances aux protocoles d’enrôlement.
Des avantages à plusieurs niveaux
Airbnb a élaboré OTRR en mode serverless dès la conception. La fonction Step d’AWS traite en parallèle un ensemble de données machine et exécute un conteneur ECS pour chaque hôte ciblé par une rotation de certificat. ECS extrait une image spécifique depuis ECR (Elastic Container Registry) sur la base de la définition des tâches récupérée auprès de la fonction Step. Puis, il établit une connexion avec le terminal pour générer une paire de clés publiques/privées et une RCS (une requête de certificat) qui est transférée dans le système de fichiers du conteneur. Cette RCS prend après la direction de l’autorité de certification (par exemple Let’s Encrypt) pour lancer le processus de signature du certificat et authentifier la validité du domaine en modifiant les DNS appropriés. Une fois terminé, il télécharge le certificat sur le terminal.
Kenneth Yang, ingénieur en sécurité chez Airbnb, détaille certains avantages d’OTTR. « Depuis la mise en place d’OTTR au début de l’année, des milliers de rotations de certificats ont été effectuées sans aucune intervention humaine ». Il ajoute, « cela a permis d’alléger plusieurs tâches pour les équipes comme la surveillance et le triage des tickets pour les certificats expirés, l’ingénierie, qui était responsable du processus manuel de ces rotations, et la sécurité en lien avec l’approbation des demandes ».