Повторное использование открытых OpenSSH соединений и кеширование ключей |
[исправить] |
В OpenSSH предусмотрена возможность использования существующих соединений, при
повторном коннекте к хосту.
При этом аутентификация будет осуществлена только при первом соединении, для
всех остальных соединениях вводить пароль не потребуется.
Создаем или модифицируем файл ~/.ssh/config:
Host *
ControlMaster auto
ControlPath ~/tmp/%r@%h:%p
В ControlPath определяем параметры управляющего сокета, например, в нашем случае
сокет будет создан в поддиректории tmp домашнего каталога текущего пользователя.
При использовании туннелей, режим ControlMaster следует запретить, используя
опцию командной строки:
"-o ControlMaster=no"
Например, для ssh транспорта subversion можно прописать в ~/.subversion/config:
[tunnels]
ssh = ssh -o ControlMaster=no
Для кеширования приватных ключей, созданных командой ssh-keygen и используемых
для публичной идентификации в OpenSSH можно использовать ssh-agent.
В простейшем случае достаточно предварить запуск терминальной сессий вызовом ssh-agent:
ssh-agent gnome-terminal
Далее выполняем
ssh-add
и вводим пароль для доступа к ключу ~/.ssh/id_rsa (путь к файлу с ключом может быть
задан в качестве аргумента), после чего в пределах процесса gnome-terminal
вводить пароль для данного ключа не потребуется.
Обычно ssh-agent выпоняют в привязке ко всей X сессии пользователя, напирмер,
в Ubuntu запуск x-session-manager под управлением ssh-agent уже прописан в /etc/X11/Xsession.options
Вручную, прописать запуск ssh-agent можно в .xsession, например, для старта gnome-session:
ssh-agent gnome-session
|
|
|
|
Раздел: Корень / Безопасность / SSH |
1.1, wertik (ok), 14:21, 26/12/2008 [ответить]
| +/– |
Хм, лучше уж либо по ключам авторизоваться , либо screen использовать.
| |
1.2, anonymous (??), 23:35, 26/12/2008 [ответить]
| +/– |
Человек написал про то, как использовать через ключи, только не понимает этого сам:)
| |
1.3, CSX (??), 05:16, 29/12/2008 [ответить]
| +/– |
Да уж, человек явно не понимает, что делает :)
| |
1.4, Одмин (?), 17:25, 01/01/2009 [ответить]
| +/– |
Это вы, господа, не понимаете что делает ControlMaster
| |
|
2.5, wertik (ok), 13:03, 02/01/2009 [^] [^^] [^^^] [ответить]
| +/– |
>Это вы, господа, не понимаете что делает ControlMaster
Объясни , чем это лучше авторизации по ключам?)
| |
2.6, Аноним (6), 19:13, 11/01/2009 [^] [^^] [^^^] [ответить]
| +/– |
Вы наверное не в курсе про screen?:)
ssh-agent
ssh-add
screen
и все даже без участия КонтролМастера
| |
|
1.7, Denis (??), 13:08, 12/01/2009 [ответить]
| +/– |
сделал:
>Создаем или модифицируем файл ~/.ssh/config:
>
> Host *
> ControlMaster auto
> ControlPath ~/tmp/%r@%h:%p
Всё равно повторно требует ввод пароля. В ~/tmp ничего не создаётся при соединении.
| |
|
2.8, hate (?), 14:23, 13/01/2009 [^] [^^] [^^^] [ответить]
| +/– |
>сделал:
>
>>Создаем или модифицируем файл ~/.ssh/config:
>>
>> Host *
>> ControlMaster auto
>> ControlPath ~/tmp/%r@%h:%p
>
>Всё равно повторно требует ввод пароля. В ~/tmp ничего не создаётся при
>соединении.
Всё работает нормально. Файл создается в хоме пользователя в указанной директории. И кеширует только повторные соединения.
| |
|
|