147 lines
3.4 KiB
HCL
147 lines
3.4 KiB
HCL
variable "region" {
|
|
default = "us-west-1"
|
|
}
|
|
|
|
variable "profile" {
|
|
default = "terraform"
|
|
}
|
|
|
|
variable "custom-tags" {
|
|
type = map(string)
|
|
description = "Optional mapping for additional tags to apply to all related AWS resources"
|
|
default = {}
|
|
}
|
|
|
|
variable "instance_name_prefix" {
|
|
description = "Optional string to prefix at the front of instance names in case you need to run multiple DetectionLab environments in the same AWS account"
|
|
default = ""
|
|
}
|
|
|
|
variable "availability_zone" {
|
|
description = "https://www.terraform.io/docs/providers/aws/d/availability_zone.html"
|
|
default = ""
|
|
}
|
|
|
|
variable "shared_credentials_file" {
|
|
description = "Path to your AWS credentials file"
|
|
type = string
|
|
default = "/home/username/.aws/credentials"
|
|
}
|
|
|
|
variable "public_key_name" {
|
|
description = "A name for AWS Keypair to use to auth to logger. Can be anything you specify."
|
|
default = "id_logger"
|
|
}
|
|
|
|
variable "public_key_path" {
|
|
description = "Path to the public key to be loaded into the logger authorized_keys file"
|
|
type = string
|
|
default = "/home/username/.ssh/id_logger.pub"
|
|
}
|
|
|
|
variable "private_key_path" {
|
|
description = "Path to the private key to use to authenticate to logger."
|
|
type = string
|
|
default = "/home/username/.ssh/id_logger"
|
|
}
|
|
|
|
variable "ip_whitelist" {
|
|
description = "A list of CIDRs that will be allowed to access the EC2 instances"
|
|
type = list(string)
|
|
default = [""]
|
|
}
|
|
|
|
variable "external_dns_servers" {
|
|
description = "Configure lab to allow external DNS resolution"
|
|
type = list(string)
|
|
default = ["8.8.8.8"]
|
|
}
|
|
|
|
# Use Data Sources to resolve the AMI-ID for the Ubuntu 18.04 AMI
|
|
data "aws_ami" "logger_ami" {
|
|
owners = ["099720109477"]
|
|
|
|
filter {
|
|
name = "name"
|
|
values = ["ubuntu/images/hvm-ssd/ubuntu-bionic-18.04-amd64-server-20191113"]
|
|
}
|
|
}
|
|
|
|
# Use Data Sources to resolve the AMI-ID for the pre-built DC host
|
|
data "aws_ami" "dc_ami" {
|
|
owners = ["505638924199"]
|
|
|
|
filter {
|
|
name = "name"
|
|
values = ["detectionlab-dc"]
|
|
}
|
|
}
|
|
|
|
# Use Data Sources to resolve the AMI-ID for the pre-built WEF host
|
|
data "aws_ami" "wef_ami" {
|
|
owners = ["505638924199"]
|
|
most_recent = true
|
|
|
|
filter {
|
|
name = "name"
|
|
values = ["detectionlab-wef"]
|
|
}
|
|
}
|
|
|
|
# Uncomment after this AMI has been created and uploaded to AWS
|
|
# # Use Data Sources to resolve the AMI-ID for the pre-built EXCHANGE host
|
|
# data "aws_ami" "exchange_ami" {
|
|
# owners = ["505638924199"]
|
|
# most_recent = true
|
|
|
|
# filter {
|
|
# name = "name"
|
|
# values = ["detectionlab-exchange"]
|
|
# }
|
|
# }
|
|
|
|
# Use Data Sources to resolve the AMI-ID for the pre-built Win10 host
|
|
data "aws_ami" "win10_ami" {
|
|
owners = ["505638924199"]
|
|
most_recent = true
|
|
|
|
filter {
|
|
name = "name"
|
|
values = ["detectionlab-win10"]
|
|
}
|
|
}
|
|
|
|
# If you are building your own AMIs, replace the default values below with
|
|
# the AMI IDs
|
|
variable "logger_ami" {
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "dc_ami" {
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "wef_ami" {
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "exchange_ami" {
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "win10_ami" {
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
# Set to "true" in terraform.tfvars if you want to add the Exchange server
|
|
variable "create_exchange_server" {
|
|
description = "If set to true, adds an additional host that installs exchange"
|
|
type = bool
|
|
default = false
|
|
}
|