Как удалить парольную фразу для ключа SSH без необходимости создавать новый ключ?



Я установил пароль при создании нового ключа SSH на моем ноутбуке. Но, как я понимаю сейчас, это довольно болезненно, когда вы пытаетесь совершить (Git и SVN) в удаленное место по SSH много раз в час.



один из способов, о котором я могу думать, это удалить мои ключи SSH и создать новые. Есть ли способ удалить парольную фразу, сохраняя при этом те же ключи?

1171   3  

3 ответов:

короткий ответ:

$ ssh-keygen -p

затем вам будет предложено ввести местоположение ключевого файла, старую парольную фразу и новую парольную фразу (которую можно оставить пустой, чтобы не иметь парольной фразы).

Если вы хотите сделать все это на одной строке без подсказок сделать:

$ ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]

важно: помните, что при выполнении команд они, как правило, регистрируются в вашем ~/.bash_history файл (или аналогичный) в виде обычного текста, включая все предоставленные аргументы (т. е. ключевые фразы в данном случае). Поэтому рекомендуется использовать первый вариант, если у вас нет особых причин поступить иначе.

вы можете рассмотреть возможность использования ssh-агента, который может кэшировать парольную фразу на некоторое время. Последние версии gpg-агента также поддерживают протокол, используемый ssh-агентом.

вы, возможно, захотите, чтобы добавить следующую строку в ваш .bash_profile (или эквивалент), который запускает ssh-агент при входе в систему.

if [ -f ~/.agent.env ] ; then
    . ~/.agent.env > /dev/null
    if ! kill -0 $SSH_AGENT_PID > /dev/null 2>&1; then
        echo "Stale agent file found. Spawning new agent… "
        eval `ssh-agent | tee ~/.agent.env`
        ssh-add
    fi 
else
    echo "Starting ssh-agent"
    eval `ssh-agent | tee ~/.agent.env`
    ssh-add
fi

в некоторых дистрибутивах Linux (Ubuntu, Debian) вы можете использовать:

ssh-copy-id -i ~/.ssh/id_dsa.pub username@host

это скопирует сгенерированный идентификатор на удаленную машину и добавит его в удаленную связку ключей.

Вы можете подробнее здесь и здесь.

$ ssh-keygen -p работал для меня

открыл git bash. Вставлено:$ ssh-keygen -p

нажмите enter для расположения по умолчанию.

введите старый пароль

введите новую парольную фразу-пусто

подтвердить новую парольную фразу-пусто

бум боль от ввода парольной фразы для git push исчезла.

спасибо!

Comments

    Ничего не найдено.