2015-06-30 7 views
1

Я пытаюсь написать скрипт, который использует {ssh, gpg} -агенты без усилий (например, keychain, но я обнаружил это слишком поздно). Этот скрипт будет запущен в уязвимой среде, поэтому я установил тайм-аут, чтобы удалить ключи из агента через некоторое время.ssh-add, когда ssh-agent не работает

Мне удалось написать часть spawn/reuse, но теперь я хочу, чтобы ssh-add вызывался автоматически, когда пользователь открывает ssh-соединение, если у агента нет надлежащего ключа.

Есть ли способ сделать запрос ssh-agent ssh-add на отказ или что-то еще лучше?

ответ

0

Что я делаю (предполагая, что ключ имеет уникальное имя)

У меня есть сценарий в ~/bin/ (что в моих PATH) списков

!/bin/bash 
if ! ssh-add -l | grep -q nameOfmyKey 
then 
    ssh-add -t 2h ~/path-to-mykeys/nameOfmyKey.key 
fi 
ssh [email protected] 

ssh -l все ключи в настоящее время активен в агенте ,

Параметр -t гарантирует, что ключ включен только в течение ограниченного времени.

Смежные вопросы