У меня есть сервер с несколькими пользователями, у каждого из которых есть несколько авторизованных ключей SSH. Есть ли эффективный способ (утилита командной строки?), Чтобы отслеживать, какой ключ кому принадлежит и как быстро удалять / добавлять ключи (кроме ssh-copy-id)?
Я бы проверил проект Monkeysphere . Он использует концепцию сети доверия OpenPGP для управления ssh-авторизованными файлами sys и known_hosts без необходимости изменения клиента или сервера ssh.
Также есть ssh-import-id
, которые могут безопасно импортировать открытые ключи SSH пользователей из Launchpad.net .
Bastillion - https://www.bastillion.io
Пользователи управляют своими собственными ключами SSH на основании назначенных им профилей.
[+111] https://www.bastillion.io/docs/using/keymanagement/ [+111]
Вы можете использовать последнюю часть каждой строки в .ssh/authorized_keys
, предназначенную для комментариев. Из man sshd
:
Открытые ключи протокола 1 состоят из следующих разделенных пробелами полей: опции, биты, экспонента, модуль, комментарий. Открытый ключ протокола 2 состоит из: параметров, типа ключа, ключа в кодировке base64, комментария.
blockquote>И чтобы ответить на вопрос, я использую
vim
, но любой редактор должен это сделать.Мои комментарии обычно содержат:
- дата создания
- физическое местоположение: создание компьютера / USB-накопителя (я предпочитаю не перемещать закрытый ключ, а генерировать / отзывать его и знать, где они are)
- 1-2 слова о назначении (для какого логина, для какого клиента, для какого сценария)