Назад | Перейти на главную страницу

Правильный способ настройки ключей SSH для автоматизации scp

Я хочу настроить ключи SSH для автоматизации scp рабочие места. Мое текущее предположение состоит в том, что "автоматизация" подразумевает ключи SSH. без пароль, но я открыт для ваших предложений.

Я много гуглил, прежде чем задал этот вопрос. Вот что я нашел:

Таким образом, этот вопрос - главный кандидат на то, что Джефф Этвуд называет «Сделать Интернет лучше».

Для этого вопроса представьте себе этот конфиг:

Я уже знаю о:

В моем собственном тестировании между разными хостами / пользователями я знаю, что моя установка работает.

Что меня беспокоит, так это последствия для безопасности. И, признаюсь, я не администратор Linux и не эксперт по безопасности.

Важные предположения, которые следует учитывать при ответах:

Я предполагаю, что есть способ ограничить доступ для определенного ключа SSH, но я не знаю, как это сделать. Может быть ~/.ssh/authorized_keys варианты (о которых я только сегодня узнал)? Можно ли иметь несколько ключей SSH - давать разные ключи каждому источнику?

Посоветуйте, пожалуйста, правильный путь.

user3 @ host3 может иметь столько открытых ключей ssh, сколько им нравится, предоставляя доступ к своей учетной записи. Некоторые могут быть защищены паролем, другие - нет.

У каждого ключа есть публичная и приватная части. Ключи будут сгенерированы user1 и user2, публичная половина будет передана user3. Затем User3 может добавить эти ключи в свой файл authorized_keys. Защищен ли ключ паролем или нет, определяется закрытым ключом, а не открытым. Поэтому, если user3 получает открытый ключ от user1, у них нет возможности узнать, защищен ли он паролем или нет, AFAIK.

Вы можете выполнить некоторые ограничения из файла authorised_keys на отдельных машинах, как описано в разделе «authorized_keys: ограничение доступа» Вот

Скажем, например, вы хотели убедиться, что user1 может подключаться только с host1, а user2 с host2, вы можете вставить

from="host1" <user1 public key>
from="host2" <user2 public key>

тогда, если закрытый ключ скомпрометирован или украден для пользователя user1 или user2, они не смогут подключиться с любого другого компьютера.

Не уверен, насколько это хорошо, но, возможно, стоит изучить scponly который пытается предотвратить доступ к оболочке для пользователей, для которых вы хотите иметь доступ только к scp.