Issue
My AWS EC2 is not reachable by SSH or HTTP (the httpd service is running.) Both timeout. I can log in via the AWS Systems Manager. I set the security group inbound rules for the EC2 instance on port 22 and port 80 as 0.0.0.0/0 (I used to have port 22 as just my ip address but thought opening it up might help.) I have run the reachability analyzer from the internet gateway to the instance and it is successful so that would seem to indicate that the VPC, subnet and route table are configured correctly for inbound internet traffic right? What else can I look for?
Solution
In this case it was a problem with the route table. It was too difficult or impossible to simply delete the bad line in the route table. Instead I had to create a new internet gateway/route table/vpc/subnet. (I am not exactly sure of the order of those...) I terminated my old instance and launched a new one onto the new vpc/subnet and set up a new security group with a fresh set of inbound rules. It seems like AWS's answer is to just create new things instead of trying to fix the old ones. Oh well. That's what worked for me.
Answered By - Paul K. Answer Checked By - Pedro (WPSolving Volunteer)