Step 1 — Use Terraform & Setup the Network
Terraform
Terraform is a capable & complex DevOps Tooling. DevOps has strong career potential & is an in-demand skill-set. As engineer focused in the core of SecDevOps, I view terraform/vagrant as the first tools in the toolkit. Learn more with learn.hashicorp.com
Disclaimer
Note: The Simplified Cyber Range Menu-Drive Makeful is compatible with Linux / OSX.
Windows has complexities and requires some redevelopment of powershell functionality. I’m working on a makefile/powershell replacement.
The project has a makefile that simplifies the setup. This outlines the setup via makefile.
Build the Network with Terraform
How? Usemake network
— this command launches terraform and focuses on building specific targets.
--target=module.range-infra.module.network.aws_internet_gateway.gw \
--target=module.range-infra.module.network.aws_nat_gateway.nat-a \
--target=module.range-infra.module.network.aws_route_table.private-a \
--target=module.range-infra.module.network.aws_route_table.public-a \
--target=module.range-infra.module.network.aws_route_table_association.private-a \
--target=module.range-infra.module.network.aws_route_table_association.public-a \
--target=module.range-infra.module.secdevops.aws_security_group.kali \
--target=module.range-infra.module.secdevops.aws_security_group.malware \
--target=module.range-infra.module.secdevops.aws_security_group.windows \
--target=module.range-infra.module.secdevops.aws_security_group.logger \
--target=module.range-infra.module.secdevops.aws_security_group.targets \
--target=module.range-infra.module.secdevops.aws_security_group.fbctf \
--target=module.range-infra.module.secdevops.aws_security_group.tpot \
--target=module.range-infra.module.secdevops.aws_key_pair.circleci_key
In the Vagrant Post below, I walk you through using vagrant. To use vagrant you need to perform this step manually or use terraform to create the networking components. Using make network
provides an output which is placed into the aws.yaml
file.
Read more in the article below…
Exploring the Makefile-driven Menu
In future posts, I’ll outline some of the other menu-driven makefile commands