Fonctionnalités

Fonctionnalités exclusives à RUDDER

Mode audit

L’une des principales particularités de RUDDER est la possibilité de configurer un serveur pour n’effectuer que de la vérification de l’état de certaines règles de configuration. On peut réaliser cette configuration pour une machine complète ou pour une portion de configuration, ou bien encore au niveau global sur l’ensemble des règles de configuration et l’ensemble des machines. En bref, RUDDER offre deux modes de gestion : Audit et Enforce, respectivement pour vérifier l’état sans le modifier, et pour modifier le système pour atteindre l’état cible.
Quelques cas d’utilisation possibles :
  • outil d’audit pur ; par exemple, pour une vérification de normes (PCI-DSS, ISO 27001, etc.). À la différence d’avec un outil dédié, une fois la configuration effectuée, elle peut directement être utilisée pour configurer ;
  • validation de changements avant de les appliquer ; par exemple, une nouvelle configuration ; ce cas peut être vu comme un équivalent d’un mode dry‐run classique, mais potentiellement sur l’ensemble de l’infrastructure et avec une granularité supérieure (portant seulement sur certains points de configuration) ;
  • validation après l’installation de RUDDER sur une infrastructure existante, pour valider qu’il correspond à la configuration cible théorique, avant d’activer le mode Enforce.
Si les techniques (règles fournies par défaut à l’installation) peuvent se révéler limitées pour de l’audit, la construction des règles d’audit est particulièrement simple et accessible à l’aide du Technique Editor, un éditeur de configuration web.

Interface web de gestion avec éditeur drag & drop

En tant que solution de Continuous Configuration, RUDDER incarne la fusion entre l’infrastructure-as-code (automatisation de l’infrastructure) et l’audit en continu. Le fonctionnement de RUDDER est basé sur la définition d’un état cible de référence pour les systèmes. Tout ce qui n’est pas conforme à cet état cible que l’on souhaite atteindre ou conserver, va remonter des alertes en temps réel, créer des rapports de dérive, ou déclencher une remédiation automatique. Outil intelligent et autonome, RUDDER est particulièrement adapté pour répondre aux contraintes d’infrastructure de production où le besoin de fiabilité est une nécessité permanente. Techniquement, l’agent RUDDER installé sur chaque machine fait toutes les 5 minutes une vérification complète de son état par rapport à l’état cible. Ce fonctionnement est possible grâce à un agent développé en C, léger (10 à 20 Mo de RAM) et rapide (il peut appliquer une centaine de règles sur une machine en moins de 10 secondes), ainsi qu’à l’architecture distribuée qui unit les agents : les agents récupèrent leur configuration auprès du serveur central (ou de serveurs relais), pour répartir la charge ce qui permet à un seul serveur RUDDER de gérer plus de 10 000 agents. RUDER est ainsi capable de fonctionner sur des machines aux ressources restreintes sans perturber leur fonctionnement.
none

Abstraction des différences d’implémentation

RUDDER fonctionne sur les systèmes Linux, Windows, AIX, et d’autres encore. Avec RUDDER, inutile de créer des règles spécifiques à chaque système. En effet, les différences d’implémentation entre les différents système sont gérées par l’agent qui se charge de traduire les règles de configuration selon le fonctionnement de chaque OS.

Workflow de validation des changements

L’un des principaux objectifs de RUDDER a toujours été de combiner une plus grande accessibilité à la puissance de l’infrastructure as code, notamment au travers de fonctionnalités comme l’interface de gestion, la bibliothèque de règles prêtes à l’emploi, l’éditeur de techniques, ou plus simplement l’abstraction des différences d’implémentation entre les différents systèmes d’exploitation pris en charge par l’agent.
Cependant, cette facilité ne contribuerait pas à mieux fiabiliser l’informatique si nous n’avions le souci de compléter cette accessibilité par des fonctionnalités de maîtrise des changements. C’est le cas notamment du mode Audit qui permet de simuler des changements sans modifier les configurations, afin d’anticiper leur impact, ou encore du workflow de validation qui impose une deuxième validation des changements (les habitués des pull requests sur GitHub connaissent déjà les bienfaits du peer review).
Le workflow de validation prend tout son sens dans les environnements humains complexes pour lesquels il a été conçu, c’est‐à‐dire les équipes pluridisciplinaires et multi‐niveaux qui se constituent naturellement dans les DSI de grande ampleur.

Reporting avancé

Le contrôle de conformité de base dans RUDDER permet la visualisation de l’état actuel d’application des configurations à un instant T.
L’outil de rapport avancé permet d’historiser les données de conformité afin de consulter leur évolution dans la durée via des tableaux de bord personnalisés. Entièrement paramétrables, depuis la période sur laquelle définir l’analyse, jusqu’au groupes de machines ou de règles de configurations concernées, ces tableaux de bord personnalisés peuvent être exportés sous forme de rapports PDF afin de prouver la conformité à un auditeur externe, un client, ou à sa hiérarchie, sans avoir à mener d’inspection préparatoire manuellement.
none

Fonctionnalités de Continuous Configuration

Maintien en conformité autonome

En tant que solution de Continuous Configuration, RUDDER incarne la fusion entre l’infrastructure-as-code (automatisation de l’infrastructure) et l’audit en continu. Le fonctionnement de RUDDER est basé sur la définition d’un état cible de référence pour les systèmes. Tout ce qui n’est pas conforme à cet état cible que l’on souhaite atteindre ou conserver, va remonter des alertes en temps réel, créer des rapports de dérive, ou déclencher une remédiation automatique. Outil intelligent et autonome, RUDDER est particulièrement adapté pour répondre aux contraintes d’infrastructure de production où le besoin de fiabilité est une nécessité permanente. Techniquement, l’agent RUDDER installé sur chaque machine fait toutes les 5 minutes une vérification complète de son état par rapport à l’état cible. Ce fonctionnement est possible grâce à un agent développé en C, léger (10 à 20 Mo de RAM) et rapide (il peut appliquer une centaine de règles sur une machine en moins de 10 secondes), ainsi qu’à l’architecture distribuée qui unit les agents : les agents récupèrent leur configuration auprès du serveur central (ou de serveurs relais), pour répartir la charge ce qui permet à un seul serveur RUDDER de gérer plus de 10 000 agents. RUDER est ainsi capable de fonctionner sur des machines aux ressources restreintes sans perturber leur fonctionnement.
none

Visualisation de l’état réel

Grâce à son dashboard principal et ses nombreux graphiques, RUDDER permet de visualiser l’état de conformité du parc, aussi bien à l’échelle globale qu’avec une granularité très fine, dans le détail de environnement, groupe, machine, règle de configuration, machine, fichier, ligne… Il est facile pour n’importe quel membre de l’équipe IT (y compris les managers), de s’assurer par exemple que la politique de sécurité est bien appliquée sur l’ensemble du parc.
none

Librairie de templates incluse

RUDDER contient une bibliothèque de configurations prédéfinies répondant aux besoins de gestion de base du système (configuration DNS, gestion des utilisateurs, NTP, distribution de clefs SSH, etc.), permettant de couvrir de nombreux cas d’usage communs. Grâce à cette librairie, des configurations peuvent être facilement appliquées dès les premières heures d’utilisation, permettant un retour sur investissement quasi immédiat du temps investi dans l’outil. De plus, la courbe d’apprentissage de la solution s’en trouve encore raccourcie. L’avantage de cette librairie restreinte par rapport à une forge communautaire est aussi l’unicité de correspondance entre un besoin et un module, évitant ainsi les éventuelles longues heures de recherche et de test de templates souvent trop spécifiques à de lointains cas d’usage.

Inventaire détaillé des noeuds (extensible)

L’agent RUDDER contient FusionInventory, un outil open source d’inventaire qui permet de collecter et de visualiser directement depuis l’interface de RUDDER les caractéristiques logicielles et matérielles des machines (CPU, RAM, version d'OS, réseau, logiciels installés, versions, etc). Les informations de l’inventaire sont très utiles pour définir des groupes de machines afin de n’appliquer certaines configurations qu’à certaines machines en fonction de leurs caractéristiques.
Cet inventaire est extensible par la mise en place de scripts dont la sortie (au format JSON) est ajoutée à l’inventaire. Cela permet de compléter les propriétés de nœuds qui sont des variables (scalaires ou hiérarchiques) associées à chaque machine gérée, pouvant être utilisées comme critère de classification ou directement dans la configuration.

Consolidation des vulérabilités

bientôt disponible

Cette fonctionnalité permet d'analyser depuis RUDDER les failles de sécurité dans paquets installés et de créer automatiquement des règles de remédiation sur l'ensemble des serveurs impactées, puis de suivre la résolution.

Historique des changements avec fonction rollback (restauration des modifications)

Les serveur de relais permettent de répondre à deux besoins principaux: montée en échelle d'une part, et segmentation d'architecture d'autre part. En effet, un serveur relais est une sorte de proxy entre les noeuds gérés par RUDDER et le serveur RUDDER principal. Les relais permettent :
  • de créer des ponts entre zone réseau différente ;
  • d'isoler des ensembles de noeuds les uns par rapport aux autres ;
  • d'interdire l'accès direct au serveur RUDDER principal ;
  • de répartir la charge entre plusieurs serveurs pour gérer plus de machines à partir d'un seul serveur root.

Intégration

API REST

L'importance de la mise à disposition d'API de type REST par les applicatifs n'est plus à démontrer dans la résolution des problématiques d'automatisation et d'intégration complexe entre services du SI. Les architectures orientées services ou microservices reposent d'ailleurs sur ce prérequis. RUDDER expose donc naturellement l'ensemble de ses fonctionnalités via une API REST. Cette API peut aussi bien être exploitée directement via une ligne de commande (ou la bibliothèque python sur laquelle elle repose), que depuis des scripts ou programmes tiers.

Import de données externes

Cette fonctionnalité permet de limiter, tracer et historiser précisément les accès des utilisateurs de RUDDER à la configuration (y compris via l’API), et de restreindre finement les droits donnés aux jetons d’API système (non liés à un utilisateur) pour une meilleure sécurité et séparation des privilèges. En effet, RUDDER génère un jeton d’API par utilisateur RUDDER, permettant ainsi la gestion d’ACL précises sur les jetons système (du même type que les droits utilisateurs, avec limitation en lecture ou écriture sur les différents items). Le tout est configurable depuis l’interface Web.

Intégration

  • Supervision - intégration avec Centreon et Zabbix (beta - sur demande)

    La supervision et la gestion de configuration sont deux fonctions clefs du maintien en conditions opérationnelles d’un SI. Centreon et Zabbix sont des outils de supervision libres couramment utilisés. L’intégration avec RUDDER permet d’ajouter automatiquement à ce type de solution les machines dès leur acceptation dans RUDDER. De plus, les politiques de configuration dans RUDDER peuvent inclure une nouvelle méthode qui associe automatiquement le modèle de supervision d’une application configurée à la machine.
  • CMDB - intégration avec iTop et ServiceNow (beta - sur demande)

    iTop est une CMDB libre fréquemment utilisée. L’intégration entre iTop et RUDDER permet de synchroniser des données entre la CMDB et RUDDER. Ce dernier permet notamment de synchroniser les règles de configuration avec l’inventaire des machines dans iTop. Des fonctionnalités similaires sont en cours de finalisation dans le cadre de l’intégration avec ServiceNow.
  • Déploiement - intégration avec Ansible et Rundeck

    Ansible et Rundeck sont des outils d’automatisation de l’infrastructure particulièrement complémentaires avec RUDDER puisque spécialisés sur une dimension différente de l’automatisation de l’IT. Ils complètent RUDDER dans les domaines de orchestration et du déploiement applicatif, là où RUDDER est spécialisé sur la vérification, la visualisation, et la fiabilité continue des configurations système. Cette fonctionnalité permet l’interconnexion avec RUDDER afin de bénéficier des fonctionnalités des différentes solutions conjointement. L’un des principaux avantages est de récupérer depuis RUDDER des informations d’inventaire sur les machines afin de les utiliser dans Ansible ou Rundeck.
  • Sécurité - intégration avec Hashicorp Vault

    Vault est un outil de stockage et de gestion de secrets (mots de passe, clefs, etc.). Cette intégration permet d’utiliser des données stockées dans un serveur Vault dans les politiques de configuration, évitant ainsi de les stocker sur le serveur RUDDER et limitant les accès aux machines concernées.
  • Notification - intégration avec Slack

    RUDDER produit un flux de changements issu des différents agents connectés à un serveur, en centralisant toutes les actions effectuées ou les erreurs rencontrées. Cette intégration permet de sélectionner des événements (appartenant à une règle et/ou à un groupe de machines en particulier), et de générer des messages correspondants par courriel ou sur la messagerie instantanée Slack.
  • Patrowl - bientôt disponible

    Cette intégration permet d'intégrer directement les principales informations des audits de sécurité réalisé sur vos nœuds dans l'interface de RUDDER pour une vision unifié devsecops.

Authentification externe

Les équipes IT de sociétés bien établies utilisent souvent un système de gestion des utilisateurs basé sur un annuaire (AD, LDAP, etc.) afin de gérer les utilisateurs. Cette fonctionnalité dédiée aux entreprises de plus grande ampleur permet de baser l’authentification des utilisateurs sur une source externe de type LDAP ou RADIUS, directement depuis l’interface web de RUDDER.

Support des principales distributions Linux

RUDDER gère les machines Linux dotées des distributions les plus courantes :
  • Debian 5 à 9
  • Ubuntu 10 à 18
  • RedHat / CentOS 3 à 7
  • SUSE 10 à 15
  • SlackWare 14
Détail sur https://docs.rudder.io/reference/5.0/installation/operating_systems.html#node-supported-os

Support Windows

Développé en partenariat avec Microsoft, l’agent RUDDER pour Windows utilise la technologie native DSC (Desired State Configuration), inclue de base dans Windows depuis Powershell 4. Il permet donc de gérer les serveurs sous Windows Server 2008R2, 2012, 2012 R2, 2016, et les desktops sous Windows 7, 8, 8.1 et 10. L’agent Windows octroie la même puissance de gestion que l’agent Linux, toutes les fonctionnalités de RUDDER sous Linux sont ainsi également accessibles sur Windows (à l'exception des techniques spécifiques au mode de fonctionnement de Linux bien entendu).

Détail sur https://docs.rudder.io/reference/5.0/installation/operating_systems.html#node-supported-os

Support AIX

L’agent RUDDER pour AIX permet de gérer les serveurs sous IBM AIX 5, 6 et 7. L’agent AIX permet la même puissance de gestion que l’agent Linux.

Détail sur https://docs.rudder.io/reference/5.0/installation/operating_systems.html#node-supported-os

Support Raspberry Pi et ARM

RUDDER fonctionne sur les machines équipées de processeurs ARM (notamment les Raspberry Pi) et ainsi de gérer des parcs de machines embarquées (avec un OS Linux). Grâce à la légèreté et la performance de cet agent, RUDDER est l’outil de choix pour l’IoT, la défense, et les projets de ville numérique impliquant du mobilier urbain connecté.

Administration

Personnalisation de l’interface (logo, couleur)

Lorsque RUDDER est déployé sur une infrastructure de grande ampleur, il est courant d’avoir plusieurs serveurs RUDDER, chacun gérant un environnement différent (production/QA/dev, sites différents, etc.). Pour faciliter le quotidien des administrateurs, mais aussi et surtout pour éviter la confusion entre les différents serveurs (ce qui est d’autant plus probable s’ils contiennent des configurations similaires), il est important de pouvoir les distinguer visuellement en un coup d’œil sur l’interface, quel que soit le menu ouvert. La fonctionnalité de branding, en ajoutant des bandeaux de couleur et une description succincte à toutes les pages, répond à cette problématique simple mais non négligeable.
none

Gestion des droits

L'utilisation de données externes en tant que node properties, plus communément appelée " DataSources ", permet d'interroger des API REST externes automatiquement pour récupérer des données métier pour chaque nœud.

Serveurs relais (pour isolation de zones réseau et montée en charge)

RUDDER trace toutes les modifications effectuées sur le parc dans un audit log. Grâce à cet historique des changements, un système de rollback permet de revenir à un état de configuration antérieur. Cette fonctionnalité, au même titre que le mode audit et le workflow de validation, permet de sécuriser l’utilisation de RUDDER par des administrateurs juniors ou des membres de l’équipe IT plus éloignées de la gestion de l’infrastructure.

En résumé

Interface web de gestion

Rudder est le seul outil d’automatisation open source à proposer une interface web de gestion, grâce à laquelle quelques clics suffisent à déployer ses règles de configuration.

Règles prêtes-à-l'emploi

A aucun moment il n'est nécessaire de développer du code ; une librairie de règles prêtes-à-l’emploi est incluse dans la solution

Codeless technique builder

Grâce à un module de création graphique de règle sur mesure directement inclus dans la solution, vous êtes libre de créer vos propres règles, toujours sans coder !

Maintien en conformité

Rudder ne se contente pas d'exécuter des commandes de déploiement, il vérifie et maintient proactivement l'état cible de votre SI.

Visualisation de la conformité

Grâce à un dashboard complet, la conformité globale des machines est consultable en un coup d’œil.

Scalabilité

L'agent Rudder est développé en C, ce qui lui permet d'être très scalable, peu gourmand en ressources et ainsi gérer jusqu'à 100 000 machines avec un faible impact.

Il est temps de savoir si RUDDER est la solution que vous cherchez !

Par visioconférence ou directement dans vos locaux si vous préférez (uniquement en Île-de-France), un membre de l’équipe RUDDER vous fait gratuitement une démo personnalisée du logiciel suivant les problématiques que vous cherchez à résoudre et répond à toutes vos questions. Profitez-en !

Demander une démo

En attendant que la démonstration ait lieu, explorez l’interface par vous-même afin de faire naître de potentielles nouvelles questions. Téléchargez directement RUDDER ou visitez l’aperçu en ligne.

Télécharger
Voir l’aperçu en ligne