Installation et exploitation de «Rudder»

Installation et exploitation de «Rudder»

Préface

Notre « amitiĂ© » a commencĂ© il y a deux ans. Je suis arrivĂ© dans un nouveau lieu de travail, oĂč l'administrateur prĂ©cĂ©dent m'a laissĂ© cette application en hĂ©ritage. Il Ă©tait impossible de trouver quoi que ce soit sur Internet, sauf la documentation officielle. MĂȘme maintenant, si vous recherchez « rudder », cela renvoie dans 99 % des cas : des gouvernails de navires et des drones. J'ai rĂ©ussi Ă  lui trouver une approche. Étant donnĂ© que la communautĂ© de ce logiciel est trĂšs petite, j'ai dĂ©cidĂ© de partager mon expĂ©rience et mes Ă©cueils. Je pense que cela pourra ĂȘtre utile Ă  certains.

Alors, Rudder

Rudder est un utilitaire open source pour l'audit et la gestion de la configuration, qui aide à automatiser la configuration du systÚme. Il fonctionne sur le principe de l'installation d'un agent sur chaque utilisateur final. Grùce à une interface conviviale, nous pouvons observer dans quelle mesure notre infrastructure correspond à toutes les politiques définies.

Utilisation

Ci-dessous, je vais énumérer à quoi j'utilise Rudder.

  • ContrĂŽle des fichiers et des configurations : . /ssh/authorized_keys ; /etc/hosts ; iptables ; (et ensuite, oĂč l'imagination mĂšnera)

  • ContrĂŽle des paquets installĂ©s : zabbix.agent ou tout autre logiciel

Installation du serveur

J'ai récemment mis à jour de la version 5 à 6.1, tout s'est bien passé. Ci-dessous, les commandes seront présentées pour Debian/Ubuntu, mais il y a également un support pour : le problÚme ne les affecte pas. et SLES.

Je vais cacher l'installation dans des spoilers, pour ne pas vous distraire.

Spoiler

Dépendances

Pour rudder-server, Java RE version 8 minimum est requise, que vous pouvez installer à partir du dépÎt standard :

Vérifions s'il n'est pas déjà installé

java -version

si la sortie

-bash : java : commande introuvable

alors installons-le

apt install default-jre

Serveur

Importons la clé

wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -

Voici l'empreinte

pub  4096R/474A19E8 2011-12-15 Rudder Project (clé de publication) 
      Empreinte de clé = 7C16 9817 7904 212D D58C  B4D1 9322 C330 474A 19E8

Comme nous n'avons pas d'abonnement payant, nous ajoutons le dépÎt suivant

echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list

Nous mettons à jour la liste des dépÎts et installons le serveur

apt update
apt install rudder-server-root

Créons l'utilisateur admin

rudder server create-user -u admin -p "Votre Mot de Passe"

Ensuite, nous pouvons gérer les utilisateurs via la configuration

VoilĂ , le serveur est prĂȘt.

Configuration du serveur

Il est maintenant nécessaire d'ajouter les adresses IP des agents dans le logiciel Rudder ou toute une plage d'adresses, selon la politique de sécurité.

ParamĂštres —> GĂ©nĂ©ral

Installation et exploitation de «Rudder»

Dans le champ «Ajouter un rĂ©seau», saisissez l'adresse et le masque au format x.x.x.x/xx. Pour permettre l'accĂšs depuis toutes les adresses du rĂ©seau interne (si bien sĂ»r c'est un rĂ©seau de test et que vous ĂȘtes derriĂšre un NAT), saisissez : 0.0.0.0/0

Important : aprÚs l'ajout de l'adresse IP, n'oubliez pas de cliquer sur Enregistrer les modifications, sinon rien ne sera sauvegardé.

Ports

Ouvrons les ports suivants sur le serveur

  • 443 — tcp

  • 5309 — tcp

  • 514 — udp

Nous avons compris la configuration initiale du serveur.

Installation de l'Agent

Spoiler

Ajoutons la clé

wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -

Empreinte de la clé

pub  4096R/474A19E8 2011-12-15 Rudder Project (clé de publication) 
      Empreinte de clé = 7C16 9817 7904 212D D58C  B4D1 9322 C330 474A 19E8

Ajoutons le dépÎt

echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list

Installons l'agent

apt update
apt install rudder-agent

Configuration de l'agent

Indiquons Ă  l'agent l'adresse IP du serveur de politiques

rudder agent policy-server  #Sans parenthĂšses. Il est aussi possible d'utiliser un nom de domaine 

En exécutant la commande suivante, nous enverrons une demande d'ajout d'un nouvel agent au serveur, dans quelques minutes, il apparaßtra dans la liste des nouveaux agents, je vais expliquer comment ajouter dans la section suivante.

rudder agent inventory

Nous pouvons également forcer l'agent à envoyer une demande immédiatement

rudder agent run

Notre agent est configuré, poursuivons.

Ajout d'agents

Connectons-nous

https://127.0.0.1/rudder/index.html

Installation et exploitation de «Rudder»

Dans la section «Accepter les nouveaux nƓuds», votre agent apparaĂźtra, cochez la case et cliquez sur Accepter

Installation et exploitation de «Rudder»

Il faut un peu de temps pour que le systÚme vérifie le serveur pour conformité.

Création de groupes de serveurs

CrĂ©ons un groupe (c'est tout un divertissement), je n'ai aucune idĂ©e pourquoi les dĂ©veloppeurs ont fait la formation de groupes si compliquĂ©e, mais d'aprĂšs ce que j'ai compris, c'est inĂ©vitable. Passons Ă  la section Gestion des nƓuds -> Groupes et cliquons sur CrĂ©er, choisissons un groupe statique et un nom.

Installation et exploitation de «Rudder»

Filtrons le serveur nécessaire selon certaines caractéristiques, par exemple selon l'adresse IP, et sauvegardons.

Installation et exploitation de «Rudder»

Le groupe est configuré.

Configuration des rĂšgles

Passons Ă  la politique de configuration → RĂšgles, et crĂ©ons une nouvelle rĂšgle.

Installation et exploitation de «Rudder»

Ajoutons le groupe prĂ©parĂ© prĂ©cĂ©demment (cela peut ĂȘtre fait plus tard aussi).

Installation et exploitation de «Rudder»

Et formons une nouvelle directive.

Installation et exploitation de «Rudder»

Créons une directive pour ajouter des clés publiques dans .ssh/authorized_keys. J'utilise cela en cas de départ d'un nouvel employé, ou pour des mesures de sécurité, par exemple si quelqu'un supprime accidentellement ma clé.

Passons Ă  la politique de configuration → Directives, Ă  gauche nous voyons «BibliothĂšque de directives». Trouvons «AccĂšs Ă  distance → ClĂ©s SSH autorisĂ©es», Ă  droite, cliquons sur CrĂ©er la directive.

Saisissons les données de l'utilisateur et ajoutons sa clé. Ensuite, choisissons la politique d'application.

  • Global — Politique par dĂ©faut.

  • Enforce — ExĂ©cuter sur les serveurs sĂ©lectionnĂ©s.

  • Audit — Effectuer un audit et indiquer quels clients ont des clĂ©s

Installation et exploitation de «Rudder»

N'oubliez pas d'indiquer notre rĂšgle

Installation et exploitation de «Rudder»

Ensuite, sauvegardez et c'est prĂȘt.

Vérification

Installation et exploitation de «Rudder»

Clé ajoutée avec succÚs

Avantages

L'agent fournit des informations complÚtes sur le serveur. Listes des paquets installés, interfaces, ports ouverts et bien d'autres, que vous pouvez voir sur la capture d'écran ci-dessous

Installation et exploitation de «Rudder»

Il est également possible d'installer et de contrÎler le logiciel non seulement sur Linux mais aussi sur Windows, ce dernier je ne l'ai pas vérifié, il n'y avait pas besoin.

De l'auteur

Vous devez vous demander pourquoi inventer la roue alors qu'ansible et puppet existent déjà ?

Je réponds : Ansible présente des inconvénients, par exemple, nous ne voyons pas dans quel état se trouve cette configuration actuellement, ou la situation familiÚre lorsque vous lancez un rÎle ou un playbook et que des erreurs d'échec apparaissent, et vous devez vous connecter au serveur pour voir quel paquet a été mis à jour. Quant à Puppet, je n'y ai simplement jamais travaillé.

Y a-t-il des inconvĂ©nients Ă  Rudder ? Oui, beaucoup ... À commencer par le fait que les agents se dĂ©connectent et qu'il faut les rĂ©installer ou utiliser la commande rudder reset. (Mais en fait, dans la version 6, je n'ai pas encore constatĂ© cela), jusqu'Ă  la configuration extrĂȘmement compliquĂ©e et Ă  l'interface peu logique.

Y a-t-il des avantages ? Et il y a aussi de nombreux avantages : Contrairement à l'ansible bien connu, nous avons une interface web qui montre la conformité que nous avons appliquée. Par exemple : les ports sont-ils exposés, quel est l'état du pare-feu, les agents de sécurité sont-ils installés ou d'autres éléments.

Ce logiciel convient parfaitement au dĂ©partement de sĂ©curitĂ© informatique, car l'Ă©tat de l'infrastructure sera toujours sous les yeux, et si une des rĂšgles devient rouge, c'est un signal pour visiter le serveur. Comme je l'ai dit, j'utilise Rudder depuis deux ans, et si on y prĂȘte attention, la vie devient meilleure. La chose la plus difficile dans une grande infrastructure, c'est que vous ne vous souvenez plus dans quel Ă©tat se trouve le serveur, si un dĂ©butant a ratĂ© l'installation des agents de sĂ©curitĂ© ou si j'ai correctement configurĂ© iptables, Rudder vous aidera Ă  ĂȘtre au courant de tous les Ă©vĂ©nements. InformĂ©, c'est armĂ© !)

P.S. C'est beaucoup plus que ce que j'avais prévu, je ne vais pas décrire comment installer des paquets, si jamais il y a des demandes, je rédigerai une deuxiÚme partie.

P.S.S Cet article est Ă  titre informatif, j'ai dĂ©cidĂ© de partager car il y a trĂšs peu d'informations sur le net. Peut-ĂȘtre que cela intĂ©ressera quelqu'un. Bonne journĂ©e Ă  tous mes chers amis )

En tant que publicité

Serveurs Épiques — ce sont des VPS sous Linux ou Windows avec de puissants processeurs de la famille AMD EPYC et des disques NVMe Intel trùs rapides. Commandez vite !

Installation et exploitation de «Rudder»

Source : habr.com

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster