риск использования ssh открытые ключи

Это зависит от того, что Вы знаете и что Вы покупаете. Назад в день, я управлял массивами FC на серверах Sun с Менеджером томов Veritas и программным обеспечением RAID. Работавшие отлично вещи и производительность были превосходны. У меня был подобный опыт с AIX 4 сервера несколько лет спустя.

Аппаратные средства RAID должны быть быстрее; но в действительности дрянные RAID-контроллеры, которые Вы часто находите, инвертируют это, и Вы были бы более обеспечены с удобным в сопровождении программным обеспечением RAID и lvm. Опыт г-на Atwood с IBM ServerRAID 8k не является изолированным инцидентом. У нас был инцидент, где дефектное встроенное микропрограммное обеспечение RAID-контроллера вынудило нас посетить более чем 400 удаленных мест для выполнения ручного обновления.

Если Вы не знаете, является ли Ваш RAID-контроллер спамом или нет, тест, тест, тест.

10
задан 24 August 2009 в 03:19
4 ответа

Да, это - одна из проблем с ключами SSH без пароля. При хранении закрытого ключа на сервере, который позволяет, Вы для соединения с сервером B, получая доступ к серверу A эффективно получаете доступ к серверу B. (Не реверс не верен - получение доступа к серверу B не привело бы к непосредственному компромиссу сервера A, предположив, что у Вас также не было SSH, настраивает набор для разрешения логинов без пароля в том направлении.

Существует несколько вещей, которые можно сделать для смягчения этого:

  • Если процесс не должен быть полностью автоматизирован, добавьте пароль к своим ключам SSH. (Это, вероятно, не будет работать на Вас, так как Вы отмечаете, что это для резервного копирования),
  • Для логинов без пароля в соответствии с Вашей собственной учетной записью к нескольким машинам я рекомендую создать ключ пароля для каждой машины, которую Вы физически вводите на и используете агент SSH для хранения ключа, в оперативной памяти при использовании его. Передача агента должна позволить, Вы, чтобы "скачкообразно двинуться" от хоста до хоста без создания включаете каждый удаленный хост.
  • Для автоматизированных, ключей SSH без пароля я рекомендую ограничить команды, которые может выполнить ключ. В Вашем authorized_keys файл, снабдите префиксом свой каждый ключ:
    command="<allowed command line here>",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty

8-9 лет назад я работал в общей пользовательской среде с сотнями локальных пользователей, и основанные на ключе логины SSH были отключены, потому что не было никакого способа осуществить политики паролей на ключах. Пока Вы управляете сценарием полностью, в наше время ключи SSH определенно лучше, чем просто использование паролей.

21
ответ дан 2 December 2019 в 21:58

Да, большинство руководств в Интернете останавливается при том, чтобы заставлять ssh без пароля работать, вместо того, чтобы заставить это работать безопасно. Это руководство делает хорошее задание показа, что может быть сделано для снижения риска. В основном (для заключения в кавычки статьи):

  • создайте единственную роль цели, составляют задание: т.е. пользователь dnssync на каждой машине
  • по возможности, сделайте файлы перезаписываемыми тем пользователем, вместо того, чтобы полагаться на то, чтобы быть корнем
  • для тех битов, которым действительно нужен привилегированный доступ, создайте сценарий, чтобы сделать это и использовать sudo
  • использовать command= и from= опции в authorized_keys файлы для ограничения ключей пароля меньше
  • для того, чтобы сделать передачу файлов, запишите сценарий, чтобы сделать это с помощью rsync на машине получения, так, чтобы удаленный доступ мог быть только для чтения
  • если это означает, что доступ назад к машине инициирования необходим от удаленной машины, использовать ssh-agent вместо того, чтобы создавать второй ключ пароля меньше
7
ответ дан 2 December 2019 в 21:58

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

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

Даже в этом случае Вы все еще подвергаетесь локальным ошибкам расширения полномочий, так быть дотошными и отслеживать ошибки безопасности плотно.

2
ответ дан 2 December 2019 в 21:58

Существует несколько проблем с ssh ключами:

Никакой централизованный способ отменить ключ.

Никакой способ осуществить политики паролей на ключах (Ваш закрытый ключ шифруется, и раз так он шифруется с хорошим паролем?).

Это проблемы kerberos, решает. Это представляет других, тем не менее, а именно, это более сложно для реализации и требует, чтобы инфраструктура управления реального пользователя развернулась и справилась.

В любом случае, хотя ssh authorized_keys допускают атаки типа morris-червя, это еще лучше, чем.r сервисы и telnet милями (световые годы)

4
ответ дан 2 December 2019 в 21:58
  • 1
    Если you' ре с помощью LDAP, можно сохранить открытый ключ в каталоге и затем использовать (патчи OpenSSH-LPK) [ code.google.com/p/openssh-lpk/] - это помогает решить первую проблему, хотя, поскольку теперь необходимо создать и распределить новые двоичные файлы SSH, общее преимущество может быть отрицательным. –  Zanchey 24 August 2009 в 07:17
  • 2
    That' s интересный, но это кажется, что было бы почти столько же работы сколько настраивающий kerberos. –  chris 24 August 2009 в 17:36

Теги

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