Moving Terraform to this repo

This commit is contained in:
Moritz Graf 2020-02-23 18:46:47 +01:00
parent e0b4914f9d
commit 2df820b717
6 changed files with 1013 additions and 0 deletions

2
terraform/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
.terraform

View File

@ -0,0 +1,26 @@
# -*- encoding: utf-8 -*-
###
try:
input = raw_input
except NameError:
pass
import ovh
import json
# create a client using configuration from ovh.conf file
client = ovh.Client()
# Request RO, /me API access
ck = client.new_consumer_key_request()
ck.add_recursive_rules(ovh.API_READ_ONLY, "/")
# Request token
validation = ck.request()
print("Please visit %s to authenticate" % validation['validationUrl'])
input("and press Enter to continue...")
# Print nice welcome message
print("Welcome", client.get('/me')['firstname'])
print("Btw, your 'consumerKey' is '%s'" % validation['consumerKey'])

View File

@ -0,0 +1,46 @@
# -*- encoding: utf-8 -*-
'''
List all domain relevant information to add them to Terraform
'''
import json
import ovh
import sys
# Instanciate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page
client = ovh.Client(
endpoint='ovh-eu', # Endpoint of API OVH Europe (List of available endpoints)
application_key='pSnvZrS8R4LPCLEh', # Application Key
application_secret='CKUHMo5ZXDm8JLA6ZWWUzAolglQmvylv', # Application Secret
consumer_key='EVBu0meA2OYvEvVWUbR0qwU2lD7uXKiM', # Consumer Key
)
all_domains = client.get('/domain')
# Pretty print
print("All domains: "+json.dumps(all_domains, indent=4))
for domain in all_domains :
print("Looking at domain: " +domain)
try:
if(domain in ["moritzgraf.de"]):
all_resources = client.get('/domain/zone/'+str(domain)+"/record")
print("All resources:"+json.dumps(all_resources,indent=4))
for resource in all_resources:
try:
record_details = client.get('/domain/zone/'+str(domain)+"/record/"+str(resource))
if(record_details["subDomain"] and record_details["subDomain"] in ["git","auth","prometheus","alertmanager",
"chat","mqtt", "cloud","monitoring","smtp","pop3","imap","jaeger","ldap","code","hub","grafana",
"tt-rss","phpmyadmin","phppgadmin","www","terraformtest","rstudio","code" ]):
#print("Domain"+str(record_details["zone"])+"Subdomain:"+str(record_details["subDomain"]))
print("terraform import 'ovh_domain_zone_record.moritzgraf_subdomains[\""+record_details["subDomain"]+"\"]' "+ str(record_details["id"])+"."+str(record_details["zone"]))
except Exception as e:
print("Somthing did not work for domain:"+str(record_details))
print(e)
# print("###details###"+str(record_details))
else:
print("Domain "+str(domain)+" not on whitelist, ignoring")
except Exception as e:
print("Somthing did not work for domain:"+domain)
print(e)

13
terraform/misc/ovh.conf Normal file
View File

@ -0,0 +1,13 @@
; THIS FILE IS FOR MANUALLY CHECKING THE API
; TO BE USED WITH ovh_dev.py
[default]
; general configuration: default endpoint
endpoint=ovh-eu
[ovh-eu]
; configuration specific to 'ovh-eu' endpoint
application_key=pSnvZrS8R4LPCLEh
application_secret=CKUHMo5ZXDm8JLA6ZWWUzAolglQmvylv
; uncomment following line when writing a script application
; with a single consumer key.
;consumer_key=eNrAf7toCYw6u8vIyRcHNFp4KqyYW0Tp

95
terraform/ovh.tf Normal file
View File

@ -0,0 +1,95 @@
provider "ovh" {
endpoint = "ovh-eu"
application_key = "grBXP8S9ugOfjfpj"
application_secret = "6mMRIUxMWaXff631ulc2jj5HybGg4ESx"
consumer_key = "m3D43OxSD03iyfKenn1fQ1AVl3eXodKn"
}
locals {
ttl = "60"
}
variable "subdomains_moritzgraf" {
default = ["git","auth","prometheus","alertmanager","chat","mqtt", "cloud",
"monitoring","smtp","pop3","imap","jaeger","ldap","code","hub",
"grafana","tt-rss","phpmyadmin","phppgadmin","www","rstudio","code" ]
}
resource "ovh_domain_zone_record" "moritzgraf_subdomains" {
for_each = toset( var.subdomains_moritzgraf )
zone = "moritzgraf.de"
subdomain = each.key
fieldtype = "CNAME"
ttl = local.ttl
target = "moritzgraf.de."
}
# ## graf.me -> problems with domain
variable "domains" {
default = [ "moritzgraf.de","haumdaucher.de","ameliegraf.de"
,"graf-fam.de","iptize.it","ianaa.art"
,"krassescheisse.de"]
}
resource "ovh_domain_zone_record" "haumdaucher_domain" {
zone = "haumdaucher.de"
subdomain = ""
fieldtype = "A"
ttl = local.ttl
target = "91.121.64.43"
}
resource "ovh_domain_zone_record" "mail_moritzgraf" {
zone = "moritzgraf.de"
subdomain = "mail"
fieldtype = "A"
ttl = local.ttl
target = "91.121.64.43"
}
resource "ovh_domain_zone_record" "mx_records" {
for_each = toset(var.domains)
zone = each.key
fieldtype = "MX"
ttl = local.ttl
target = "10 mail.moritzgraf.de."
}
## SPF
resource "ovh_domain_zone_record" "spf_record_txt" {
for_each = toset(var.domains)
zone = each.key
fieldtype = "TXT"
ttl = local.ttl
target = "v=spf1 mx a:mail.moritzgraf.de -all"
}
resource "ovh_domain_zone_record" "spf_record_spf" {
for_each = toset(var.domains)
zone = each.key
fieldtype = "SPF"
ttl = 600
target = "\"v=spf1 mx a:mail.moritzgraf.de -all\""
}
## DKIM
resource "ovh_domain_zone_record" "dkim_record" {
for_each = toset(var.domains)
zone = each.key
fieldtype = "TXT"
ttl = local.ttl
subdomain = "dkim._domainkey"
target = "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDhnjYV76s63M4zVRTjVf5Z/fTO6Rq3o4DXg62FCgAxQOYB9ANXeBvUPokT+p5SgjGC8HwBYIzzwCTCS6sqHsy8NfnHU1xFH5NcY4LqTopVX//eYpPF+bTwarDVu/lcCxiX4cN84U1yL8lqf0sOJ7ubGlSeZ/SfM/Ppj7Wkh/kBOQIDAQAB"
}
# ## DMARC
resource "ovh_domain_zone_record" "dmarc_record" {
for_each = toset(var.domains)
zone = each.key
fieldtype = "TXT"
ttl = local.ttl
subdomain = "_dmarc"
#target = "v=DMARC1; p=reject; rua=mailto:admin@moritzgraf.de; ruf=mailto:admin@moritzgraf.de; adkim=s; aspf=s"
target = "v=DMARC1; p=reject; rua=none; ruf=mailto:admin@moritzgraf.de; adkim=s; aspf=s"
}

831
terraform/terraform.tfstate Normal file
View File

@ -0,0 +1,831 @@
{
"version": 4,
"terraform_version": "0.12.20",
"serial": 61,
"lineage": "8aff5d23-05f6-10eb-0ae6-1084c787677e",
"outputs": {},
"resources": [
{
"mode": "managed",
"type": "ovh_domain_zone_record",
"name": "dkim_record",
"each": "map",
"provider": "provider.ovh",
"instances": [
{
"index_key": "ameliegraf.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871408",
"subdomain": "dkim._domainkey",
"target": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDhnjYV76s63M4zVRTjVf5Z/fTO6Rq3o4DXg62FCgAxQOYB9ANXeBvUPokT+p5SgjGC8HwBYIzzwCTCS6sqHsy8NfnHU1xFH5NcY4LqTopVX//eYpPF+bTwarDVu/lcCxiX4cN84U1yL8lqf0sOJ7ubGlSeZ/SfM/Ppj7Wkh/kBOQIDAQAB",
"ttl": 60,
"zone": "ameliegraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "graf-fam.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871416",
"subdomain": "dkim._domainkey",
"target": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDhnjYV76s63M4zVRTjVf5Z/fTO6Rq3o4DXg62FCgAxQOYB9ANXeBvUPokT+p5SgjGC8HwBYIzzwCTCS6sqHsy8NfnHU1xFH5NcY4LqTopVX//eYpPF+bTwarDVu/lcCxiX4cN84U1yL8lqf0sOJ7ubGlSeZ/SfM/Ppj7Wkh/kBOQIDAQAB",
"ttl": 60,
"zone": "graf-fam.de"
},
"private": "bnVsbA=="
},
{
"index_key": "haumdaucher.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871404",
"subdomain": "dkim._domainkey",
"target": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDhnjYV76s63M4zVRTjVf5Z/fTO6Rq3o4DXg62FCgAxQOYB9ANXeBvUPokT+p5SgjGC8HwBYIzzwCTCS6sqHsy8NfnHU1xFH5NcY4LqTopVX//eYpPF+bTwarDVu/lcCxiX4cN84U1yL8lqf0sOJ7ubGlSeZ/SfM/Ppj7Wkh/kBOQIDAQAB",
"ttl": 60,
"zone": "haumdaucher.de"
},
"private": "bnVsbA=="
},
{
"index_key": "ianaa.art",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871406",
"subdomain": "dkim._domainkey",
"target": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDhnjYV76s63M4zVRTjVf5Z/fTO6Rq3o4DXg62FCgAxQOYB9ANXeBvUPokT+p5SgjGC8HwBYIzzwCTCS6sqHsy8NfnHU1xFH5NcY4LqTopVX//eYpPF+bTwarDVu/lcCxiX4cN84U1yL8lqf0sOJ7ubGlSeZ/SfM/Ppj7Wkh/kBOQIDAQAB",
"ttl": 60,
"zone": "ianaa.art"
},
"private": "bnVsbA=="
},
{
"index_key": "iptize.it",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871419",
"subdomain": "dkim._domainkey",
"target": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDhnjYV76s63M4zVRTjVf5Z/fTO6Rq3o4DXg62FCgAxQOYB9ANXeBvUPokT+p5SgjGC8HwBYIzzwCTCS6sqHsy8NfnHU1xFH5NcY4LqTopVX//eYpPF+bTwarDVu/lcCxiX4cN84U1yL8lqf0sOJ7ubGlSeZ/SfM/Ppj7Wkh/kBOQIDAQAB",
"ttl": 60,
"zone": "iptize.it"
},
"private": "bnVsbA=="
},
{
"index_key": "krassescheisse.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871427",
"subdomain": "dkim._domainkey",
"target": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDhnjYV76s63M4zVRTjVf5Z/fTO6Rq3o4DXg62FCgAxQOYB9ANXeBvUPokT+p5SgjGC8HwBYIzzwCTCS6sqHsy8NfnHU1xFH5NcY4LqTopVX//eYpPF+bTwarDVu/lcCxiX4cN84U1yL8lqf0sOJ7ubGlSeZ/SfM/Ppj7Wkh/kBOQIDAQAB",
"ttl": 60,
"zone": "krassescheisse.de"
},
"private": "bnVsbA=="
},
{
"index_key": "moritzgraf.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871412",
"subdomain": "dkim._domainkey",
"target": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDhnjYV76s63M4zVRTjVf5Z/fTO6Rq3o4DXg62FCgAxQOYB9ANXeBvUPokT+p5SgjGC8HwBYIzzwCTCS6sqHsy8NfnHU1xFH5NcY4LqTopVX//eYpPF+bTwarDVu/lcCxiX4cN84U1yL8lqf0sOJ7ubGlSeZ/SfM/Ppj7Wkh/kBOQIDAQAB",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
}
]
},
{
"mode": "managed",
"type": "ovh_domain_zone_record",
"name": "dmarc_record",
"each": "map",
"provider": "provider.ovh",
"instances": [
{
"index_key": "ameliegraf.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871405",
"subdomain": "_dmarc",
"target": "v=DMARC1; p=reject; rua=none; ruf=mailto:admin@moritzgraf.de; adkim=s; aspf=s",
"ttl": 60,
"zone": "ameliegraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "graf-fam.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871403",
"subdomain": "_dmarc",
"target": "v=DMARC1; p=reject; rua=none; ruf=mailto:admin@moritzgraf.de; adkim=s; aspf=s",
"ttl": 60,
"zone": "graf-fam.de"
},
"private": "bnVsbA=="
},
{
"index_key": "haumdaucher.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871417",
"subdomain": "_dmarc",
"target": "v=DMARC1; p=reject; rua=none; ruf=mailto:admin@moritzgraf.de; adkim=s; aspf=s",
"ttl": 60,
"zone": "haumdaucher.de"
},
"private": "bnVsbA=="
},
{
"index_key": "ianaa.art",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871411",
"subdomain": "_dmarc",
"target": "v=DMARC1; p=reject; rua=none; ruf=mailto:admin@moritzgraf.de; adkim=s; aspf=s",
"ttl": 60,
"zone": "ianaa.art"
},
"private": "bnVsbA=="
},
{
"index_key": "iptize.it",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871413",
"subdomain": "_dmarc",
"target": "v=DMARC1; p=reject; rua=none; ruf=mailto:admin@moritzgraf.de; adkim=s; aspf=s",
"ttl": 60,
"zone": "iptize.it"
},
"private": "bnVsbA=="
},
{
"index_key": "krassescheisse.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871409",
"subdomain": "_dmarc",
"target": "v=DMARC1; p=reject; rua=none; ruf=mailto:admin@moritzgraf.de; adkim=s; aspf=s",
"ttl": 60,
"zone": "krassescheisse.de"
},
"private": "bnVsbA=="
},
{
"index_key": "moritzgraf.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871410",
"subdomain": "_dmarc",
"target": "v=DMARC1; p=reject; rua=none; ruf=mailto:admin@moritzgraf.de; adkim=s; aspf=s",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
}
]
},
{
"mode": "managed",
"type": "ovh_domain_zone_record",
"name": "haumdaucher_domain",
"provider": "provider.ovh",
"instances": [
{
"schema_version": 0,
"attributes": {
"fieldtype": "A",
"id": "5106871420",
"subdomain": "",
"target": "91.121.64.43",
"ttl": 60,
"zone": "haumdaucher.de"
},
"private": "bnVsbA=="
}
]
},
{
"mode": "managed",
"type": "ovh_domain_zone_record",
"name": "mail_moritzgraf",
"provider": "provider.ovh",
"instances": [
{
"schema_version": 0,
"attributes": {
"fieldtype": "A",
"id": "5106870709",
"subdomain": "mail",
"target": "91.121.64.43",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
}
]
},
{
"mode": "managed",
"type": "ovh_domain_zone_record",
"name": "moritzgraf_subdomains",
"each": "map",
"provider": "provider.ovh",
"instances": [
{
"index_key": "alertmanager",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870451",
"subdomain": "alertmanager",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "auth",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870439",
"subdomain": "auth",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "chat",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870446",
"subdomain": "chat",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "cloud",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870454",
"subdomain": "cloud",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "code",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870455",
"subdomain": "code",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "git",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870436",
"subdomain": "git",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "grafana",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870443",
"subdomain": "grafana",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "hub",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870438",
"subdomain": "hub",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "imap",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870448",
"subdomain": "imap",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "jaeger",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870437",
"subdomain": "jaeger",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "ldap",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870449",
"subdomain": "ldap",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "monitoring",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870447",
"subdomain": "monitoring",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "mqtt",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870444",
"subdomain": "mqtt",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "phpmyadmin",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870440",
"subdomain": "phpmyadmin",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "phppgadmin",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870452",
"subdomain": "phppgadmin",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "pop3",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870453",
"subdomain": "pop3",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "prometheus",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870456",
"subdomain": "prometheus",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "rstudio",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870442",
"subdomain": "rstudio",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "smtp",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870450",
"subdomain": "smtp",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "tt-rss",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870441",
"subdomain": "tt-rss",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "www",
"schema_version": 0,
"attributes": {
"fieldtype": "CNAME",
"id": "5106870435",
"subdomain": "www",
"target": "moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
}
]
},
{
"mode": "managed",
"type": "ovh_domain_zone_record",
"name": "mx_records",
"each": "map",
"provider": "provider.ovh",
"instances": [
{
"index_key": "ameliegraf.de",
"schema_version": 0,
"attributes": {
"fieldtype": "MX",
"id": "5106871399",
"subdomain": "",
"target": "10 mail.moritzgraf.de.",
"ttl": 60,
"zone": "ameliegraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "graf-fam.de",
"schema_version": 0,
"attributes": {
"fieldtype": "MX",
"id": "5106871407",
"subdomain": "",
"target": "10 mail.moritzgraf.de.",
"ttl": 60,
"zone": "graf-fam.de"
},
"private": "bnVsbA=="
},
{
"index_key": "haumdaucher.de",
"schema_version": 0,
"attributes": {
"fieldtype": "MX",
"id": "5106871400",
"subdomain": "",
"target": "10 mail.moritzgraf.de.",
"ttl": 60,
"zone": "haumdaucher.de"
},
"private": "bnVsbA=="
},
{
"index_key": "ianaa.art",
"schema_version": 0,
"attributes": {
"fieldtype": "MX",
"id": "5106871401",
"subdomain": "",
"target": "10 mail.moritzgraf.de.",
"ttl": 60,
"zone": "ianaa.art"
},
"private": "bnVsbA=="
},
{
"index_key": "iptize.it",
"schema_version": 0,
"attributes": {
"fieldtype": "MX",
"id": "5106871414",
"subdomain": "",
"target": "10 mail.moritzgraf.de.",
"ttl": 60,
"zone": "iptize.it"
},
"private": "bnVsbA=="
},
{
"index_key": "krassescheisse.de",
"schema_version": 0,
"attributes": {
"fieldtype": "MX",
"id": "5106871418",
"subdomain": "",
"target": "10 mail.moritzgraf.de.",
"ttl": 60,
"zone": "krassescheisse.de"
},
"private": "bnVsbA=="
},
{
"index_key": "moritzgraf.de",
"schema_version": 0,
"attributes": {
"fieldtype": "MX",
"id": "5106871402",
"subdomain": "",
"target": "10 mail.moritzgraf.de.",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
}
]
},
{
"mode": "managed",
"type": "ovh_domain_zone_record",
"name": "spf_record_spf",
"each": "map",
"provider": "provider.ovh",
"instances": [
{
"index_key": "ameliegraf.de",
"schema_version": 0,
"attributes": {
"fieldtype": "SPF",
"id": "5106871423",
"subdomain": "",
"target": "\"v=spf1 mx a:mail.moritzgraf.de -all\"",
"ttl": 600,
"zone": "ameliegraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "graf-fam.de",
"schema_version": 0,
"attributes": {
"fieldtype": "SPF",
"id": "5106871422",
"subdomain": "",
"target": "\"v=spf1 mx a:mail.moritzgraf.de -all\"",
"ttl": 600,
"zone": "graf-fam.de"
},
"private": "bnVsbA=="
},
{
"index_key": "haumdaucher.de",
"schema_version": 0,
"attributes": {
"fieldtype": "SPF",
"id": "5106871426",
"subdomain": "",
"target": "\"v=spf1 mx a:mail.moritzgraf.de -all\"",
"ttl": 600,
"zone": "haumdaucher.de"
},
"private": "bnVsbA=="
},
{
"index_key": "ianaa.art",
"schema_version": 0,
"attributes": {
"fieldtype": "SPF",
"id": "5106871425",
"subdomain": "",
"target": "\"v=spf1 mx a:mail.moritzgraf.de -all\"",
"ttl": 600,
"zone": "ianaa.art"
},
"private": "bnVsbA=="
},
{
"index_key": "iptize.it",
"schema_version": 0,
"attributes": {
"fieldtype": "SPF",
"id": "5106871415",
"subdomain": "",
"target": "\"v=spf1 mx a:mail.moritzgraf.de -all\"",
"ttl": 600,
"zone": "iptize.it"
},
"private": "bnVsbA=="
},
{
"index_key": "krassescheisse.de",
"schema_version": 0,
"attributes": {
"fieldtype": "SPF",
"id": "5106871424",
"subdomain": "",
"target": "\"v=spf1 mx a:mail.moritzgraf.de -all\"",
"ttl": 600,
"zone": "krassescheisse.de"
},
"private": "bnVsbA=="
},
{
"index_key": "moritzgraf.de",
"schema_version": 0,
"attributes": {
"fieldtype": "SPF",
"id": "5106871421",
"subdomain": "",
"target": "\"v=spf1 mx a:mail.moritzgraf.de -all\"",
"ttl": 600,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
}
]
},
{
"mode": "managed",
"type": "ovh_domain_zone_record",
"name": "spf_record_txt",
"each": "map",
"provider": "provider.ovh",
"instances": [
{
"index_key": "ameliegraf.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871434",
"subdomain": "",
"target": "v=spf1 mx a:mail.moritzgraf.de -all",
"ttl": 60,
"zone": "ameliegraf.de"
},
"private": "bnVsbA=="
},
{
"index_key": "graf-fam.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871432",
"subdomain": "",
"target": "v=spf1 mx a:mail.moritzgraf.de -all",
"ttl": 60,
"zone": "graf-fam.de"
},
"private": "bnVsbA=="
},
{
"index_key": "haumdaucher.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871428",
"subdomain": "",
"target": "v=spf1 mx a:mail.moritzgraf.de -all",
"ttl": 60,
"zone": "haumdaucher.de"
},
"private": "bnVsbA=="
},
{
"index_key": "ianaa.art",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871431",
"subdomain": "",
"target": "v=spf1 mx a:mail.moritzgraf.de -all",
"ttl": 60,
"zone": "ianaa.art"
},
"private": "bnVsbA=="
},
{
"index_key": "iptize.it",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871430",
"subdomain": "",
"target": "v=spf1 mx a:mail.moritzgraf.de -all",
"ttl": 60,
"zone": "iptize.it"
},
"private": "bnVsbA=="
},
{
"index_key": "krassescheisse.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871429",
"subdomain": "",
"target": "v=spf1 mx a:mail.moritzgraf.de -all",
"ttl": 60,
"zone": "krassescheisse.de"
},
"private": "bnVsbA=="
},
{
"index_key": "moritzgraf.de",
"schema_version": 0,
"attributes": {
"fieldtype": "TXT",
"id": "5106871433",
"subdomain": "",
"target": "v=spf1 mx a:mail.moritzgraf.de -all",
"ttl": 60,
"zone": "moritzgraf.de"
},
"private": "bnVsbA=="
}
]
}
]
}