
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 : et .
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 -versionsi la sortie
-bash : java : commande introuvablealors installons-le
apt install default-jreServeur
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 19E8Comme 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.listNous mettons à jour la liste des dépÎts et installons le serveur
apt update
apt install rudder-server-rootCré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

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 19E8Ajoutons le dépÎt
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.listInstallons l'agent
apt update
apt install rudder-agentConfiguration 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 inventoryNous pouvons également forcer l'agent à envoyer une demande immédiatement
rudder agent runNotre agent est configuré, poursuivons.
Ajout d'agents
Connectons-nous
https://127.0.0.1/rudder/index.html

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

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.

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

Le groupe est configuré.
Configuration des rĂšgles
Passons Ă la politique de configuration â RĂšgles, et crĂ©ons une nouvelle rĂšgle.

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

Et formons une nouvelle directive.

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

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

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

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

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 ou Windows avec de puissants processeurs de la famille AMD EPYC et des disques NVMe Intel trĂšs rapides. Commandez vite !

Source : habr.com
