J'ai défini une phrase secrète lors de la création d'une nouvelle clé SSH sur mon ordinateur portable. Mais, comme je me rends compte maintenant, cela est assez douloureux lorsque vous essayez de valider ( Git et SVN ) vers un emplacement distant via SSH plusieurs fois en une heure.
Une façon de penser est de supprimer mes clés SSH et d'en créer de nouvelles. Existe-t-il un moyen de supprimer la phrase secrète, tout en conservant les mêmes clés?
Réponses:
Réponse courte:
Cela vous invitera ensuite à saisir l'emplacement du fichier de clés, l'ancienne phrase secrète et la nouvelle phrase secrète (qui peuvent être laissées vides pour n'avoir aucune phrase secrète).
Si vous souhaitez tout faire sur une seule ligne sans invites, faites:
Important: sachez que lors de l'exécution de commandes, elles seront généralement enregistrées dans votre
~/.bash_history
fichier (ou similaire) en texte brut, y compris tous les arguments fournis (c'est-à-dire les phrases secrètes dans ce cas). Il est donc recommandé d'utiliser la première option, sauf si vous avez une raison spécifique de faire autrement.Notez cependant que vous pouvez toujours utiliser
-f keyfile
sans avoir à spécifier-P
ni-N
, et que le fichier clé est par défaut~/.ssh/id_rsa
, donc dans de nombreux cas, il n'est même pas nécessaire.Vous voudrez peut-être envisager d'utiliser ssh-agent, qui peut mettre en cache la phrase secrète pendant un certain temps. Les dernières versions de gpg-agent prennent également en charge le protocole utilisé par ssh-agent.
la source
ssh-keygen -p
dans un terminal. Il vous demandera alors un fichier clé (par défaut le fichier correct pour moi,~/.ssh/id_rsa
), l'ancienne phrase secrète (entrez ce que vous avez maintenant) et la nouvelle phrase secrète (n'entrez rien).ssh-keygen -p -P oldpassphrase -N "" -f ~/.ssh/id_rsa
~/.bash_history
. Il vaut mieux taper:$ cd ~/.ssh && ssh-keygen -f id_dsa -p
~/.bash_hstory
Ie. utilisez `ssh-keygen -p -P oldpassphrase -N" "-f ~ / .ssh / id_rsa` et tout va bien (sauf si vous avez un autre enregistreur de frappe là-bas). Vous pouvez également vous débarrasser du record de l'histoire ..$ ssh-keygen -p
travaillé pour moiOuvert git bash. Collé:
$ ssh-keygen -p
Appuyez sur Entrée pour l'emplacement par défaut.
Entrez l'ancien mot de passe
Entrez une nouvelle phrase secrète - BLANK
Confirmer la nouvelle phrase secrète - BLANK
BOOM, la douleur de saisir la phrase secrète pour Git Push avait disparu.
Merci!
la source
$ ssh-keygen -p
et que votre clé n'est pas à l'emplacement par défaut (/Users/yourname/.ssh/id_rsa), vous pouvez répondre en mettant/Users/yourname/.ssh/yourkey
lorsque vous yVous voudrez peut-être ajouter ce qui suit à votre .bash_profile (ou équivalent), qui démarre ssh-agent à la connexion.
Sur certaines distributions Linux (Ubuntu, Debian), vous pouvez utiliser:
Cela copiera l'ID généré sur une machine distante et l'ajoutera au trousseau distant.
Vous pouvez en lire plus ici et ici .
la source
Pour modifier ou supprimer la phrase secrète, je trouve souvent plus simple de ne saisir que les drapeaux
p
etf
, puis de laisser le système me demander de fournir les phrases secrètes:ssh-keygen -p -f <name-of-private-key>
Par exemple:
ssh-keygen -p -f id_rsa
Saisissez un mot de passe vide si vous souhaitez supprimer la phrase secrète.
Un exemple d'exécution pour supprimer ou modifier un mot de passe ressemble à ceci:
Lors de l'ajout d'une phrase secrète à une clé qui n'a pas de phrase secrète, l'exécution ressemble à ceci:
la source
Sous Windows, vous pouvez utiliser PuttyGen pour charger le fichier de clé privée, supprimer la phrase secrète, puis remplacer le fichier de clé privée existant.
la source
Sur le Mac, vous pouvez stocker la phrase secrète de votre clé ssh privée dans votre trousseau, ce qui rend son utilisation transparente. Si vous êtes connecté, il est disponible, lorsque vous êtes déconnecté, votre utilisateur root ne peut pas l'utiliser. La suppression de la phrase secrète est une mauvaise idée car toute personne disposant du fichier peut l'utiliser.
Ajoutez ceci à
~/.ssh/config
la source