Двухфакторная аутентификация на EC2

Мне нужно разместить материал для финансового учреждения на EC2. Банку нужна полная двухфакторная аутентификация, так что все равно, что иметь SSH с ключом и паролем. Что-то вроде SecureID или аналогичного было бы здорово. Как эффективно создать двухфакторную аутентификацию по SSH в моей среде EC2?

Также можно ли рассматривать OpenVPN как часть двухфакторной кодировки?

5 ответов

С duo_unix вы можете добавить двухфакторную аутентификацию для любого метода входа SSH, а с интеграцией Duo OpenVPN вы можете добавить двухфакторную аутентификацию в OpenVPN.

Отказ от ответственности, я работаю на Duo.

Обновить

AWS недавно объявил о разрешениях на уровне ресурсов для Amazon EC2 и Amazon RDS, чтобы устранить этот давний недостаток поддержки IAM в EC2 и RDS, упомянутый в моем первоначальном ответе ниже:

Сегодня мы делаем IAM еще более мощным с введением разрешений на уровне ресурсов для Amazon EC2 и Amazon RDS. [...]

Со стороны EC2 теперь вы можете создавать и использовать политики IAM для управления доступом к экземплярам EC2, томам EBS, изображениям и эластичным IP-адресам. [...]

Вот лишь несколько вещей, которые вы можете сделать:

  • Разрешить пользователям работать с ограниченным набором ресурсов в более крупной многопользовательской среде EC2.
  • Установите разные разрешения для ресурсов "разработки" и "тестирования".
  • Контроль, какие пользователи могут прекратить, какие экземпляры.
  • Требовать дополнительных мер безопасности, таких как проверка подлинности MFA, при работе с определенными ресурсами. [Акцент мой]

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


Начальный ответ

Двухфакторная аутентификация, аналогичная SecurID, легко доступна через AWS Identity and Access Management (IAM) с помощью многофакторной аутентификации AWS. Относится ли это на самом деле к вашему вопросу, зависит от вашего конкретного случая использования, то есть, какие сценарии вам необходимо защитить с помощью двухфакторной аутентификации (например, упомянутый доступ SSH, доступ к AWS Management Console или доступ к веб-сайтам, которые вы размещаете на EC2 взамен так далее.).

В частности, IAM охватывает доступ к консоли управления AWS, но, очевидно, не SSH, кроме того, EC2 является одним из продуктов AWS, где IAM не применяется на уровне ресурсов, а только на уровне обслуживания, см. Интеграция с другими продуктами AWS и Использование Управление идентификацией и доступом AWS с EC2, особенно следующий отказ от ответственности:

Важный

Amazon EC2 использует ключи SSH, пароли Windows и группы безопасности для управления доступом к определенным экземплярам Amazon EC2. Вы не можете использовать систему IAM, чтобы разрешить или запретить доступ к конкретному экземпляру.

Обратите внимание, что использование IAM настоятельно рекомендуется для всего, что есть в AWS, независимо от многофакторной аутентификации.

Наконец, я хотел бы выделить два более поздних дополнения к IAM, потенциально полезных в отношении вашего варианта использования:

EC2 теперь имеет двухфакторную аутентификацию для своих сервисов, что является важным первым шагом.

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

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

Поэтому, если вы собираетесь хранить финансовые данные на EC2 на диске EBS, вы должны зашифровать их.

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

Процитирую другой источник, потому что он хорошо это говорит.

... но экземпляры виртуальных машин часто совместно используют физическое оборудование с другими экземплярами, и, поскольку EC2 является общедоступной службой, эти совместно расположенные виртуальные машины могут быть не совсем дружественными. Главная угроза здесь, конечно, уязвимости программного обеспечения - вещи, которые могут позволить злоумышленнику вырваться из одной виртуальной машины в другую. Но даже если вы усовершенствуете программное обеспечение, существует еще одна более коварная угроза, а именно: экземпляр VM атакующего может выполнить атаку по побочному каналу на соседнюю виртуальную машину.

Что сделает двухфакторную аутентификацию бесполезной против такого типа атак.

Теперь, если вы можете жить с этим, как вы это делаете? Этот вопрос / ответ от stackoverflow предоставляет вам ответы на некоторые вопросы об использовании аутентификатора Google, который является одним из лучших.

Но есть много вариантов двухфакторной аутентификации, некоторые требуют аппаратных брелоков, а другие, такие как google authenticator, используют ваш мобильный телефон. Банк или финансовое учреждение могут фактически указать, какой метод двухфакторной аутентификации они допустят.

OpenID - отличная идея, так как позволяет вам использовать ваш openid для входа во многие сервисы. Но он также несовершенен, поскольку позволяет одному входу получить доступ ко многим вещам. Быстрый Google и я нашел http://wikid.com/ который использует OpenID и двухфакторную аутентификацию. Я бы не хотел использовать его в вашем конкретном случае.

Кстати, вы собираетесь принимать платежи с кредитных карт? Возможно, вам потребуется совместимость с PCI, и я не совсем уверен, сможете ли вы быть совместимым с экземпляром EC2. Они довольно строгие, но не зря. Существуют способы уменьшить ваши риски, хотя и не принимают платежи по карте напрямую, но и не хранят данные кредитной карты, а обращаются к стороннему поставщику платежных услуг, с которым ваш веб-сайт может взаимодействовать.

Если вы являетесь продавцом, принимающим платежные карты, вы должны соответствовать стандарту PCI Data Security. Вы можете узнать свои точные требования соответствия только от своего платежного бренда или покупателя. Однако, прежде чем предпринимать какие-либо действия, вы можете получить справочную информацию и общее понимание того, что вам нужно будет сделать, используя информацию и ссылки здесь.

Вам нужно будет обеспечить безопасный доступ к консоли EC2 с двухфакторной. Там вы находитесь во власти Амазонки. Для доступа по SSH вы можете сделать много вариантов. Вы можете использовать ключи SSH и требовать, чтобы ключи имели пароль. Однако обратите внимание, что ничто не мешает кому-то написать SSH-клиент, который лжет о том, что у сертификата есть пароль. SSH хорош с точки зрения безопасности, но он не всегда проходит проверку на соответствие нормативным требованиям. Например, ключи, возможно, придется периодически перегенерировать. SSH не поддерживает это.

Радиус PAM - ваш друг, если вы решите использовать двухфакторную систему аутентификации: http://www.wikidsystems.com/support/wikid-support-center/how-to/pam-radius-how-to

НТН,

EC2 позволяет вам настраивать ваши машины с разными сертификатами SSH, которые вы можете создать, самое простое решение для вас - просто создать тот, который требует пароль.

Также следует помнить об ограничениях безопасности EC2, безопасность является периферийной, и вы не знаете, какие машины делают, что внутри, поэтому устанавливайте строгую безопасность для обмена данными между машинами, для этого крайне желателен надежный VPN с шифрованием (OpenVPN или stunnel).

Другие вопросы по тегам