ssh-agent не используется, когда ssh запускается из панели запуска (через `gnome-terminal --command`)

У меня все настроено , так что после того, как я войду в систему и добавлю правильную идентификацию в ssh-agent, используя ssh-add из окна терминала gnome, мне не придется вводить фразу-пароль снова, когда я вызвать ssh myserver.

Теперь я хотел сделать это еще проще и создать панель запуска, которая запускала бы

gnome-terminal --command "ssh myserver"

, но хотя это вызывает то, что я хочу, он игнорирует ssh-agent, то есть он запрашивает Идентификационная фраза . И он делает это каждый раз, даже если я поставляю ПП, в следующий раз он спрашивает снова.

1119 Что я делаю не так? Кто-нибудь может объяснить, почему это не работает?


Дополнительные примечания:

  • Запуск gnome-terminal --command "ssh myserver с уже открытого терминала работает нормально

  • [ 1112]

    Изменение части ssh myserver на bash -c "ssh myserver" с правильным цитированием не помогло.

  • Также использование ssh myserver прямо в панели запуска не помогло: приглашение парольной фразы отображалось как простое окно графического интерфейса пользователя (если только я не выбрал опцию «Запуск в терминале», в этом случае поведение было таким же, как описано выше)

  • Это Ubuntu 12.04

  • добавление -vvv к обеим командам ssh, вот где неудачный (и запрашивающий PP) ssh начинает отличаться от успешного SSH:

    [...]
    debug1: Server accepts key: pkalg ssh-rsa blen 279
    debug2: input_userauth_pk_ok: fp 5e:ad:5e:1f:7f:...
    debug1: key_parse_private_pem: PEM_read_PrivateKey failed
    debug1: read PEM private key done: type <unknown>
    Enter passphrase for key '/home/lennycz/.ssh/id_rsa': 
    

    , в то время как успешный SSH говорит

    [...]
    debug1: Server accepts key: pkalg ssh-rsa blen 279
    debug2: input_userauth_pk_ok: fp 5e:ad:5e:1f:7f:...
    debug1: Authentication succeeded (publickey).
    [...]
    

    (а затем многое, очевидно, не связано ...)

    I не нашел ни полезных сообщений отладки, ни чего-либо в журналах системы / авторизации.

  • [Тысяча сто двадцать девять]
6
задан 11 December 2012 в 05:18

2 ответа

Полагаю, вы следовали за связанной статьей и изменили вашу ~/.bashrc. Однако ~/.bashrc может никогда не быть получен при запуске команды из панели запуска.

Самый простой способ отладки - добавить date > /tmp/bashrc_sourced в конец вашего ~/.bashrc и проверить, печатается ли текущее время в файле при вызове панели запуска.

Примечание по теме: Возможно, вы захотите взглянуть на цепочку ключей , которая специально разработана для управления ssh-agent для вас.

0
ответ дан 11 December 2012 в 05:18

Я бы посоветовал проверить, что SSH_AUTH_SOCK передан правильно.

У меня есть это как часть моего сценария входа в KDE:

export SSH_AUTH_SOCK="${HOME}/.ssh-agent.sock"
rm -f ${SSH_AUTH_SOCK}
ssh-agent -a ${SSH_AUTH_SOCK}

и это в моем .bashrc:

export SSH_AUTH_SOCK="${HOME}/.ssh-agent.sock"
0
ответ дан 11 December 2012 в 05:18

Другие вопросы по тегам:

Похожие вопросы: