Installation de logiciels sur des systèmes en exploitation
Des procédures et des mesures doivent être mises en œuvre pour gérer de manière sécurisée l'installation de logiciels sur les systèmes en exploitation.
Des déploiements contrôlés et vérifiés
Les logiciels Kubernetes et les charts Helm suivent un workflow GitOps avec des droits restreints, des sources vérifiées et une signature cryptographique. ArgoCD impose un état souhaité cohérent sur l'ensemble des clusters.
Les logiciels et paquets des serveurs ne sont installés que via des rôles Puppet approuvés et des dépôts de confiance. Les configurations au niveau du système d'exploitation sont imposées pour empêcher toute installation non autorisée.
Mises à niveau hebdomadaires et déploiements progressifs
Avec KubeAid, plus de 50 applications voient leurs tags de version mis à jour chaque semaine. Ces mises à jour sont synchronisées avec ArgoCD et déployées dans des fenêtres de service définies pour chaque cluster, de test → production, au moyen de déploiements progressifs versionnés qui garantissent la stabilité et la fiabilité des clusters.
Les mises à jour des serveurs ont lieu pendant des fenêtres de service planifiées, selon des déploiements progressifs versionnés allant des environnements de test et de validation jusqu'à la production, pour préserver la stabilité opérationnelle.
Prise en charge du fonctionnement air-gapped (sécurité de la chaîne d'approvisionnement)
Un Harbor auto-hébergé est déployé comme registre de conteneurs privé pour les clusters, ce qui permet un fonctionnement air-gapped : les nœuds Kubernetes n'ont pas besoin d'accès direct à Internet tout en recevant des images vérifiées et signées.
LinuxAid fournit pour les serveurs un serveur de dépôts adapté au fonctionnement air-gapped, avec snapshots automatiques et paquets signés GPG. Les commits sont validés sur des runners séparés pour empêcher tout code malveillant d'entrer dans les versions des serveurs, ce qui garantit une chaîne d'approvisionnement logicielle sécurisée et maîtrisée.