6135 links
  • GuiGui's Show
  • Home
  • Login
  • RSS Feed
  • ATOM Feed
  • Tag cloud
  • Picture wall
  • Daily
Links per page: 20 50 100
 
  • rcaloras/bash-preexec · GitHub
    Ho, excellent, un équivalent du hook preexec de zsh pour bash qui permet donc de lancer une commande avant d'exécuter celle demandée par l'utilisateur. Évidemment, il s'agit d'un hack. :)

    Un cas d'usage ? Avant l'exécution d'une commande ssh/scp/..., vérifier si l'agent ssh a encore la passphrase en mémoire, sinon la redemander ($1 contient l'intégralité de la commande saisie par l'utilisateur : pipes, redirection, enchaînement,...) :
    preexec() {
            if [[ "$1" =~ ssh|scp|ssh-copy-id|sftp ]]; then
                    ssh-add -L | grep -q "The agent has no identities." && echo "I'm SSH agent. Your passphrase, plz." && ssh-add -t 2h </chemin/vers/clé>
            fi
    }

    Une autre solution élégante pour ce cas d'usage est d'utiliser gpg-agent avec la fonctionnalité ssh-agent. Un seul ssh-add suffit, il est persistant (comprendre que gpg ajoute la clé et le timeout dans ses fichiers internes dans .gnupg) et ensuite, à chaque ssh monserveur, hop, gpg-agent demande la passphrase de la clé s'il ne l'a plus en mémoire. Attention : dans ce mode, le comportement de ssh-add change : ssh -d|-D ne fonctionnent plus, et ssh-add -l|-L n'indiquent plus les clés dont la passphrase est en cache mais toutes les clés SSH connues de gpg-agent.
    November 9, 2015 at 2:55:30 AM UTC - permalink - https://github.com/rcaloras/bash-preexec
Links per page: 20 50 100
 
Mentions légales identiques à celles de mon blog | CC BY-SA 3.0

Shaarli - The personal, minimalist, super fast, database-free, bookmarking service by the Shaarli community