Как добавить группу безопасности в работающий экземпляр EC2?

81

У меня запущен экземпляр Amazon EC2, и я хочу добавить в него другую группу безопасности, а затем удалить текущую группу безопасности из этого экземпляра. Это возможно?

Geo
источник
Просто чтобы добавить еще несколько бит информации. У нас есть два экземпляра, объединенные в две группы безопасности. Мы хотим отделить это и выделить группу безопасности для каждого экземпляра.
Geo

Ответы:

52

Обновление 2015-02-27:

Теперь это возможно, см. Ответ ниже .

Старый ответ:

Часто задаваемые вопросы Amazon говорят, что невозможно определить группу безопасности нигде, кроме времени запуска.

towo
источник
1
Спасибо, я пропускаю этот вопрос, когда просматривал FAQ. Еще раз спасибо.
Geo
2
Этот ответ устарел. Теперь вы можете изменять группы безопасности EC2 VPC. Смотрите ответ @hanxue ниже.
Диего Ф. Дуран
Нужно обновить !! Смотрите ответ ниже
Ось
78

Обновление : по состоянию на январь 2014 г. теперь вы можете изменять группы безопасности для запуска экземпляров AWS EC2.

Консоль AWS

Просто щелкните правой кнопкой мыши на экземпляре и нажмите Change Security Group

Изменить группу безопасности

Добавьте / удалите группы безопасности соответствующим образом и нажмите, Assign Security Groupsкогда закончите

Выберите группы безопасности


Командная строка EC2

Используйте следующую команду:

ec2-modify-instance-attribute <instance-id> --group-id <group-id>

Командная строка AWS

Используйте следующую команду:

aws ec2 modify-instance-attribute --instance-id i-12345 --groups sg-12345 sg-67890

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

hanxue
источник
5
Параметр «Изменить группы безопасности» присутствует в меню, но отключен. Я использую регион ap-юго-восток-2.
Аластер Ирвин
4
в настоящее время это относится только к экземплярам VPC. группы безопасности, к которым принадлежит экземпляр не-VPC, являются фиксированными / неизменяемыми и устанавливаются при первом запуске. Единственный способ изменить их - создать пакет из существующего экземпляра и перезапустить новый экземпляр, используя пакет ami.
Ives
1
Что если моя недавно созданная группа безопасности не указана в Change Security Groupsмодальном списке ?
Jtheletter
Эта опция может быть доступна только внутри VPC. Старые учетные записи AWS, которые были созданы до vpc и имеют экземпляры, работающие в классическом режиме EC2, не смогут воспользоваться этим.
cgseller
Забавно, что CLI не использует разделенные запятыми списки, как во многих других местах.
user67327
7

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

user193616
источник
3
Я верю только в VPC.
ceejayoz
Похоже, так. Параметр «Изменить группы безопасности» присутствует в меню, но отключен для экземпляров не-VPC.
Аластер Ирвин
1
Что делать, если моя недавно созданная группа безопасности не указана в модале «Изменение групп безопасности»?
Jtheletter
5
  1. Создайте образ AMI из экземпляра, который вы хотите переместить в другую группу безопасности.
  2. Запустите новый экземпляр, используя этот образ, теперь мы можем назначить этот новый экземпляр другой группе безопасности.
  3. Откажитесь от предыдущего экземпляра.

Это требует простоя на вашем экземпляре. Там могут быть некоторые другие опции, доступные с помощью API.

Rajan
источник
5

Как сказал towo, вы не можете изменить группу безопасности экземпляра в любом месте, кроме времени запуска.

Если вы не используете VPC, где группы безопасности отличаются от групп безопасности EC2.

На этой странице описаны различия между группами безопасности EC2 и VPC.

http://docs.amazonwebservices.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html

Поэтому, если вам требуется дополнительная функциональность групп VPC (изменение групп, управление входящим / входящим трафиком и т. Д.), Вам может потребоваться дополнительная функциональность, предоставляемая VPC.

идиома
источник
Добро пожаловать в сбой сервера! Хотя это может теоретически ответить на вопрос, было бы предпочтительным включить здесь основные части ответа и предоставить ссылку для справки.
Скотт Пак
1

По состоянию на 24 ноября 2016 г. ответ, данный @hanxue, является правильным, но не полным. В AWS есть два типа экземпляров : экземпляры внутри частного облака, называемые экземплярами vpc, и публичные экземпляры, называемые Ec2 Classic. Вы можете изменять только группы безопасности экземпляров VPC, но не EC2-classic. Скриншот официальной документации Aws вы хотели бы видеть. документы, которые вы хотели бы видеть

отличия от официальной документации AWS

Балман Рават
источник
0

Если вы используете boto3, вам нужно вызвать modify_attribute и передать список идентификаторов групп.

http://boto3.readthedocs.io/en/latest/reference/services/ec2.html#EC2.Instance.modify_attribute

response = instance.modify_attribute(Groups=['string'])

Groups (list) --
  [EC2-VPC] Changes the security groups of the instance. You must 
  specify at least one security group, even if it's just the default 
  security group for the VPC. You must specify the security group ID,
  not the security group name.
Джеймс Морган
источник
-2

Однако в соответствии с этим FAQ «измените настройки для текущей группы безопасности - что повлияет на все экземпляры, работающие в конкретной группе», вы можете постепенно изменять новые определения существующих. Пока я пытаюсь сделать это для моего сценария через консоль EC2, мои записи были стерты!

Роби
источник