<rmcreative>

RSS

Все заметки с тегами «ssh-agent, ssh, Git»

  1. Запоминаем пароли к ssh-ключам в ssh-agent

    12 мая 2021

    Вводить пароли к ssh-ключам того же git каждый раз немного достаёт и неплохо было бы чтобы оно как-то само. Делается при помощи ssh-agent. Примерно так же делается и на Linux-ах и на маке и в Windows с git-bash.

    1. Добавляем запуск ssh-agent (смотрите ниже) в .bash_profile. Скрипт обычно лежит в домашней директории пользователя. В Windows это c:\Users\username.
    2. Идём в конфиг OpenSSH, обычно это .ssh/config в домашней директории пользователя. Если запоминать надо пароли ко всем ключам, добавляем туда AddKeysToAgent yes первой строкой. Если к отдельным, добавляем в конфиги самих ключей.
    3. Открываем новую консоль. Делаем какое-то действие с запросом пароля, вводим пароль.
    4. Всё, пароль запомнен, больше спрашивать не будет.

    Скрипт для запуска ssh agent:

    # start SSH agent
    SSH_ENV=$HOME/.ssh/environment
     
    function start_agent {
         echo "Initializing new SSH agent..."
         /usr/bin/ssh-agent | sed 's/^echo/#echo/' > ${SSH_ENV}
         echo succeeded
         chmod 600 ${SSH_ENV}
         . ${SSH_ENV} > /dev/null
         /usr/bin/ssh-add;
    }
     
    # Source SSH settings, if applicable
     
    if [ -f "${SSH_ENV}" ]; then
         . ${SSH_ENV} > /dev/null
         #ps ${SSH_AGENT_PID} doesn't work under cywgin
         ps -efp ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
             start_agent;
         }
    else
         start_agent;
    fi
    5 комментариев