How to change the name and description of an AWS EC2 security group?

Solution 1:

You cannot rename a security group but you can copy it into a new one. On the AWS console go to EC2 -> Security Groups -> Select the SG -> Click actions -> Copy to new. Give it a name and description that suits your taste. After that you can associate this security group with your instances (making it redundant with the old one). Finally, dissociate the old security group from your instances (rules remains the same since the new SG is a copy) and delete the SG.

It is a little bit of work, but it does get the job done with no downtime.

Solution 2:

It's not possible to rename a security group, by GUI or by API.

It's also not possible to change the security group that is assigned to an EC2 instance. EDIT: You can now dynamically assign security groups assigned to VPC EC2 instances, but you still can't do this for EC2 classic instances.

If you must change the security group for an EC2 classic instance, then you need to:

  1. Create an AMI from your instance, then
  2. Launch a new copy of your instance from the AMI created in step #1, selecting the new security group at launch time.

For VPC instances, see the answer below by @FlavioMuratore


Solution 3:

You're not the first to want this, and you're not the first to be disappointed.

Also, you cant change security group memberships for an instance once launched. :-(

I'm 99% sure this cant be done via the web GUI. Maybe via API shenanigans, but if so i've never seen it. I've wanted it myself often enough.