1

Как видно из названия, у меня есть несколько вопросов, касающихся метода аутентификации по ключу SSH на компьютере с Linux.

Прежде всего, я сгенерировал свои ключи на своем ПК и добавил открытый ключ в файл author_keys, и все работает нормально, но я все еще не очень хорошо знаю, как это работает.

  • Я могу войти в систему только для пользователя root с моим ключом через SSH, и я хотел бы войти в систему для других пользователей. Этим пользователям не хватает некоторых разрешений или мой ключ прикреплен к пользователю root?
  • Если более чем один человек будет иметь доступ к машине с использованием разных ключей, будут ли они иметь доступ ко всем пользователям, например, пользователю root?
  • Как я уже говорил, я работаю с разными пользователями, есть ли возможность добавить ключи только определенному пользователю? Например, я создаю пользователя «Джон», говорю моему другу Джону создать ключи на его компьютере, а затем добавляю ключ к авторизованным ключам, но он может войти в систему только для пользователя «Джон» при использовании его ключа.

Я искал несколько часов, пытаясь найти какую-то информацию об этом, но не смог найти какой-либо ответ, извините, если на этот вопрос уже был дан ответ.

Заранее спасибо.

2 ответа2

2

Аутентификация с открытым ключом обычно проводится для каждого пользователя. У каждого пользователя должен быть свой файл /home/*/.ssh/authorized_keys, который предоставляет доступ только этому пользователю.

Пользователи, у которых нет этого файла, могут войти только под своим паролем.

Сказал, что, войдя в систему как root, вы можете выполнить "su anotheruser", чтобы действовать от имени этого пользователя. Конечно, это может сделать только root.

Кроме того, вы можете настроить доверие к общесистемным ключам, если у вас есть 2 сервера с одинаковыми пользователями. Это делается с помощью файла /etc/hosts.equiv

И еще одна хитрость заключается в том, чтобы все пользователи на сервере имели одинаковую версию файла authorized_keys, чтобы вы могли войти в систему под именем любого пользователя с тем же закрытым ключом.

1

Файл authorized_keys для каждого пользователя. Когда вы добавляете открытый ключ в файл authorized_keys пользователя root, удаленная учетная запись с соответствующим закрытым ключом может войти в корневую учетную запись. Ваша пуля указывает по порядку:

  • Вы должны добавить свой публичный ключ в файл `author_keys` каждого пользователя, для которого вы хотите войти, используя ключи.
  • Открытый ключ каждого дополнительного удаленного лица будет иметь только разрешения для входа в учетные записи, к которым вы добавляете их открытый ключ. Таким образом, если вы добавляете ключ Джона только в файл authorized_keys для пользователя 'sam', то Джон сможет войти в учетную запись 'sam', а не другие.
  • Да, как я уже сказал, добавьте ключи удаленного человека только в ту учетную запись, в которую он хочет войти.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .