metaclass: (Default)
[personal profile] metaclass
Часто приходится ходить на разные сервера ssh и влом вводить passphrase для ключа каждый раз. Для этого используется ssh-agent, который хранит оные ключи в себе и раздает их ssh по мере надобности. Но дело в том, что для взаимодействия с ним используется сокет, созданный с именем /tmp/ssh-херпобедичтоagent.PID. И чтобы ssh его видел, нужно чтобы в окружении наличествовала переменная SSH_AUTH_SOCK с этим именем.
А я постоянно открываю с виндового ssh клиента новые сессии на линукс (разные проги в разных окнах, переключаться так проще, чем через screen их запускать, итд) и в них этой переменной нет. В принципе, вызывать export SSH_AUTH_SOCK=/tmp/ssh-херпобедичто/agent.PID особой проблемы нет, но мне интересно, нет ли какого способа делать это автоматом.
С ходу вижу только способ типа "запускать ssh-agent скриптом, который из его вывода создает еще один скрипт, а этот второй скрипт вызывается из .profile при логине и ставит нужные переменные". Но что-то сильно похоже на метапрограммирование закат солнца вручную.

Date: 2010-09-05 12:27 pm (UTC)
From: [identity profile] vromanov.livejournal.com
1) В ~./bash_rc добавить поиск последнего по дате /tmp/ssh-*/agent.pid и установку SSH_AUTH_SOCK в этот результат. Годится?
2) В стартап скрипте SSH_AGENT добавить создание симлинка /tmp/ssh-XPEH на /tmp/ssh-херпобедичто/agent.PID

Date: 2010-09-05 12:28 pm (UTC)
From: [identity profile] metaclass.livejournal.com
О, первый вариант хорош.

Date: 2010-09-05 12:41 pm (UTC)
From: [identity profile] metaclass.livejournal.com
по дате сортировать пока лень, сделал так:
export SSH_AUTH_SOCK=`find /tmp -regex /tmp/ssh-.*agent.*`

Date: 2010-09-05 01:42 pm (UTC)
From: [identity profile] avnik.livejournal.com
К find надо еще добавить проверку на "мое". Иначе у тебя будет агент последнего зашедшего, и на него скорее всего будет стоять 600

Date: 2010-09-05 01:48 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Ага, надо. Но для начала сойдет и так, там никого кроме меня нету.

Date: 2010-09-05 01:49 pm (UTC)
From: [identity profile] metaclass.livejournal.com
А, кстати, find тех что с 600 пропустит, выдав сообщение в stderr и они в его вывод не попадут.

Date: 2010-09-05 01:45 pm (UTC)
From: [personal profile] ex0_planet
все же я за скрин - он, если его запускать с ключом -x, позволяет подключиться к одному эээ... скрину из разных сессий.

Date: 2010-09-05 01:51 pm (UTC)
From: [identity profile] metaclass.livejournal.com
А, я обычно ему force detach делаю, чтобы из другой сессии забрать. А с -x он что ли одну прогу на несколько сессий показать может?

Date: 2010-09-05 02:48 pm (UTC)
From: [personal profile] ex0_planet
ну, весь набор окон.
просто в обычном режиме он допускает только одно подключение, а так - можно работать из двух сразу. т.е. если первый юзер скажет C-a 1 а второй C-a 2, то будут видеть разные программы, а если оба скажут C-a 3, то смогут вместе писать в один емакс :-)

Date: 2010-09-05 03:43 pm (UTC)
From: [identity profile] avnik.livejournal.com
скрин хорошо -- но бардак с ssh агентами он не уменьшает, а увеличивает.

Date: 2010-09-05 09:11 pm (UTC)
From: [personal profile] ex0_planet
Каким образом? Скрин - один, ссш-агент запускается сразу перед ним и тоже один, окружение наследуется.

Date: 2010-09-05 10:55 pm (UTC)
From: [identity profile] avnik.livejournal.com
case:

локальный агент -> ssh remotehost, там запускаем скрин, в нем всякую шнягу.
Потом реконнект, опять ssh, screen -r.... И как бы почти профит, потому что у всех ранее запущеных шеллов вместо форвардинга SSH_AUTH_SOCKET смотрит вникуда

Date: 2010-09-05 06:52 pm (UTC)
From: [identity profile] inhate.livejournal.com
Я тебя читал-читал, но не понял.
Наши подоконники запускают агента локально на венде, затем заходят на коробки произвольное количество раз и переходят с них друг на друга. И никакого геморроя с ключами нет. Как ты умудрился сломать этот простой механизм?

Date: 2010-09-05 06:55 pm (UTC)
From: [identity profile] metaclass.livejournal.com
А, агент на винде и его форвардинг. Это идея, я почему-то не подумал так сделать. Я иду с винды на линукс и агента пускаю уже там.

Date: 2010-09-05 07:17 pm (UTC)
From: (Anonymous)
Подозреваю, что это (http://www.funtoo.org/en/security/keychain/intro/) Вам поможет.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 5th, 2025 07:41 am
Powered by Dreamwidth Studios