Question Comment puis-je m'assurer que le terminal Mac OS X me demande le mot de passe de ma clé privée chaque fois que je SSH?


Le seul moment où le terminal Mac OS X semble demander le mot de passe de mon fichier d'identité, c'est quand je redémarre. Je suis assez paranoïaque et cela semble peu sûr; comment puis-je m'assurer qu'il demande le mot de passe à chaque fois Je tente d'utiliser la clé?


4
2018-02-16 00:42


origine


Quelle version de Mac OS X avez-vous? - Studer
Snow Leopard, 10.6.2 - ELLIOTTCABLE


Réponses:


Ssh-agent les stocke pour la durée de vie d'une session (voir les options de ssh-agent via 'man ssh-agent'). Vous pouvez raccourcir la durée de vie d'une clé ajoutée à l'agent avec « ssh-agent -t 1 » mais le ss-agent est lancé par launchd au démarrage du système. Voici un fil qui décrit comment traiter le problème: Apple-discussion .


4
2018-02-16 09:09



Le Caire, bon conseil en fait ne savait pas à propos de la temporisation. Merci mec. - jonathanserafini
Cela a aidé, en fait. Je devais creuser à travers cela et le thread Reddit associé, mais j'ai finalement renoncé à désactiver complètement le ssh-agent l'intégration, et a plutôt modifié le org.openbsd.ssh-agent.plist pour me donner une pause d'une minute. Merci! - ELLIOTTCABLE
Bonne réponse, cela a fonctionné pour moi. Mais je pense qu'il serait préférable que vous publiiez la solution ici, en liant le fil pour donner la réponse à la question. - Alexandre L Telles


Je voudrais ajouter l'option de configuration suivante à .ssh/config:

Host *
    IdentitiesOnly yes

désactiver l'utilisation de ssh-agent.


3
2017-08-15 11:14



Je ne peux pas voter, apparemment, parce que je n'ai pas assez de réputation sur SuperUser (j'ai toujours pensé que vous pourriez voter des réponses à vos questions). propres questions, mais ... peu importe.) Accepté, cependant! C'est exactement la solution que je souhaitais à l'origine. beaucoup mieux que simplement réduire la période à une minute ou quelque chose. - ELLIOTTCABLE
Rétrospectivement, j'ai changé ma réponse acceptée à l'autre; Bien que cela atteigne apparemment l'objectif, cela n'aide pas le problème plus profond: que ssh-agent stocke ma clé. Avec cette solution, n'importe qui peut marcher, rm ~/.ssh/configet SSH dans mes machines. (Bien, théoriquement ...) - ELLIOTTCABLE


Vous pouvez définir le trousseau de clés par défaut (connexion) pour verrouiller le mode veille ou après un délai d'attente, qui semble également vider l'agent SSH.

Ouvrez Keychain Access et cliquez avec le bouton droit de la souris sur le trousseau de connexion pour modifier les paramètres (je suppose que vous voulez un délai plus court que moi): Keychain Security Settings

Ou si vous préférez une ligne de commande:

security set-keychain-settings -lu -t 1   # for a 1 second timeout

J'utilisais le changement org.openbsd.ssh-agent.plist vous avez mentionné dans les commentaires, mais sur El Cap, vous devez désactiver la protection du système d'intégrité pour le faire, que je n'étais pas fou. Ma solution nécessite une invite supplémentaire pour le déverrouiller, mais c'est l'option la plus propre que j'ai trouvée jusqu'à présent.


2
2017-11-19 11:45





Si elle est seulement vous demander quand vous vous connectez, il est stocké dans l'un des deux endroits: dans le ssh-agent via ssh-add ou via le trousseau OSx.

Personnellement, je vérifie le trousseau en premier car j’ai le sentiment qu’il s’agit probablement d’un pari plus sûr sur une machine centrée sur une interface graphique.


1
2018-02-16 03:02



J'ai vérifié le trousseau, pas de chance. Ce doit être ssh-agent. Comment puis-je le réparer? ne pas faire ça? (Je marquerais cette réponse comme acceptée, sauf qu'elle ne résout pas vraiment mon problème ... pas sans plus d'informations ...) - ELLIOTTCABLE
Désolé pour la brièveté, je n'étais pas devant un Mac, alors j'ai pensé que je vous donnerais suffisamment d'informations pour pouvoir trouver la réponse. En supposant que vous ne l'ayez pas trouvé: 1. Effacez ssh-agent: ssh-agent -D 2. Le geek de linux en moi dit, ajoutez simplement "unset SSH_AUTH_SOCK" à votre fichier ~ / .bashrc. (Vous pouvez aussi l'exécuter manuellement pour qu'il prenne effet automatiquement). De cette façon, SSH ne saura pas où trouver l'agent. 3. Désactivez l'agent dans son ensemble: a) launchctl décharge /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist b) Je pense qu'un redémarrage serait correct après. - jonathanserafini