AWS - Understanding Security Group

 

In this post will go in detail on a simple ALB to EC2 setup.


I am configuring NodeJS on my EC2 instance.

[root@ip-172-31-9-46 ~]# yum install npm

[root@ip-172-31-9-46 ~]# npm install express


Starting the application using the below command.

[root@ip-172-31-9-46 ~]# node app.js

App1 is listening on port 3000

App2 is listening on port 4000



Now, I configured a target group:

In the target group we must give the application port and health check port.




NOTE: We cannot mention any security group under Target group.

Next, I am going to create a ALB.



Our ALB listens on port 80. So the ABL DNS/welcome should route the traffic to backend machine.

Eg: http:// demo-alb-123456.us-east-1.elb.amazonaws.com/welcome

Now, our EC2 instance at the backend should accept traffic from ALB on port 3000/4000.

Even though ALB has an IP address range which is dynamic, so create a security group based on IP is not the right solution.

Hence, we will create a security group and attach to ALB. This security group will accept all incoming traffic from its own security group IP. Like A calling A. But the idea is to make the load balancer source security group as A (sg-099c50cd040c70f6b)


Let’s attach this to the ALB.


Launch_wizard_1 accepts traffic on port 80 from outside.

Finally, we create a security group at the EC2 instance layer to accept any incoming traffic on port 3000/4000 from the source security group sg-099c50cd040c70f6b which is my load balancer.




Our target group is healthy.





Comments

Popular posts from this blog

SRE/DevOps Syllabus

AWS Code Commit - CI/CD Series Part 1

Docker - Preventing IP overlapping