45 lines
870 B
Terraform
45 lines
870 B
Terraform
|
terraform {
|
||
|
required_providers {
|
||
|
tor = {
|
||
|
source = "guardianproject/tor"
|
||
|
version = "99.0.0"
|
||
|
}
|
||
|
local = {
|
||
|
source = "hashicorp/local"
|
||
|
version = "2.5.3"
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
provider "tor" {}
|
||
|
|
||
|
resource "tor_family_identity" "this" {
|
||
|
family_name = "MyFamily"
|
||
|
}
|
||
|
|
||
|
resource "local_sensitive_file" "family_key" {
|
||
|
content_base64 = tor_family_identity.this.secret_key
|
||
|
filename = "./data/keys/MyKey.secret_family_key"
|
||
|
file_permission = "0600"
|
||
|
}
|
||
|
|
||
|
resource "local_file" "this" {
|
||
|
filename = "./torrc"
|
||
|
content = <<EOF
|
||
|
FamilyId ${tor_family_identity.this.id}
|
||
|
BridgeRelay 1
|
||
|
DataDirectory data
|
||
|
ORPort 3333
|
||
|
ServerTransportListenAddr obfs4 0.0.0.0:3334
|
||
|
ExtORPort auto
|
||
|
ContactInfo <address@email.com>
|
||
|
Nickname PickANickname
|
||
|
EOF
|
||
|
}
|
||
|
|
||
|
|
||
|
output "family_id" {
|
||
|
description = "Family ID for the bridge"
|
||
|
value = tor_family_identity.this.id
|
||
|
}
|