{"id":15871241,"url":"https://github.com/adriaanbd/tf_aws_network_layout","last_synced_at":"2026-05-18T15:11:30.048Z","repository":{"id":56522769,"uuid":"305482853","full_name":"adriaanbd/tf_aws_network_layout","owner":"adriaanbd","description":"Deploys a three (3) tiered network layout in AWS replicated in three (3) availability zones (AZs) using Terraform.","archived":false,"fork":false,"pushed_at":"2020-11-03T02:51:34.000Z","size":53,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"dev","last_synced_at":"2025-08-10T07:25:50.944Z","etag":null,"topics":["aws","infrastructure-as-code","terraform","terraform-aws"],"latest_commit_sha":null,"homepage":"","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adriaanbd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"security/firewall.tf","support":null}},"created_at":"2020-10-19T18:48:24.000Z","updated_at":"2020-10-30T03:09:11.000Z","dependencies_parsed_at":"2022-08-15T20:20:24.496Z","dependency_job_id":null,"html_url":"https://github.com/adriaanbd/tf_aws_network_layout","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/adriaanbd/tf_aws_network_layout","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adriaanbd%2Ftf_aws_network_layout","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adriaanbd%2Ftf_aws_network_layout/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adriaanbd%2Ftf_aws_network_layout/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adriaanbd%2Ftf_aws_network_layout/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adriaanbd","download_url":"https://codeload.github.com/adriaanbd/tf_aws_network_layout/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adriaanbd%2Ftf_aws_network_layout/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33181936,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-18T09:27:30.708Z","status":"ssl_error","status_checked_at":"2026-05-18T09:27:28.300Z","response_time":71,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","infrastructure-as-code","terraform","terraform-aws"],"created_at":"2024-10-06T00:42:26.514Z","updated_at":"2026-05-18T15:11:30.028Z","avatar_url":"https://github.com/adriaanbd.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 3-Tiered AWS Network Layout\n\nDeploys a three (3) tiered network layout in three (3) availability zones (AZs).\n\n## Description\n\nIt consists of the following main components inside a VPC with an Internet Gateway, replicated in 3 AZs:\n- A Public Subnet with a Bastion Host, a public route table and a NAT Gateway.\n- A Private Subnet with an App Host and a private route table.\n- A Private Subnet for the Database with nothing inside it.\n- A Security Group for each instance, with the following specs:\n    1. The Bastion Host allows SSH ingress from anywhere\n    2. The Bastion Host allows SSH egress to the App Host's Security Group\n    3. The Bastion Host allows ICMP egress for Echo Requests\n    4. The App Host allows SSH ingress from the Bastion Host's Security Group\n    5. The App Host allows TCP egress over HTTP port 80 to perform updates.\n    6. The App Host allows ICMP egress for Echo Requests\n\n## Requirements\n\nYou'll need the Terraform CLI and AWS CLI. Please read the corresponding documentation online.\n\n## Getting Started\n\n### Initialize and Deploy\n\n```\n$ terraform init \u0026\u0026 terraform plan\n$ terraform apply -auto-approve\n```\n\n### Login to Bastion Host\n\n#### Setup SSH Agent\n\n```\n$ eval `ssh-agent -s`\n```\n\n#### Add SSH Key and check it is added:\n\n```\n$ ssh-add -k key.pem\n$ ssh-add -L\n```\n\n#### Access Bastion Host and Ping\n\n```\n$ ssh -A ec2-user@public_ip\n$ ping google.com\n```\n\n#### Access Private Instance, Ping and Yum\n\n```\n$ ssh ec2-user@private_ip\n$ ping google.com\n$ yum check-updates\n```\n\n#### Destroy Resources\n\n```\n$ terraform destroy -auto-approve\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadriaanbd%2Ftf_aws_network_layout","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadriaanbd%2Ftf_aws_network_layout","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadriaanbd%2Ftf_aws_network_layout/lists"}