Une nouvelle option vous permet maintenant de créer un tunnel de données entre votre machine source et le dernier hôte parmi les machines auxquelles vous allez successivement vous connecter. Au lancement du script généré par Bélier, un port en local sur votre machine source est ouvert et toutes les données envoyées par ce port arriveront directement sur l'hôte distant, vous évitant ainsi de fastidieux transferts entre toutes les machines intermédiaires. L'option prend bien sûr tout son intérêt lorsque vous avez un ou plusieurs ordinateurs intermédiaires à traverser avant d'atteindre la machine sur laquelle vous voulez travailler.
Vous trouverez une présentation rapide de Bélier dans la suite de la dépêche. Pour rappel, Bélier permet l’ouverture automatisée d’un terminal ou l’exécution de commandes sur un ordinateur distant via une connexion SSH. L’intérêt principal de Bélier réside dans sa capacité à traverser plusieurs machines intermédiaires avant d’accomplir la tâche assignée.
- Bélier rend transparent pour l’utilisateur la traversée par la connexion SSH d'ordinateurs intermédiaires sur le chemin de l’hôte distant ;
- Vous pouvez définir des commandes qui seront exécutées sur l’ordinateur distant ;
- Les éventuels changements de compte sur les ordinateurs intermédiaires ou sur la machine finale peuvent être définis ;
- Vous pouvez changer de ports pour la connexion SSH entre chaque hôte ;
- Il est dorénavant possible de créer un tunnel de données entre votre machine source et la dernière machine à laquelle vous souhaitez vous connecter.
Bélier vise à fournir un outil aux administrateurs systèmes leur permettant de travailler de manière indépendante, sans avoir à modifier la configuration des machines qu'il traverse, juste en s'adaptant aux différentes configurations existantes, en regroupant tous les informations nécessaires aux différentes connexions au niveau du poste de l'utilisateur.
Bélier génère un script Expect en sortie qu’il vous suffira d’exécuter pour atteindre votre machine. Bélier est codé en Python.
Bélier n’est pas une alternative à l’échange de clés SSH (il peut d'ailleurs s'en servir) ou à des solutions centralisées de déploiement de logiciels. Son rôle est de permettre à un administrateur système qui ne possède pas la maîtrise totale de son parc ou qui ne peut pas mettre en place une solution centralisée d’administration, de travailler de manière productive sans perdre un temps considérable à atteindre ses machines.
Aller plus loin
- Site web du projet (166 clics)
- Exemples d'utilisation (128 clics)
- Mailing-list des utilisateurs (8 clics)
# C'est bien pratique
Posté par Elephant (site web personnel) . Évalué à 6.
La syntaxe simplifiée de Bélier m'est vachement utile quand je veux créer un script d'accès à un serveur (comparé à la réalisation à la mano d'un script expect)
Je ne considère pas Belier comme le logiciel de l'année, mais comme un bon petit script pratique :)
[^] # Re: C'est bien pratique
Posté par Carl Chenet (site web personnel) . Évalué à 2.
[^] # Re: C'est bien pratique
Posté par Elephant (site web personnel) . Évalué à 4.
— Accès via une certaine adresse IP (usage de ProyxCommand)
— Accès via un ou plusieurs autres serveurs SSH
— Accès root interdit sur un serveur où ne pas être root ne sert à rien (en gros lancer d'entrée de jeu un « su »)
Ces combinaisons peuvent être mixées entre elles (la 3ème est quasiment systèmatique) faisant de l'accès « manuel » à un serveur une aventure toujours plus amusante que les autres !
# Internationalisation
Posté par Carl Chenet (site web personnel) . Évalué à 2.
# C'est mal
Posté par Christie Poutrelle (site web personnel) . Évalué à 5.
Moinssez moi si vous voulez, mais essayez un jour de coder avec spip, entre la fonction propre() et la fonction sinon(), c'est honteux, c'est dommage que des developpeurs continuent encore à penser qu'à eux (essayez vous, un jour, de lire le code d'un soft codé en russe ou en allemand, j'ai essayé un jour, ça file sérieusement envie de tabasser le mec qui l'a fait).
Mais sinon l'outil à l'air très bien (note positive tout de même).
[^] # Re: C'est mal
Posté par ... a little wood elfe . Évalué à 6.
[^] # Re: C'est mal
Posté par Maclag . Évalué à 2.
------------->
[^] # Re: C'est mal
Posté par Psychofox (Mastodon) . Évalué à 5.
[^] # Re: C'est mal
Posté par TortuXm . Évalué à 2.
Super facile à prendre en main, rien que reconnaître les variables entre elles, c'était super dur ;)
# Mot de passes en clair ?
Posté par Philippe F (site web personnel) . Évalué à 3.
J'dis ca, j'l'utilise pas, mais quand même, si je dois l'utiliser un jour, je serai très réticent à cause de ça.
[^] # Re: Mot de passes en clair ?
Posté par Carl Chenet (site web personnel) . Évalué à 2.
Je vois plusieurs moyens simples de t'assurer une bonne sécurité, par exemple conserver les scripts dans un volume chiffré (trivial à mettre en place avec les linux actuels) ou les transporter sur une clé usb (elle-même chiffrée). Dans l'optique KISS, je préfère que Bélier ne fasse pas trop de sécurité (déléguant la tâche à d'autres qui le font mieux) mais qu'il fasse bien ce pour quoi il existe.
Mais je ne suis pas fermé à l'idée, c'est juste que je ne vois pas de moyens simples pour l'implémenter pour l'instant.
# Pas convaincu par les exemples
Posté par Vincent Danjean . Évalué à 1.
Le reproche principal : les mots de passe en clair dans la config (ie inutilisable depuis un portable qui a des risques non négligeables d'être volé un jour ou l'autre)
J'ai aussi depuis longtemps des connections à faire à travers des machines intermédiaires. J'ai toujours réglé ça par une config correcte de mon .ssh/config. Les rebonds sont pris en charge directement par ssh, ce que fait que je peux alors utiliser tous les outils basés sur ssh (scp, rsync, ...) sans m'occuper du tout des machines intermédiaires (et avec des clés publiques/privées pour éviter les passwords même si ce n'est pas obligatoire). J'ai l'impression que, si on veut utiliser bélier avec rsync (par exemple), il faudrait modifier au minimum modifier la config de rsync. Bref, la dépêche ne me montre pas l'intérêt de bélier ici.
[^] # Re: Pas convaincu par les exemples
Posté par Carl Chenet (site web personnel) . Évalué à 2.
Pour Bélier, il suffit d'utiliser l'option -t du fichier de configuration qui permet de créer un tunnel entre ta source et ta destination. Cela t'ouvre un port en local sur ta machine et tu pourras tout à fait utiliser rsync ou autre.
[^] # Re: Pas convaincu par les exemples
Posté par Vincent Danjean . Évalué à 1.
Quant au système de partition chiffré, j'en ai un pour les données que je veux protéger. Ce sont aussi des données auxquelles je n'accède pas régulièrement : j'ai eu assez de pb de filesystem pour ne pas vouloir crypter mon /home en entier (ben oui, j'aime bien tester des noyaux nouveaux donc pas toujours encore très stables) et je n'ai pas envie que ce système soit monté en permanence (en général j'utilise le suspend-to-disk)
Et encore une fois, je n'ai toujours pas compris l'intérêt de bélier par rapport à une config correcte de mon client ssh. Je dois passer à côté de quelque chose.
Exemple classique : ensemble de machines dans le domaine toto.fr accessibles en passant par le firewall access.toto.fr
.ssh/config :
========
Host toto
Hostname access.toto.fr
User mylogin
Host *.toto
ProxyCommand ssh toto "tcpconnect `basename %h .toto` %p"
User mylogin
========
Et ça permet des trucs du genre
rsync fichier interne.toto:/tmp
pour transférer vers la machine interne.toto.fr en passant par access.toto.fr. Que m'apporterait bélier ?
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.