Публикация id_rsa.pub для упрощения настройки новых сред?

Чтобы упростить настройку SSH без пароля SSH на новых машинах и средах, есть ли причина, по которой файл id_rsa.pub (только общественная половина ключевой пары) не могли быть опубликованы где-то в Интернете? Например, в репозитории dotfiles GitHub.

Я знаю, что:

  • файл id_rsa (частная половина пары ключей) должен быть тщательно защищен и
  • пара ключей должна быть защищена парольной фразой

Но мои поиски не выявили каких-либо явных советов о том, что это разрешено или поощряется.

Из любопытства можно было бы придерживаться того же совета для ключевой пары без кодовой фразы?

20 голосов | спросил DouglasDD 26 MaramWed, 26 Mar 2014 04:31:01 +04002014-03-26T04:31:01+04:0004 2014, 04:31:01

4 ответа


26

RSA специально разработан, чтобы разрешить вам публиковать этот открытый ключ, так что да, вы можете его опубликовать. Это очень похоже на то, как работает x.509 (и SSL) с сертификатами RSA.

Прежде чем опубликовать файл, на самом деле посмотрите на него; единственными вещами, которые должны быть там, являются ключевое слово «ssh-rsa» и ключ с кодировкой base64. Вы можете захотеть сохранить это (я считаю, что это по умолчанию сейчас).

Это верно, имеет ли ключ ключевую фразу. Кодовая фраза шифрует закрытый ключ и не влияет на открытый ключ.

Убедитесь, что, как всегда, убедитесь, что ваш ключ достаточно энтропийный и большой. Если он генерируется сломанным PRNG, он может быть предсказуем. Однако публикация этого не представляет большого риска, так как если пространство ключей настолько мало, злоумышленник может просто попробовать со всеми ключами в перечислимом пространстве ключей, пока они не получат правильный.

Я предлагаю использовать 4096-битный ключ (укажите -b 4096), так что это будет сложнее обычного (по умолчанию используется 2048) для того, чтобы кто-то инвертировал ваш открытый ключ в частный. Это единственный значительный риск при этом, и он не очень большой, поскольку алгоритм специально разработан, чтобы сделать его нецелесообразным.

ответил Falcon Momot 26 MaramWed, 26 Mar 2014 04:56:40 +04002014-03-26T04:56:40+04:0004 2014, 04:56:40
32

Это уже есть. :) Просто поместите «.keys» в конец вашего URL профиля Github, например:

https://github.com/tjmcewan.keys

ответил tjmcewan 26 MaramWed, 26 Mar 2014 10:45:21 +04002014-03-26T10:45:21+04:0010 2014, 10:45:21
5

Как правило, я не рекомендую размещать вашу собственную конфигурацию в публичных репозиториях проекта (при условии, что repo для всех , и ваша конфигурация предназначена для только вы , это немного грубо), последствия для безопасности минимальны.

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

Существует вектор атаки на угол, который, вероятно, не применяется, но если вы вспомните фиаско с

ответил tylerl 26 MaramWed, 26 Mar 2014 05:11:50 +04002014-03-26T05:11:50+04:0005 2014, 05:11:50
1

Да, вы можете опубликовать свою коллекцию SSH. И вы можете опубликовать отпечаток на сервере с помощью записи SSHFP в DNS! Это может быть очень удобно, например, если вам нужно обновить /изменить ключ SSH сервера.

ответил jldugger 27 MaramThu, 27 Mar 2014 03:18:13 +04002014-03-27T03:18:13+04:0003 2014, 03:18:13

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132