Bonjour,
J'aimerai pouvoir accéder via virt-manager depuis un ordinateur tournant sur Gnu Guix SD à mes machines virtuelles présent sur un autre ordinateur.
virt-manager utilise SSH pour accéder au ordinateur à distance.
J'ai configure les clées SSH pour accéder à mon ordinateur distant, la connection ssh se fait sans aucun souci.
Cependant pour pouvoir se connecter à distance à travert virt-manager il faut installer le paquet gnome-ssh-askpass.
En cherchant sur la dépôt de package gnu guix je n'ai pas trouvé ce paquet. J'en ai trouvé un autre je l'ai installé mais sa ne fonctionne pas.
virt-manager affiche une erreur comme quoi le paquet askpass n'est pas présent lorsque j’essaye de me connecter via ssh.
En testant avec une machine virtuelle sous Archlinux et virt-manager j'ai bien réussi à accéder à mes machines virtuelles.
Il y a t'il un paquet qui pourrait le remplacer ?
# r-askpass peut-être ?
Posté par NeoX . Évalué à 2.
une recherche sur internet avec "Guix askpass" m'envoie sur la page suivante
http://guix.gnu.org/packages/r-askpass-1.1/
# Solution "vieux pots"
Posté par AncalagonTotof . Évalué à 1.
ssh -X ... <user>@<host>
(ou-Y
; là de tête, je ne me rappelle pas la différence)virt-manager
À la condition de pouvoir installer
virt-manager
sur le serveur.# 1..2..3...
Posté par benja . Évalué à 2. Dernière modification le 30 novembre 2020 à 21:59.
Au choix:
si par "sans soucis" tu entends sans devoir entrer de password, que ce soit le mot de passe de ta clef ou le mot de passe de ton utilisateur remote, c'est que tu utilise probablement le mauvais nom d'utilisateur. Vérifie que ton "Libvirt URI" soit "qemu+ssh://[USER]@[HOST]/system" avec le même [USER] que dans ton test.
SSH ne trouve pas ssh-askpass, ce qui peut-être un bug dans guix ou pas. Cependant tu peux lui indiquer le chemin en exportant la variable SSH_ASKPASS=/chemin/vers/ssh-askpass avant le lancer virt-manager. Consulte la documentation de guix pour savoir comment retrouver le path de l'exécutable dans le paquet que tu as installé. Sur une distrib traditionnelle il devrait se trouver dans /usr/libexec/openssh/XXX-ssh-askpass. Alors dans guix, ca va être un peu plus dur à trouver, mais bon vu que c'est ton choix de distrib tu es sensé pouvoir te démerder… au pire fais un
env SSH_ASKPASS=`find /gnustore -name \*askpass\* -executable -type f | head -1` virt-manager
;-)Vu que tu souhaites t'authentifier par clef, le password qu'il te demande est sensé être celui de ta clef privée. Il suffit de la charger dans ton agent ssh pour ne plus devoir la déchiffrer au moment où virt-manager utilise ssh. "ssh-add maclef" devrait faire l'affaire…
Virt-manager se torche comme un pochtron, enlève la ligne contenant "show_errmsg = False" de /usr/share/virt-manager/virtManager/lib/connectauth.py et tu auras un message plus explicite (%modulo le path dans le gnustore…).
En fait non, je n'ai pas d'autre idée clef en main… Je ne sais pas comment guix gère les binaires de types "libexec". Pour un binaire classique, c'est facile il est dans ton profile, et un simple
which binaire
te donne le path complet. Pour un libexec, à priori guix doit patcher cela à la compilation (tout comme les !shebang etc). Donc à mon avis, tu (ou virt-manager) utilise(s) le mauvais paquet "client ssh", ou bien c'est un bug dans guix. Tu auras plus d'info en contactant les gens de guix directement! Feel free de backfeeder ici lorsque tu auras ta solution…# Fonctionne avec ssh-add
Posté par gusterhack . Évalué à 1.
En ajoutant ma clée privée avec ssh-add sa a régler le problème.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.