From baa50efccf2f174057a7e1eb01a4307cf13a4173 Mon Sep 17 00:00:00 2001 From: Graham McIntire Date: Thu, 26 Mar 2026 17:53:51 -0500 Subject: [PATCH] update --- CLAUDE.md | 4 +- ansible/group_vars/proxmox_servers.yml | 4 ++ ansible/host_vars/db.towerops.net.yml | 2 +- ansible/host_vars/skippy.w5isp.com.yml | 2 +- ansible/host_vars/staging.towerops.net.yml | 2 +- ansible/hosts | 14 ++--- ansible/roles/firewall/defaults/main.yml | 7 +++ ansible/roles/firewall/tasks/main.yml | 63 +++++++++++++++++++--- cluster/cloudflared/deployment.yaml | 9 +++- tofu/cloudflare.tf | 32 ++++++++++- tofu/terraform.tfstate | 2 +- 11 files changed, 120 insertions(+), 21 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 54dd115..2756ae5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -192,8 +192,8 @@ tofu plan - **Talos Extensions** (workers only): - `iscsi-tools` v0.2.0 — required by Longhorn - `util-linux-tools` 2.41.2 — required by Longhorn - - Installer image: `factory.talos.dev/installer/613e1592b2da41ae5e265e8789429f22e121aab91cb4deb6bc3c0b6262961245:v1.12.4` - - Control plane nodes use the stock `ghcr.io/siderolabs/installer:v1.12.4` + - Installer image: `factory.talos.dev/installer/613e1592b2da41ae5e265e8789429f22e121aab91cb4deb6bc3c0b6262961245:v1.12.6` + - Control plane nodes use the stock `ghcr.io/siderolabs/installer:v1.12.6` - **Deployment**: Managed via OpenTofu in `/tofu/` - **Configuration**: `/talos/` directory - `talosconfig` - Talosctl client config diff --git a/ansible/group_vars/proxmox_servers.yml b/ansible/group_vars/proxmox_servers.yml index 2d4b45e..bbeb4c7 100644 --- a/ansible/group_vars/proxmox_servers.yml +++ b/ansible/group_vars/proxmox_servers.yml @@ -5,3 +5,7 @@ ansible_ssh_private_key_file: /Users/graham/.ssh/id_ed25519 ansible_ssh_common_args: '-o StrictHostKeyChecking=accept-new' firewall_enabled: false + +# Proxmox requires hostname to resolve to actual IP, not loopback +network: + loopback_in_hosts: false diff --git a/ansible/host_vars/db.towerops.net.yml b/ansible/host_vars/db.towerops.net.yml index 99cd274..6c31d5d 100644 --- a/ansible/host_vars/db.towerops.net.yml +++ b/ansible/host_vars/db.towerops.net.yml @@ -1,6 +1,6 @@ --- ansible_user: graham -ansible_host: 100.108.110.128 +ansible_host: db-towerops ansible_python_interpreter: /usr/bin/python3 ansible_ssh_private_key_file: /Users/graham/.ssh/id_ed25519 ansible_ssh_common_args: '-o StrictHostKeyChecking=accept-new' diff --git a/ansible/host_vars/skippy.w5isp.com.yml b/ansible/host_vars/skippy.w5isp.com.yml index e779551..6843cde 100644 --- a/ansible/host_vars/skippy.w5isp.com.yml +++ b/ansible/host_vars/skippy.w5isp.com.yml @@ -1,6 +1,6 @@ --- ansible_user: ansible -ansible_host: 204.110.191.8 +ansible_host: skippy ansible_python_interpreter: /usr/bin/python3 ansible_ssh_private_key_file: /Users/graham/.ssh/ansible ansible_ssh_common_args: '-o StrictHostKeyChecking=accept-new' diff --git a/ansible/host_vars/staging.towerops.net.yml b/ansible/host_vars/staging.towerops.net.yml index 91d7f96..0d6197c 100644 --- a/ansible/host_vars/staging.towerops.net.yml +++ b/ansible/host_vars/staging.towerops.net.yml @@ -1,6 +1,6 @@ --- ansible_user: graham -ansible_host: 204.110.191.231 +ansible_host: staging ansible_python_interpreter: /usr/bin/python3 ansible_ssh_private_key_file: /Users/graham/.ssh/id_ed25519 ansible_ssh_common_args: '-o StrictHostKeyChecking=accept-new' diff --git a/ansible/hosts b/ansible/hosts index e9c4631..7b38603 100755 --- a/ansible/hosts +++ b/ansible/hosts @@ -21,7 +21,7 @@ monitor.vntx.net [home_servers] skippy.w5isp.com -mail.mcintire.me ansible_host=107.174.178.20 +mail.mcintire.me ansible_host=mail dokku.w5isp.com aprs.w5isp.com staging.towerops.net @@ -37,7 +37,7 @@ skippy.w5isp.com [bind9_servers] ns1.as393837.net ansible_host=204.110.191.222 -git.mcintire.me ansible_host=172.245.56.83 +git.mcintire.me ansible_host=git [dns_servers:children] bind9_servers @@ -49,12 +49,14 @@ git.mcintire.me uisp.vntx.net [proxmox_servers] -node1 ansible_host=10.0.15.101 -node2 ansible_host=10.0.15.102 -node3 ansible_host=10.0.15.103 +vm1-380 ansible_host=10.0.0.1 +vm2-380 ansible_host=vm2-380 +node1 ansible_host=node1 +node2 ansible_host=node2 +node3 ansible_host=node3 [postgresql_servers] -db.towerops.net ansible_host=100.108.110.128 +db.towerops.net ansible_host=db-towerops db.aprs.me ansible_host=10.0.15.22 [home_cluster:children] diff --git a/ansible/roles/firewall/defaults/main.yml b/ansible/roles/firewall/defaults/main.yml index 36afef0..cfb988c 100644 --- a/ansible/roles/firewall/defaults/main.yml +++ b/ansible/roles/firewall/defaults/main.yml @@ -10,6 +10,13 @@ firewall_trusted_subnets: firewall_default_incoming: deny firewall_default_outgoing: allow +# Additional IPs allowed to SSH (port 22) to all hosts +firewall_ssh_allow_from: + - ip: 172.245.56.83 + comment: git.mcintire.me + - ip: 107.174.178.20 + comment: mail.mcintire.me + # Per-host rules for publicly exposed services # Override in host_vars or group_vars as needed # Example: diff --git a/ansible/roles/firewall/tasks/main.yml b/ansible/roles/firewall/tasks/main.yml index 857774d..d0a0a0c 100644 --- a/ansible/roles/firewall/tasks/main.yml +++ b/ansible/roles/firewall/tasks/main.yml @@ -36,6 +36,18 @@ loop: "{{ firewall_trusted_subnets }}" when: ansible_os_family == "RedHat" +- name: Allow SSH from specific IPs in firewalld + ansible.posix.firewalld: + zone: public + rich_rule: 'rule family="ipv4" source address="{{ item.ip }}" port port="22" protocol="tcp" accept' + permanent: true + immediate: true + state: enabled + loop: "{{ firewall_ssh_allow_from }}" + when: + - ansible_os_family == "RedHat" + - firewall_ssh_allow_from | length > 0 + - name: Allow per-host public services in firewalld ansible.posix.firewalld: zone: public @@ -48,30 +60,47 @@ - ansible_os_family == "RedHat" - firewall_allow_rules | length > 0 -# --- UFW (Debian/Ubuntu) --- +# --- UFW (Debian/Ubuntu) - Disable when firewall not managed --- + +- name: Disable ufw + ufw: + state: disabled + when: + - ansible_os_family == "Debian" + - not (firewall_enabled | default(true)) + +# --- UFW (Debian/Ubuntu) - Configure when firewall managed --- - name: Reset ufw to defaults ufw: state: reset - when: ansible_os_family == "Debian" + when: + - ansible_os_family == "Debian" + - firewall_enabled | default(true) - name: Set default incoming policy to deny ufw: direction: incoming policy: "{{ firewall_default_incoming }}" - when: ansible_os_family == "Debian" + when: + - ansible_os_family == "Debian" + - firewall_enabled | default(true) - name: Set default outgoing policy to allow ufw: direction: outgoing policy: "{{ firewall_default_outgoing }}" - when: ansible_os_family == "Debian" + when: + - ansible_os_family == "Debian" + - firewall_enabled | default(true) - name: Set default routed policy ufw: direction: routed policy: "{{ firewall_default_routed }}" - when: ansible_os_family == "Debian" + when: + - ansible_os_family == "Debian" + - firewall_enabled | default(true) - name: Allow all traffic from trusted subnets ufw: @@ -79,7 +108,22 @@ from_ip: "{{ item.subnet }}" comment: "{{ item.comment }}" loop: "{{ firewall_trusted_subnets }}" - when: ansible_os_family == "Debian" + when: + - ansible_os_family == "Debian" + - firewall_enabled | default(true) + +- name: Allow SSH from specific IPs + ufw: + rule: allow + port: "22" + proto: tcp + from_ip: "{{ item.ip }}" + comment: "SSH from {{ item.comment }}" + loop: "{{ firewall_ssh_allow_from }}" + when: + - ansible_os_family == "Debian" + - firewall_enabled | default(true) + - firewall_ssh_allow_from | length > 0 - name: Allow per-host public services ufw: @@ -90,6 +134,7 @@ loop: "{{ firewall_allow_rules }}" when: - ansible_os_family == "Debian" + - firewall_enabled | default(true) - firewall_allow_rules | length > 0 - name: Enable IP forwarding @@ -101,6 +146,7 @@ reload: true when: - ansible_os_family == "Debian" + - firewall_enabled | default(true) - firewall_ip_forward - name: Configure NAT masquerade rules in ufw before.rules @@ -116,10 +162,13 @@ loop: "{{ firewall_masquerade_rules }}" when: - ansible_os_family == "Debian" + - firewall_enabled | default(true) - firewall_masquerade_rules | length > 0 notify: Reload ufw - name: Enable ufw ufw: state: enabled - when: ansible_os_family == "Debian" + when: + - ansible_os_family == "Debian" + - firewall_enabled | default(true) diff --git a/cluster/cloudflared/deployment.yaml b/cluster/cloudflared/deployment.yaml index 14799c3..fc5b0b5 100644 --- a/cluster/cloudflared/deployment.yaml +++ b/cluster/cloudflared/deployment.yaml @@ -5,7 +5,7 @@ metadata: name: cloudflared namespace: cloudflared spec: - replicas: 2 + replicas: 3 selector: matchLabels: app: cloudflared @@ -14,6 +14,13 @@ spec: labels: app: cloudflared spec: + affinity: + podAntiAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + - labelSelector: + matchLabels: + app: cloudflared + topologyKey: kubernetes.io/hostname containers: - name: cloudflared image: cloudflare/cloudflared:latest diff --git a/tofu/cloudflare.tf b/tofu/cloudflare.tf index 6f79a75..6cf7aaf 100644 --- a/tofu/cloudflare.tf +++ b/tofu/cloudflare.tf @@ -239,6 +239,36 @@ resource "cloudflare_record" "aprs_me_tunnel" { proxied = true } +# aprs.me - Resend email (DKIM, SPF, DMARC, MX) +resource "cloudflare_record" "aprs_me_dkim_resend" { + zone_id = cloudflare_zone.zones["aprs.me"].id + type = "TXT" + name = "resend._domainkey" + content = "p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrIhTzL7qrNSdbVOWG2WVwXpKrRrkHY4w/giB7JGl9Hj23z1qIQNh8aNyvDaC0Eosf1013TSWvS+bFMETc5kQZ6lQDq6pvZxHeKbAGH1FvUDVQ2uhjV77Qopf95SdoDKsod3hRnfn4kNZBQ2GfrbJmqobIsQRT8IHFA3XOjOn/jwIDAQAB" +} + +resource "cloudflare_record" "aprs_me_mx_send" { + zone_id = cloudflare_zone.zones["aprs.me"].id + type = "MX" + name = "send" + content = "feedback-smtp.us-east-1.amazonses.com" + priority = 10 +} + +resource "cloudflare_record" "aprs_me_spf_send" { + zone_id = cloudflare_zone.zones["aprs.me"].id + type = "TXT" + name = "send" + content = "v=spf1 include:amazonses.com ~all" +} + +resource "cloudflare_record" "aprs_me_dmarc" { + zone_id = cloudflare_zone.zones["aprs.me"].id + type = "TXT" + name = "_dmarc" + content = "v=DMARC1; p=none;" +} + resource "cloudflare_record" "gridmap_org_tunnel" { zone_id = cloudflare_zone.zones["gridmap.org"].id type = "CNAME" @@ -399,7 +429,7 @@ resource "cloudflare_ruleset" "towerops_firewall" { # Allow agent WebSocket connections (must come before block rules) rules { - action = "skip" + action = "skip" action_parameters { ruleset = "current" } diff --git a/tofu/terraform.tfstate b/tofu/terraform.tfstate index b3849ad..ad5e483 100644 --- a/tofu/terraform.tfstate +++ b/tofu/terraform.tfstate @@ -1 +1 @@ -{"version":4,"terraform_version":"1.11.5","serial":29,"lineage":"aada9e42-4c37-f0e0-91fa-f89b3caac095","outputs":{},"resources":[{"mode":"managed","type":"cloudflare_record","name":"aprs_me_tunnel","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"d3d819ba-925c-4d84-8052-68ed32b686bb.cfargotunnel.com","created_on":"2026-02-18T18:34:56.202856Z","data":[],"hostname":"aprs.me","id":"52fe06c580f9bc70a4ff4a6978de8ea7","metadata":{},"modified_on":"2026-02-18T18:34:56.202856Z","name":"aprs.me","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"caa","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"index_key":"aprs.me-letsencrypt.org","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"letsencrypt.org\"","created_on":"2026-02-25T19:20:24.920388Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"letsencrypt.org","weight":0}],"hostname":"aprs.me","id":"e9f4343f7c0dd97351b6868d48ac3ffc","metadata":{},"modified_on":"2026-02-25T19:20:24.920388Z","name":"aprs.me","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"aprs.me-pki.goog","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"pki.goog\"","created_on":"2026-02-25T19:20:24.931937Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"pki.goog","weight":0}],"hostname":"aprs.me","id":"312b7a4e5ef24aa39d0d644448b42ba1","metadata":{},"modified_on":"2026-02-25T19:20:24.931937Z","name":"aprs.me","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"aprs.me-sectigo.com","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"sectigo.com\"","created_on":"2026-02-25T19:20:23.4046Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"sectigo.com","weight":0}],"hostname":"aprs.me","id":"a03268c868921324d93c424b75a66123","metadata":{},"modified_on":"2026-02-25T19:20:23.4046Z","name":"aprs.me","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"aprs.me-ssl.com","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"ssl.com\"","created_on":"2026-02-25T19:20:23.757538Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"ssl.com","weight":0}],"hostname":"aprs.me","id":"ca710bf09e7b007ed13e55f6cb3b72ba","metadata":{},"modified_on":"2026-02-25T19:20:23.757538Z","name":"aprs.me","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"gridmap.org-letsencrypt.org","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"letsencrypt.org\"","created_on":"2026-02-25T19:20:26.213276Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"letsencrypt.org","weight":0}],"hostname":"gridmap.org","id":"ec4d9e50c72f265010b4dc56db1f21f7","metadata":{},"modified_on":"2026-02-25T19:20:26.213276Z","name":"gridmap.org","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"gridmap.org-pki.goog","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"pki.goog\"","created_on":"2026-02-25T19:20:25.34753Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"pki.goog","weight":0}],"hostname":"gridmap.org","id":"bf2e711ac3abb681fc725daa2e0a2c53","metadata":{},"modified_on":"2026-02-25T19:20:25.34753Z","name":"gridmap.org","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"gridmap.org-sectigo.com","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"sectigo.com\"","created_on":"2026-02-25T19:20:26.603772Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"sectigo.com","weight":0}],"hostname":"gridmap.org","id":"8175bf30b3d31b82c4c1b85af252ac7e","metadata":{},"modified_on":"2026-02-25T19:20:26.603772Z","name":"gridmap.org","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"gridmap.org-ssl.com","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"ssl.com\"","created_on":"2026-02-25T19:20:23.273147Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"ssl.com","weight":0}],"hostname":"gridmap.org","id":"03749ab647ee85cdf0bb7ba8bcbba3c1","metadata":{},"modified_on":"2026-02-25T19:20:23.273147Z","name":"gridmap.org","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"gridmap_org_tunnel","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"d3d819ba-925c-4d84-8052-68ed32b686bb.cfargotunnel.com","created_on":"2026-02-18T18:34:53.58717Z","data":[],"hostname":"gridmap.org","id":"8b218c8e8e8a78aa8c30a5e82e63dbdc","metadata":{},"modified_on":"2026-02-18T18:34:53.58717Z","name":"gridmap.org","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"records","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"index_key":"towerops.net-a-dfw-poller","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"144.202.64.79","created_on":"2026-02-04T18:34:31.048255Z","data":[],"hostname":"dfw.poller.towerops.net","id":"aa8183b748f1bf0e3850d9dabb91ee3a","metadata":{},"modified_on":"2026-02-04T18:34:31.048255Z","name":"dfw.poller","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"A","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-a-lon-poller","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"45.77.228.168","created_on":"2026-02-08T17:23:07.876902Z","data":[],"hostname":"lon.poller.towerops.net","id":"2a25c3ee47284833cea451170d3bd61d","metadata":{},"modified_on":"2026-02-08T17:23:07.876902Z","name":"lon.poller","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"A","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-a-staging","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"204.110.191.231","created_on":"2026-02-09T18:23:25.894749Z","data":[],"hostname":"staging.towerops.net","id":"8430e2789d5700c556dc7a598d49d8fd","metadata":{},"modified_on":"2026-02-09T18:44:11.107671Z","name":"staging","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"A","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-a-www","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"Created during Cloudflare Rules deployment process for Redirect from WWW to root [Template]","content":"192.0.2.1","created_on":"2026-02-01T16:08:06.434962Z","data":[],"hostname":"www.towerops.net","id":"689c47b0e5ed68427f2c3b9e25bdf602","metadata":{},"modified_on":"2026-02-01T16:08:06.434962Z","name":"www","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"A","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-aaaa-dfw-poller","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"2001:19f0:6401:af2:5400:5ff:fee7:1bfb","created_on":"2026-02-04T18:34:31.174197Z","data":[],"hostname":"dfw.poller.towerops.net","id":"2edc0cf203313e67d64316daf8a0490e","metadata":{},"modified_on":"2026-02-04T18:34:31.174197Z","name":"dfw.poller","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"AAAA","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-aaaa-lon-poller","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"2001:19f0:7400:1195:5400:5ff:feee:a0c3","created_on":"2026-02-08T17:24:02.914425Z","data":[],"hostname":"lon.poller.towerops.net","id":"610f21b8597a1ce6ad4020f15311787a","metadata":{},"modified_on":"2026-02-08T17:24:02.914425Z","name":"lon.poller","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"AAAA","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-autoconfig","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"mail.mcintire.me","created_on":"2026-01-31T21:12:11.834659Z","data":[],"hostname":"autoconfig.towerops.net","id":"1c0f59e7bd583f8971f50231e6fad3cf","metadata":{},"modified_on":"2026-02-18T18:21:20.964531Z","name":"autoconfig","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-autodiscover","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"mail.mcintire.me","created_on":"2026-01-31T21:12:11.813721Z","data":[],"hostname":"autodiscover.towerops.net","id":"34a4a9bde8cf4626635cfa3cb5f8c408","metadata":{},"modified_on":"2026-02-18T18:21:21.959176Z","name":"autodiscover","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-dev","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"db59aa44-79de-4522-9593-43e828f3215a.cfargotunnel.com","created_on":"2026-02-01T16:17:24.029892Z","data":[],"hostname":"dev.towerops.net","id":"21b470e19493c856ce697052dabc90e5","metadata":{},"modified_on":"2026-02-18T18:21:15.242958Z","name":"dev","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-dkim-ses-1","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"2skkb53ep3vfbkdstfmm2elfthurggid.dkim.amazonses.com","created_on":"2026-02-06T14:56:00.620182Z","data":[],"hostname":"2skkb53ep3vfbkdstfmm2elfthurggid._domainkey.towerops.net","id":"f4a446531128011a1a6b896010983901","metadata":{},"modified_on":"2026-02-18T18:21:23.474077Z","name":"2skkb53ep3vfbkdstfmm2elfthurggid._domainkey","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-dkim-ses-2","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"4uwsaywjpmk35j36pfiz4vr37dyy4v7z.dkim.amazonses.com","created_on":"2026-02-06T14:56:00.429727Z","data":[],"hostname":"4uwsaywjpmk35j36pfiz4vr37dyy4v7z._domainkey.towerops.net","id":"aefc5c72e25e3656dbccf0fdf2fc6f48","metadata":{},"modified_on":"2026-02-18T18:21:18.993371Z","name":"4uwsaywjpmk35j36pfiz4vr37dyy4v7z._domainkey","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-dkim-ses-3","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"l7lbifvot6nv3wwho5rs35xzqzzinz5f.dkim.amazonses.com","created_on":"2026-02-06T14:56:00.400622Z","data":[],"hostname":"l7lbifvot6nv3wwho5rs35xzqzzinz5f._domainkey.towerops.net","id":"02a4cfa316dae29898a8270f2c3aceda","metadata":{},"modified_on":"2026-02-18T18:21:15.477573Z","name":"l7lbifvot6nv3wwho5rs35xzqzzinz5f._domainkey","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-root","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"d3d819ba-925c-4d84-8052-68ed32b686bb.cfargotunnel.com","created_on":"2026-01-31T21:20:07.097359Z","data":[],"hostname":"towerops.net","id":"cf1bc4e745466032786db854f4294f99","metadata":{},"modified_on":"2026-02-18T18:21:17.216154Z","name":"towerops.net","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-mx-mail","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"feedback-smtp.us-east-1.amazonses.com","created_on":"2026-01-31T21:12:11.92231Z","data":[],"hostname":"mail.towerops.net","id":"a2486e2bbb4d6aca978d28807893e346","metadata":{},"modified_on":"2026-01-31T21:12:11.92231Z","name":"mail","priority":10,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"MX","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-mx-root-backup","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"mail.nsnw.ca","created_on":"2026-01-31T21:12:11.783987Z","data":[],"hostname":"towerops.net","id":"bbd552d191e61345f19f8dae10281f9e","metadata":{},"modified_on":"2026-01-31T21:12:11.783987Z","name":"towerops.net","priority":20,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"MX","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-mx-root-primary","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"mail.mcintire.me","created_on":"2026-01-31T21:12:11.794166Z","data":[],"hostname":"towerops.net","id":"a5dc7d6dc6d9085132a8fa0b7db1b69a","metadata":{},"modified_on":"2026-01-31T21:12:11.794166Z","name":"towerops.net","priority":10,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"MX","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-txt-dkim","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"v=DKIM1;k=rsa;t=s;s=email;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuFm6nd0L7/nAO4m0MPxdjwRAup5C90DPSPa0TQBDT8S2WvASyQUPV8xSbICGMj6FjZYNd5ph/0VK47gDulxQgNQT96IVf2ooTfkvY/80bAyEdtJbpjEUzQnX5YBi/pJigQx2EeCdaojUZumeIdlFlzeb8QQIEtQhVnyc1Xc/Z8ljPMW1H9DXLSDINjV6UTaXX+PZ7jgpRKgU+RnJNcqTAkhhKQ4bMcRfOam/lF6wPOWte1A7ir08TdE8O67ioqygkr/ivAp7xvV4vGOkY6buLLE+c3exY+my2qTCZgJyUMAhkZzYqzGo1csfHH8x+O2XN/k8Z5jPhq8LSvl9XkllKwIDAQAB","created_on":"2026-01-31T21:12:11.932177Z","data":[],"hostname":"dkim._domainkey.towerops.net","id":"3872e537e8cee4087ead7eb5785e1426","metadata":{},"modified_on":"2026-02-03T19:17:59.246248Z","name":"dkim._domainkey","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-txt-dmarc","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"v=DMARC1; p=none;","created_on":"2026-01-31T21:12:11.846177Z","data":[],"hostname":"_dmarc.towerops.net","id":"bd236f9a89fc42f45fd7f4b076478880","metadata":{},"modified_on":"2026-02-03T19:17:59.427606Z","name":"_dmarc","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-txt-mail-spf","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"v=spf1 include:amazonses.com ~all","created_on":"2026-01-31T21:12:11.939949Z","data":[],"hostname":"mail.towerops.net","id":"76b8314432391c6630e9e1b2edfce65d","metadata":{},"modified_on":"2026-02-03T19:18:00.631343Z","name":"mail","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-txt-spf","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"v=spf1 mx a ip4:107.174.178.20 ~all","created_on":"2026-01-31T21:12:11.825178Z","data":[],"hostname":"towerops.net","id":"cf2f74d345960700a81a6025e7a89642","metadata":{},"modified_on":"2026-02-03T19:17:59.830149Z","name":"towerops.net","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"towerops_srv_autodiscover","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 443 mail.mcintire.me","created_on":"2026-01-31T21:12:11.914868Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":443,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"","target":"mail.mcintire.me","type":0,"usage":0,"value":"","weight":0}],"hostname":"_autodiscover._tcp.towerops.net","id":"26db78978535d1d630432970b9a4e279","metadata":{},"modified_on":"2026-01-31T21:12:11.914868Z","name":"_autodiscover._tcp","priority":0,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"SRV","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_ruleset","name":"aprs_me_firewall","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":1,"attributes":{"account_id":null,"description":"","id":"9a107a7272a14c05b9e0e747b5a93bf7","kind":"zone","name":"default","phase":"http_request_firewall_custom","rules":[{"action":"block","action_parameters":[],"description":"block abusers","enabled":true,"exposed_credential_check":[],"expression":"(ip.src.country in {\"KP\" \"RU\" \"CN\" \"SY\" \"MM\" \"VE\" \"IQ\" \"LY\" \"SO\" \"YE\" \"SS\"}) or (http.request.uri.path contains \".php\") or (http.request.uri.path contains \"/wp-content\") or (http.request.uri.path contains \"/wp-login\") or (http.request.uri.path contains \"/wp-admin\") or (http.request.uri.path contains \"/wp-includes\") or (http.request.uri.path contains \"/xmlrpc.php\") or (http.request.uri.path contains \"wlwmanifest.xml\") or (http.request.uri.path contains \"/.env\") or (http.request.uri.path contains \"/.git\") or (http.request.uri.path contains \"/phpmyadmin\") or (http.request.uri.path contains \"/cgi-bin\") or (not http.user_agent ne \"\")","id":"6bbd814f49634e3997386d6fa1193e4e","logging":[],"ratelimit":[],"ref":"6bbd814f49634e3997386d6fa1193e4e"}],"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_ruleset","name":"gridmap_firewall","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":1,"attributes":{"account_id":null,"description":"","id":"7dfc79c24a22439ea501865479822df8","kind":"zone","name":"default","phase":"http_request_firewall_custom","rules":[{"action":"block","action_parameters":[],"description":"block abusers","enabled":true,"exposed_credential_check":[],"expression":"(ip.src.country in {\"KP\" \"RU\" \"CN\" \"SY\" \"MM\" \"VE\" \"IQ\" \"LY\" \"SO\" \"YE\" \"SS\"}) or (http.request.uri.path contains \".php\") or (http.request.uri.path contains \"/wp-content\") or (http.request.uri.path contains \"/wp-login\") or (http.request.uri.path contains \"/wp-admin\") or (http.request.uri.path contains \"/wp-includes\") or (http.request.uri.path contains \"/xmlrpc.php\") or (http.request.uri.path contains \"wlwmanifest.xml\") or (http.request.uri.path contains \"/.env\") or (http.request.uri.path contains \"/.git\") or (http.request.uri.path contains \"/phpmyadmin\") or (http.request.uri.path contains \"/cgi-bin\") or (not http.user_agent ne \"\")","id":"b90e87338cd84bd4a8caad80851eb539","logging":[],"ratelimit":[],"ref":"b90e87338cd84bd4a8caad80851eb539"}],"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_ruleset","name":"towerops_firewall","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":1,"attributes":{"account_id":null,"description":"","id":"3c209e50f21b40388733a7cfe8f62f4e","kind":"zone","name":"default","phase":"http_request_firewall_custom","rules":[{"action":"skip","action_parameters":[{"additional_cacheable_ports":null,"algorithms":[],"automatic_https_rewrites":null,"autominify":[],"bic":null,"browser_ttl":[],"cache":null,"cache_key":[],"cache_reserve":[],"content":null,"content_type":null,"cookie_fields":null,"disable_apps":null,"disable_railgun":null,"disable_rum":null,"disable_zaraz":null,"edge_ttl":[],"email_obfuscation":null,"fonts":null,"from_list":[],"from_value":[],"headers":[],"host_header":null,"hotlink_protection":null,"id":null,"increment":null,"matched_data":[],"mirage":null,"opportunistic_encryption":null,"origin":[],"origin_cache_control":null,"origin_error_page_passthru":null,"overrides":[],"phases":null,"polish":null,"products":null,"read_timeout":null,"request_fields":null,"respect_strong_etags":null,"response":[],"response_fields":null,"rocket_loader":null,"rules":null,"ruleset":"current","rulesets":null,"security_level":null,"serve_stale":[],"server_side_excludes":null,"sni":[],"ssl":null,"status_code":null,"sxg":null,"uri":[]}],"description":"allow agent websocket connections","enabled":true,"exposed_credential_check":[],"expression":"(http.request.uri.path eq \"/socket/agent/websocket\")","id":"9016d5312697421c8687a7389f4a4a4d","logging":[{"enabled":false}],"ratelimit":[],"ref":"9016d5312697421c8687a7389f4a4a4d"},{"action":"block","action_parameters":[],"description":"block abusers","enabled":true,"exposed_credential_check":[],"expression":"(ip.src.country in {\"KP\" \"RU\" \"CN\" \"SY\" \"MM\" \"VE\" \"IQ\" \"LY\" \"SO\" \"YE\" \"SS\"}) or (http.request.uri.path contains \".php\") or (http.request.uri.path contains \"/wp-content\") or (http.request.uri.path contains \"/wp-login\") or (http.request.uri.path contains \"/wp-admin\") or (http.request.uri.path contains \"/wp-includes\") or (http.request.uri.path contains \"/xmlrpc.php\") or (http.request.uri.path contains \"wlwmanifest.xml\") or (http.request.uri.path contains \"/.env\") or (http.request.uri.path contains \"/.git\") or (http.request.uri.path contains \"/phpmyadmin\") or (http.request.uri.path contains \"/cgi-bin\") or (not http.user_agent ne \"\")","id":"2c5dccdb7aed4c18aaf8532fd19275eb","logging":[],"ratelimit":[],"ref":"2c5dccdb7aed4c18aaf8532fd19275eb"}],"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_zero_trust_tunnel_cloudflared_config","name":"towerops","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":0,"attributes":{"account_id":"4d18148a82b0a91f289afbbd2944a603","config":[{"ingress_rule":[{"hostname":"aprs.me","origin_request":[],"path":"","service":"http://aprs.aprs.svc.cluster.local:4000"},{"hostname":"gridmap.org","origin_request":[],"path":"","service":"http://gridmap.gridmap.svc.cluster.local:4000"},{"hostname":"towerops.net","origin_request":[],"path":"","service":"http://towerops.towerops.svc.cluster.local:4000"},{"hostname":"","origin_request":[],"path":"","service":"http_status:404"}],"origin_request":[],"warp_routing":[]}],"id":"d3d819ba-925c-4d84-8052-68ed32b686bb","tunnel_id":"d3d819ba-925c-4d84-8052-68ed32b686bb"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ=="}]},{"mode":"managed","type":"cloudflare_zero_trust_tunnel_cloudflared_config","name":"towerops_dev","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":0,"attributes":{"account_id":"4d18148a82b0a91f289afbbd2944a603","config":[{"ingress_rule":[{"hostname":"dev.towerops.net","origin_request":[],"path":"","service":"http://localhost:4000"},{"hostname":"","origin_request":[],"path":"","service":"http_status:404"}],"origin_request":[],"warp_routing":[]}],"id":"db59aa44-79de-4522-9593-43e828f3215a","tunnel_id":"db59aa44-79de-4522-9593-43e828f3215a"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ=="}]},{"mode":"managed","type":"cloudflare_zone","name":"zones","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"index_key":"aprs.me","schema_version":0,"attributes":{"account_id":"4d18148a82b0a91f289afbbd2944a603","id":"09da59049b0ecad7b734ce3d902bf581","jump_start":null,"meta":{"phishing_detected":false,"wildcard_proxiable":false},"name_servers":["arch.ns.cloudflare.com","tani.ns.cloudflare.com"],"paused":false,"plan":"free","status":"active","type":"full","vanity_name_servers":[],"verification_key":"","zone":"aprs.me"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ=="},{"index_key":"gridmap.org","schema_version":0,"attributes":{"account_id":"4d18148a82b0a91f289afbbd2944a603","id":"836f24d97eb51ffc18aa10c0a98efa48","jump_start":null,"meta":{"phishing_detected":false,"wildcard_proxiable":false},"name_servers":["arch.ns.cloudflare.com","tani.ns.cloudflare.com"],"paused":false,"plan":"free","status":"active","type":"full","vanity_name_servers":[],"verification_key":"","zone":"gridmap.org"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ=="},{"index_key":"towerops.net","schema_version":0,"attributes":{"account_id":"4d18148a82b0a91f289afbbd2944a603","id":"c275d35a8885de79ca8e61c17ac97ab6","jump_start":null,"meta":{"phishing_detected":false,"wildcard_proxiable":false},"name_servers":["arch.ns.cloudflare.com","tani.ns.cloudflare.com"],"paused":false,"plan":"free","status":"active","type":"full","vanity_name_servers":[],"verification_key":"","zone":"towerops.net"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ=="}]},{"mode":"managed","type":"cloudflare_zone_settings_override","name":"aprs_me","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":2,"attributes":{"id":"09da59049b0ecad7b734ce3d902bf581","initial_settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"off","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.0","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"off","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":false,"include_subdomains":false,"max_age":0,"nosniff":false,"preload":false}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"full","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"on","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"off","websockets":"on","zero_rtt":"off"}],"initial_settings_read_at":"2026-02-25T19:03:59.962087Z","readonly_settings":["advanced_ddos","http2","long_lived_grpc","mirage","origin_error_page_pass_thru","polish","prefetch_preload","proxy_read_timeout","response_buffering","sort_query_string_for_cache","true_client_ip_header","webp","image_resizing"],"settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"on","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.2","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"off","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":true,"include_subdomains":true,"max_age":15552000,"nosniff":true,"preload":true}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"strict","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"zrt","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"","websockets":"on","zero_rtt":"on"}],"zone_id":"09da59049b0ecad7b734ce3d902bf581","zone_status":"active","zone_type":"full"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjIifQ==","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_zone_settings_override","name":"gridmap_org","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":2,"attributes":{"id":"836f24d97eb51ffc18aa10c0a98efa48","initial_settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"off","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.0","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"off","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":false,"include_subdomains":false,"max_age":0,"nosniff":false,"preload":false}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"full","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"on","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"off","websockets":"on","zero_rtt":"off"}],"initial_settings_read_at":"2026-02-25T19:04:25.78697Z","readonly_settings":["advanced_ddos","http2","long_lived_grpc","mirage","origin_error_page_pass_thru","polish","prefetch_preload","proxy_read_timeout","response_buffering","sort_query_string_for_cache","true_client_ip_header","webp","image_resizing"],"settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"on","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.2","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"off","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":true,"include_subdomains":true,"max_age":15552000,"nosniff":true,"preload":true}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"strict","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"zrt","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"","websockets":"on","zero_rtt":"on"}],"zone_id":"836f24d97eb51ffc18aa10c0a98efa48","zone_status":"active","zone_type":"full"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjIifQ==","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_zone_settings_override","name":"towerops_net","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":2,"attributes":{"id":"c275d35a8885de79ca8e61c17ac97ab6","initial_settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"on","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.2","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"add_header","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":true,"include_subdomains":false,"max_age":15552000,"nosniff":true,"preload":true}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"full","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"zrt","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"off","websockets":"on","zero_rtt":"on"}],"initial_settings_read_at":"2026-02-25T19:04:04.422661Z","readonly_settings":["advanced_ddos","http2","long_lived_grpc","mirage","origin_error_page_pass_thru","polish","prefetch_preload","proxy_read_timeout","response_buffering","sort_query_string_for_cache","true_client_ip_header","webp","image_resizing"],"settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"on","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.2","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"add_header","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":true,"include_subdomains":true,"max_age":15552000,"nosniff":true,"preload":true}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"full","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"zrt","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"","websockets":"on","zero_rtt":"on"}],"zone_id":"c275d35a8885de79ca8e61c17ac97ab6","zone_status":"active","zone_type":"full"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjIifQ==","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"porkbun_dns_record","name":"ammocpr_com_a_root","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"204.110.191.231","domain":"ammocpr.com","id":529716883,"notes":"","prio":0,"subdomain":"","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_ca","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"167.114.209.151","domain":"manero.org","id":529396999,"notes":"","prio":0,"subdomain":"ca","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_irc","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"149.28.242.178","domain":"manero.org","id":529396990,"notes":"","prio":0,"subdomain":"irc","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_root_1","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"185.199.108.153","domain":"manero.org","id":529396998,"notes":"","prio":0,"subdomain":"","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_root_2","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"185.199.109.153","domain":"manero.org","id":529396984,"notes":"","prio":0,"subdomain":"","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_root_3","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"185.199.110.153","domain":"manero.org","id":529396983,"notes":"","prio":0,"subdomain":"","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_root_4","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"185.199.111.153","domain":"manero.org","id":529396986,"notes":"","prio":0,"subdomain":"","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_tankfox","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"137.184.202.89","domain":"manero.org","id":529396993,"notes":"","prio":0,"subdomain":"tankfox","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_us","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"149.28.242.178","domain":"manero.org","id":529396987,"notes":"","prio":0,"subdomain":"us","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_aaaa_us","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"2001:19f0:6401:19e6:5400:5ff:fe45:5701","domain":"manero.org","id":529396985,"notes":"","prio":0,"subdomain":"us","ttl":600,"type":"AAAA"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_cname_404","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"404.al.","domain":"manero.org","id":529396992,"notes":"","prio":0,"subdomain":"404","ttl":600,"type":"CNAME"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_nameservers","name":"domains","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"index_key":"ammocpr.com","schema_version":0,"attributes":{"domain":"ammocpr.com","nameservers":["curitiba.ns.porkbun.com","fortaleza.ns.porkbun.com","maceio.ns.porkbun.com","salvador.ns.porkbun.com"]},"sensitive_attributes":[]},{"index_key":"aprs.me","schema_version":0,"attributes":{"domain":"aprs.me","nameservers":["arch.ns.cloudflare.com","tani.ns.cloudflare.com"]},"sensitive_attributes":[]},{"index_key":"beanjar.org","schema_version":0,"attributes":{"domain":"beanjar.org","nameservers":["ns-global.kjsl.com","ns1.as393837.net","ns2.as393837.net"]},"sensitive_attributes":[]},{"index_key":"gridmap.org","schema_version":0,"attributes":{"domain":"gridmap.org","nameservers":["arch.ns.cloudflare.com","tani.ns.cloudflare.com"]},"sensitive_attributes":[]},{"index_key":"gunincrements.com","schema_version":0,"attributes":{"domain":"gunincrements.com","nameservers":["curitiba.ns.porkbun.com","fortaleza.ns.porkbun.com","maceio.ns.porkbun.com","salvador.ns.porkbun.com"]},"sensitive_attributes":[]},{"index_key":"manero.org","schema_version":0,"attributes":{"domain":"manero.org","nameservers":["curitiba.ns.porkbun.com","fortaleza.ns.porkbun.com","maceio.ns.porkbun.com","salvador.ns.porkbun.com"]},"sensitive_attributes":[]},{"index_key":"mcintire.me","schema_version":0,"attributes":{"domain":"mcintire.me","nameservers":["ns-global.kjsl.com","ns1.as393837.net","ns2.as393837.net"]},"sensitive_attributes":[]},{"index_key":"ntxarms.com","schema_version":0,"attributes":{"domain":"ntxarms.com","nameservers":["ns-global.kjsl.com","ns1.as393837.net","ns2.as393837.net"]},"sensitive_attributes":[]},{"index_key":"qth.social","schema_version":0,"attributes":{"domain":"qth.social","nameservers":["curitiba.ns.porkbun.com","fortaleza.ns.porkbun.com","maceio.ns.porkbun.com","salvador.ns.porkbun.com"]},"sensitive_attributes":[]},{"index_key":"vntx.org","schema_version":0,"attributes":{"domain":"vntx.org","nameservers":["ns-global.kjsl.com","ns1.as393837.net","ns2.as393837.net"]},"sensitive_attributes":[]},{"index_key":"w5isp.com","schema_version":0,"attributes":{"domain":"w5isp.com","nameservers":["ns-global.kjsl.com","ns1.as393837.net","ns2.as393837.net"]},"sensitive_attributes":[]}]}],"check_results":null} +{"version":4,"terraform_version":"1.11.5","serial":32,"lineage":"aada9e42-4c37-f0e0-91fa-f89b3caac095","outputs":{},"resources":[{"mode":"managed","type":"cloudflare_record","name":"aprs_me_dkim_resend","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrIhTzL7qrNSdbVOWG2WVwXpKrRrkHY4w/giB7JGl9Hj23z1qIQNh8aNyvDaC0Eosf1013TSWvS+bFMETc5kQZ6lQDq6pvZxHeKbAGH1FvUDVQ2uhjV77Qopf95SdoDKsod3hRnfn4kNZBQ2GfrbJmqobIsQRT8IHFA3XOjOn/jwIDAQAB","created_on":"2026-03-22T18:42:43.505797Z","data":[],"hostname":"resend._domainkey.aprs.me","id":"24f990bae1462b16bd5ceaa14f351fcb","metadata":{},"modified_on":"2026-03-22T18:42:43.505797Z","name":"resend._domainkey","priority":null,"proxiable":false,"proxied":false,"tags":null,"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"aprs_me_dmarc","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"v=DMARC1; p=none;","created_on":"2026-03-22T18:42:44.003775Z","data":[],"hostname":"_dmarc.aprs.me","id":"b8fffe360ee182f08cc490bb93240a19","metadata":{},"modified_on":"2026-03-22T18:42:44.003775Z","name":"_dmarc","priority":null,"proxiable":false,"proxied":false,"tags":null,"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"aprs_me_mx_send","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":3,"attributes":{"allow_overwrite":null,"comment":"","content":null,"created_on":"2026-03-22T18:39:33.038889Z","data":[],"hostname":"send.aprs.me","id":"d9703f069f35a7ea288f5c5d0fa22e12","metadata":{},"modified_on":"2026-03-22T18:39:33.038889Z","name":"send","priority":10,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":3600,"type":"MX","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9"}]},{"mode":"managed","type":"cloudflare_record","name":"aprs_me_spf_send","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"v=spf1 include:amazonses.com ~all","created_on":"2026-03-22T18:42:44.348413Z","data":[],"hostname":"send.aprs.me","id":"30b94ea865fe074f233d4f5c8191bc93","metadata":{},"modified_on":"2026-03-22T18:42:44.348413Z","name":"send","priority":null,"proxiable":false,"proxied":false,"tags":null,"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"aprs_me_tunnel","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"d3d819ba-925c-4d84-8052-68ed32b686bb.cfargotunnel.com","created_on":"2026-02-18T18:34:56.202856Z","data":[],"hostname":"aprs.me","id":"52fe06c580f9bc70a4ff4a6978de8ea7","metadata":{},"modified_on":"2026-02-18T18:34:56.202856Z","name":"aprs.me","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"caa","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"index_key":"aprs.me-letsencrypt.org","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"letsencrypt.org\"","created_on":"2026-02-25T19:20:24.920388Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"letsencrypt.org","weight":0}],"hostname":"aprs.me","id":"e9f4343f7c0dd97351b6868d48ac3ffc","metadata":{},"modified_on":"2026-02-25T19:20:24.920388Z","name":"aprs.me","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"aprs.me-pki.goog","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"pki.goog\"","created_on":"2026-02-25T19:20:24.931937Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"pki.goog","weight":0}],"hostname":"aprs.me","id":"312b7a4e5ef24aa39d0d644448b42ba1","metadata":{},"modified_on":"2026-02-25T19:20:24.931937Z","name":"aprs.me","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"aprs.me-sectigo.com","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"sectigo.com\"","created_on":"2026-02-25T19:20:23.4046Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"sectigo.com","weight":0}],"hostname":"aprs.me","id":"a03268c868921324d93c424b75a66123","metadata":{},"modified_on":"2026-02-25T19:20:23.4046Z","name":"aprs.me","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"aprs.me-ssl.com","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"ssl.com\"","created_on":"2026-02-25T19:20:23.757538Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"ssl.com","weight":0}],"hostname":"aprs.me","id":"ca710bf09e7b007ed13e55f6cb3b72ba","metadata":{},"modified_on":"2026-02-25T19:20:23.757538Z","name":"aprs.me","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"gridmap.org-letsencrypt.org","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"letsencrypt.org\"","created_on":"2026-02-25T19:20:26.213276Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"letsencrypt.org","weight":0}],"hostname":"gridmap.org","id":"ec4d9e50c72f265010b4dc56db1f21f7","metadata":{},"modified_on":"2026-02-25T19:20:26.213276Z","name":"gridmap.org","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"gridmap.org-pki.goog","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"pki.goog\"","created_on":"2026-02-25T19:20:25.34753Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"pki.goog","weight":0}],"hostname":"gridmap.org","id":"bf2e711ac3abb681fc725daa2e0a2c53","metadata":{},"modified_on":"2026-02-25T19:20:25.34753Z","name":"gridmap.org","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"gridmap.org-sectigo.com","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"sectigo.com\"","created_on":"2026-02-25T19:20:26.603772Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"sectigo.com","weight":0}],"hostname":"gridmap.org","id":"8175bf30b3d31b82c4c1b85af252ac7e","metadata":{},"modified_on":"2026-02-25T19:20:26.603772Z","name":"gridmap.org","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"gridmap.org-ssl.com","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 issue \"ssl.com\"","created_on":"2026-02-25T19:20:23.273147Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"0","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":0,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"issue","target":"","type":0,"usage":0,"value":"ssl.com","weight":0}],"hostname":"gridmap.org","id":"03749ab647ee85cdf0bb7ba8bcbba3c1","metadata":{},"modified_on":"2026-02-25T19:20:23.273147Z","name":"gridmap.org","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CAA","value":null,"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"gridmap_org_tunnel","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"d3d819ba-925c-4d84-8052-68ed32b686bb.cfargotunnel.com","created_on":"2026-02-18T18:34:53.58717Z","data":[],"hostname":"gridmap.org","id":"8b218c8e8e8a78aa8c30a5e82e63dbdc","metadata":{},"modified_on":"2026-02-18T18:34:53.58717Z","name":"gridmap.org","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"records","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"index_key":"towerops.net-a-dfw-poller","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"144.202.64.79","created_on":"2026-02-04T18:34:31.048255Z","data":[],"hostname":"dfw.poller.towerops.net","id":"aa8183b748f1bf0e3850d9dabb91ee3a","metadata":{},"modified_on":"2026-02-04T18:34:31.048255Z","name":"dfw.poller","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"A","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-a-lon-poller","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"45.77.228.168","created_on":"2026-02-08T17:23:07.876902Z","data":[],"hostname":"lon.poller.towerops.net","id":"2a25c3ee47284833cea451170d3bd61d","metadata":{},"modified_on":"2026-02-08T17:23:07.876902Z","name":"lon.poller","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"A","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-a-staging","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"204.110.191.231","created_on":"2026-02-09T18:23:25.894749Z","data":[],"hostname":"staging.towerops.net","id":"8430e2789d5700c556dc7a598d49d8fd","metadata":{},"modified_on":"2026-02-09T18:44:11.107671Z","name":"staging","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"A","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-a-www","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"Created during Cloudflare Rules deployment process for Redirect from WWW to root [Template]","content":"192.0.2.1","created_on":"2026-02-01T16:08:06.434962Z","data":[],"hostname":"www.towerops.net","id":"689c47b0e5ed68427f2c3b9e25bdf602","metadata":{},"modified_on":"2026-02-01T16:08:06.434962Z","name":"www","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"A","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-aaaa-dfw-poller","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"2001:19f0:6401:af2:5400:5ff:fee7:1bfb","created_on":"2026-02-04T18:34:31.174197Z","data":[],"hostname":"dfw.poller.towerops.net","id":"2edc0cf203313e67d64316daf8a0490e","metadata":{},"modified_on":"2026-02-04T18:34:31.174197Z","name":"dfw.poller","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"AAAA","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-aaaa-lon-poller","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"2001:19f0:7400:1195:5400:5ff:feee:a0c3","created_on":"2026-02-08T17:24:02.914425Z","data":[],"hostname":"lon.poller.towerops.net","id":"610f21b8597a1ce6ad4020f15311787a","metadata":{},"modified_on":"2026-02-08T17:24:02.914425Z","name":"lon.poller","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"AAAA","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-autoconfig","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"mail.mcintire.me","created_on":"2026-01-31T21:12:11.834659Z","data":[],"hostname":"autoconfig.towerops.net","id":"1c0f59e7bd583f8971f50231e6fad3cf","metadata":{},"modified_on":"2026-02-18T18:21:20.964531Z","name":"autoconfig","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-autodiscover","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"mail.mcintire.me","created_on":"2026-01-31T21:12:11.813721Z","data":[],"hostname":"autodiscover.towerops.net","id":"34a4a9bde8cf4626635cfa3cb5f8c408","metadata":{},"modified_on":"2026-02-18T18:21:21.959176Z","name":"autodiscover","priority":null,"proxiable":true,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-dev","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"db59aa44-79de-4522-9593-43e828f3215a.cfargotunnel.com","created_on":"2026-02-01T16:17:24.029892Z","data":[],"hostname":"dev.towerops.net","id":"21b470e19493c856ce697052dabc90e5","metadata":{},"modified_on":"2026-02-18T18:21:15.242958Z","name":"dev","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-dkim-ses-1","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"2skkb53ep3vfbkdstfmm2elfthurggid.dkim.amazonses.com","created_on":"2026-02-06T14:56:00.620182Z","data":[],"hostname":"2skkb53ep3vfbkdstfmm2elfthurggid._domainkey.towerops.net","id":"f4a446531128011a1a6b896010983901","metadata":{},"modified_on":"2026-02-18T18:21:23.474077Z","name":"2skkb53ep3vfbkdstfmm2elfthurggid._domainkey","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-dkim-ses-2","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"4uwsaywjpmk35j36pfiz4vr37dyy4v7z.dkim.amazonses.com","created_on":"2026-02-06T14:56:00.429727Z","data":[],"hostname":"4uwsaywjpmk35j36pfiz4vr37dyy4v7z._domainkey.towerops.net","id":"aefc5c72e25e3656dbccf0fdf2fc6f48","metadata":{},"modified_on":"2026-02-18T18:21:18.993371Z","name":"4uwsaywjpmk35j36pfiz4vr37dyy4v7z._domainkey","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-dkim-ses-3","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"l7lbifvot6nv3wwho5rs35xzqzzinz5f.dkim.amazonses.com","created_on":"2026-02-06T14:56:00.400622Z","data":[],"hostname":"l7lbifvot6nv3wwho5rs35xzqzzinz5f._domainkey.towerops.net","id":"02a4cfa316dae29898a8270f2c3aceda","metadata":{},"modified_on":"2026-02-18T18:21:15.477573Z","name":"l7lbifvot6nv3wwho5rs35xzqzzinz5f._domainkey","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-cname-root","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"d3d819ba-925c-4d84-8052-68ed32b686bb.cfargotunnel.com","created_on":"2026-01-31T21:20:07.097359Z","data":[],"hostname":"towerops.net","id":"cf1bc4e745466032786db854f4294f99","metadata":{},"modified_on":"2026-02-18T18:21:17.216154Z","name":"towerops.net","priority":null,"proxiable":true,"proxied":true,"tags":[],"timeouts":null,"ttl":1,"type":"CNAME","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-mx-mail","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"feedback-smtp.us-east-1.amazonses.com","created_on":"2026-01-31T21:12:11.92231Z","data":[],"hostname":"mail.towerops.net","id":"a2486e2bbb4d6aca978d28807893e346","metadata":{},"modified_on":"2026-01-31T21:12:11.92231Z","name":"mail","priority":10,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"MX","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-mx-root-backup","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"mail.nsnw.ca","created_on":"2026-01-31T21:12:11.783987Z","data":[],"hostname":"towerops.net","id":"bbd552d191e61345f19f8dae10281f9e","metadata":{},"modified_on":"2026-01-31T21:12:11.783987Z","name":"towerops.net","priority":20,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"MX","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-mx-root-primary","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"mail.mcintire.me","created_on":"2026-01-31T21:12:11.794166Z","data":[],"hostname":"towerops.net","id":"a5dc7d6dc6d9085132a8fa0b7db1b69a","metadata":{},"modified_on":"2026-01-31T21:12:11.794166Z","name":"towerops.net","priority":10,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"MX","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-txt-dkim","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"v=DKIM1;k=rsa;t=s;s=email;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuFm6nd0L7/nAO4m0MPxdjwRAup5C90DPSPa0TQBDT8S2WvASyQUPV8xSbICGMj6FjZYNd5ph/0VK47gDulxQgNQT96IVf2ooTfkvY/80bAyEdtJbpjEUzQnX5YBi/pJigQx2EeCdaojUZumeIdlFlzeb8QQIEtQhVnyc1Xc/Z8ljPMW1H9DXLSDINjV6UTaXX+PZ7jgpRKgU+RnJNcqTAkhhKQ4bMcRfOam/lF6wPOWte1A7ir08TdE8O67ioqygkr/ivAp7xvV4vGOkY6buLLE+c3exY+my2qTCZgJyUMAhkZzYqzGo1csfHH8x+O2XN/k8Z5jPhq8LSvl9XkllKwIDAQAB","created_on":"2026-01-31T21:12:11.932177Z","data":[],"hostname":"dkim._domainkey.towerops.net","id":"3872e537e8cee4087ead7eb5785e1426","metadata":{},"modified_on":"2026-02-03T19:17:59.246248Z","name":"dkim._domainkey","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-txt-dmarc","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"v=DMARC1; p=none;","created_on":"2026-01-31T21:12:11.846177Z","data":[],"hostname":"_dmarc.towerops.net","id":"bd236f9a89fc42f45fd7f4b076478880","metadata":{},"modified_on":"2026-02-03T19:17:59.427606Z","name":"_dmarc","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-txt-mail-spf","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"v=spf1 include:amazonses.com ~all","created_on":"2026-01-31T21:12:11.939949Z","data":[],"hostname":"mail.towerops.net","id":"76b8314432391c6630e9e1b2edfce65d","metadata":{},"modified_on":"2026-02-03T19:18:00.631343Z","name":"mail","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]},{"index_key":"towerops.net-txt-spf","schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"v=spf1 mx a ip4:107.174.178.20 ~all","created_on":"2026-01-31T21:12:11.825178Z","data":[],"hostname":"towerops.net","id":"cf2f74d345960700a81a6025e7a89642","metadata":{},"modified_on":"2026-02-03T19:17:59.830149Z","name":"towerops.net","priority":null,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"TXT","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_record","name":"towerops_srv_autodiscover","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":3,"attributes":{"allow_overwrite":false,"comment":"","content":"0 443 mail.mcintire.me","created_on":"2026-01-31T21:12:11.914868Z","data":[{"algorithm":0,"altitude":0,"certificate":"","content":"","digest":"","digest_type":0,"fingerprint":"","flags":"","key_tag":0,"lat_degrees":0,"lat_direction":"","lat_minutes":0,"lat_seconds":0,"long_degrees":0,"long_direction":"","long_minutes":0,"long_seconds":0,"matching_type":0,"name":"","order":0,"port":443,"precision_horz":0,"precision_vert":0,"preference":0,"priority":0,"proto":"","protocol":0,"public_key":"","regex":"","replacement":"","selector":0,"service":"","size":0,"tag":"","target":"mail.mcintire.me","type":0,"usage":0,"value":"","weight":0}],"hostname":"_autodiscover._tcp.towerops.net","id":"26db78978535d1d630432970b9a4e279","metadata":{},"modified_on":"2026-01-31T21:12:11.914868Z","name":"_autodiscover._tcp","priority":0,"proxiable":false,"proxied":false,"tags":[],"timeouts":null,"ttl":1,"type":"SRV","value":null,"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"private":"eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMCwidXBkYXRlIjozMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMyJ9","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_ruleset","name":"aprs_me_firewall","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":1,"attributes":{"account_id":null,"description":"","id":"9a107a7272a14c05b9e0e747b5a93bf7","kind":"zone","name":"default","phase":"http_request_firewall_custom","rules":[{"action":"block","action_parameters":[],"description":"block abusers","enabled":true,"exposed_credential_check":[],"expression":"(ip.src.country in {\"KP\" \"RU\" \"CN\" \"SY\" \"MM\" \"VE\" \"IQ\" \"LY\" \"SO\" \"YE\" \"SS\"}) or (http.request.uri.path contains \".php\") or (http.request.uri.path contains \"/wp-content\") or (http.request.uri.path contains \"/wp-login\") or (http.request.uri.path contains \"/wp-admin\") or (http.request.uri.path contains \"/wp-includes\") or (http.request.uri.path contains \"/xmlrpc.php\") or (http.request.uri.path contains \"wlwmanifest.xml\") or (http.request.uri.path contains \"/.env\") or (http.request.uri.path contains \"/.git\") or (http.request.uri.path contains \"/phpmyadmin\") or (http.request.uri.path contains \"/cgi-bin\") or (not http.user_agent ne \"\")","id":"6bbd814f49634e3997386d6fa1193e4e","logging":[],"ratelimit":[],"ref":"6bbd814f49634e3997386d6fa1193e4e"}],"zone_id":"09da59049b0ecad7b734ce3d902bf581"},"sensitive_attributes":[],"dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_ruleset","name":"gridmap_firewall","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":1,"attributes":{"account_id":null,"description":"","id":"7dfc79c24a22439ea501865479822df8","kind":"zone","name":"default","phase":"http_request_firewall_custom","rules":[{"action":"block","action_parameters":[],"description":"block abusers","enabled":true,"exposed_credential_check":[],"expression":"(ip.src.country in {\"KP\" \"RU\" \"CN\" \"SY\" \"MM\" \"VE\" \"IQ\" \"LY\" \"SO\" \"YE\" \"SS\"}) or (http.request.uri.path contains \".php\") or (http.request.uri.path contains \"/wp-content\") or (http.request.uri.path contains \"/wp-login\") or (http.request.uri.path contains \"/wp-admin\") or (http.request.uri.path contains \"/wp-includes\") or (http.request.uri.path contains \"/xmlrpc.php\") or (http.request.uri.path contains \"wlwmanifest.xml\") or (http.request.uri.path contains \"/.env\") or (http.request.uri.path contains \"/.git\") or (http.request.uri.path contains \"/phpmyadmin\") or (http.request.uri.path contains \"/cgi-bin\") or (not http.user_agent ne \"\")","id":"b90e87338cd84bd4a8caad80851eb539","logging":[],"ratelimit":[],"ref":"b90e87338cd84bd4a8caad80851eb539"}],"zone_id":"836f24d97eb51ffc18aa10c0a98efa48"},"sensitive_attributes":[],"dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_ruleset","name":"towerops_firewall","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":1,"attributes":{"account_id":null,"description":"","id":"3c209e50f21b40388733a7cfe8f62f4e","kind":"zone","name":"default","phase":"http_request_firewall_custom","rules":[{"action":"skip","action_parameters":[{"additional_cacheable_ports":null,"algorithms":[],"automatic_https_rewrites":null,"autominify":[],"bic":null,"browser_ttl":[],"cache":null,"cache_key":[],"cache_reserve":[],"content":null,"content_type":null,"cookie_fields":null,"disable_apps":null,"disable_railgun":null,"disable_rum":null,"disable_zaraz":null,"edge_ttl":[],"email_obfuscation":null,"fonts":null,"from_list":[],"from_value":[],"headers":[],"host_header":null,"hotlink_protection":null,"id":null,"increment":null,"matched_data":[],"mirage":null,"opportunistic_encryption":null,"origin":[],"origin_cache_control":null,"origin_error_page_passthru":null,"overrides":[],"phases":null,"polish":null,"products":null,"read_timeout":null,"request_fields":null,"respect_strong_etags":null,"response":[],"response_fields":null,"rocket_loader":null,"rules":null,"ruleset":"current","rulesets":null,"security_level":null,"serve_stale":[],"server_side_excludes":null,"sni":[],"ssl":null,"status_code":null,"sxg":null,"uri":[]}],"description":"allow agent websocket connections","enabled":true,"exposed_credential_check":[],"expression":"(http.request.uri.path eq \"/socket/agent/websocket\")","id":"9016d5312697421c8687a7389f4a4a4d","logging":[{"enabled":false}],"ratelimit":[],"ref":"9016d5312697421c8687a7389f4a4a4d"},{"action":"block","action_parameters":[],"description":"block abusers","enabled":true,"exposed_credential_check":[],"expression":"(ip.src.country in {\"KP\" \"RU\" \"CN\" \"SY\" \"MM\" \"VE\" \"IQ\" \"LY\" \"SO\" \"YE\" \"SS\"}) or (http.request.uri.path contains \".php\") or (http.request.uri.path contains \"/wp-content\") or (http.request.uri.path contains \"/wp-login\") or (http.request.uri.path contains \"/wp-admin\") or (http.request.uri.path contains \"/wp-includes\") or (http.request.uri.path contains \"/xmlrpc.php\") or (http.request.uri.path contains \"wlwmanifest.xml\") or (http.request.uri.path contains \"/.env\") or (http.request.uri.path contains \"/.git\") or (http.request.uri.path contains \"/phpmyadmin\") or (http.request.uri.path contains \"/cgi-bin\") or (not http.user_agent ne \"\")","id":"2c5dccdb7aed4c18aaf8532fd19275eb","logging":[],"ratelimit":[],"ref":"2c5dccdb7aed4c18aaf8532fd19275eb"}],"zone_id":"c275d35a8885de79ca8e61c17ac97ab6"},"sensitive_attributes":[],"dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_zero_trust_tunnel_cloudflared_config","name":"towerops","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":0,"attributes":{"account_id":"4d18148a82b0a91f289afbbd2944a603","config":[{"ingress_rule":[{"hostname":"aprs.me","origin_request":[],"path":"","service":"http://aprs.aprs.svc.cluster.local:4000"},{"hostname":"gridmap.org","origin_request":[],"path":"","service":"http://gridmap.gridmap.svc.cluster.local:4000"},{"hostname":"towerops.net","origin_request":[],"path":"","service":"http://towerops.towerops.svc.cluster.local:4000"},{"hostname":"","origin_request":[],"path":"","service":"http_status:404"}],"origin_request":[],"warp_routing":[]}],"id":"d3d819ba-925c-4d84-8052-68ed32b686bb","tunnel_id":"d3d819ba-925c-4d84-8052-68ed32b686bb"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ=="}]},{"mode":"managed","type":"cloudflare_zero_trust_tunnel_cloudflared_config","name":"towerops_dev","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":0,"attributes":{"account_id":"4d18148a82b0a91f289afbbd2944a603","config":[{"ingress_rule":[{"hostname":"dev.towerops.net","origin_request":[],"path":"","service":"http://localhost:4000"},{"hostname":"","origin_request":[],"path":"","service":"http_status:404"}],"origin_request":[],"warp_routing":[]}],"id":"db59aa44-79de-4522-9593-43e828f3215a","tunnel_id":"db59aa44-79de-4522-9593-43e828f3215a"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ=="}]},{"mode":"managed","type":"cloudflare_zone","name":"zones","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"index_key":"aprs.me","schema_version":0,"attributes":{"account_id":"4d18148a82b0a91f289afbbd2944a603","id":"09da59049b0ecad7b734ce3d902bf581","jump_start":null,"meta":{"phishing_detected":false,"wildcard_proxiable":false},"name_servers":["arch.ns.cloudflare.com","tani.ns.cloudflare.com"],"paused":false,"plan":"free","status":"active","type":"full","vanity_name_servers":[],"verification_key":"","zone":"aprs.me"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ=="},{"index_key":"gridmap.org","schema_version":0,"attributes":{"account_id":"4d18148a82b0a91f289afbbd2944a603","id":"836f24d97eb51ffc18aa10c0a98efa48","jump_start":null,"meta":{"phishing_detected":false,"wildcard_proxiable":false},"name_servers":["arch.ns.cloudflare.com","tani.ns.cloudflare.com"],"paused":false,"plan":"free","status":"active","type":"full","vanity_name_servers":[],"verification_key":"","zone":"gridmap.org"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ=="},{"index_key":"towerops.net","schema_version":0,"attributes":{"account_id":"4d18148a82b0a91f289afbbd2944a603","id":"c275d35a8885de79ca8e61c17ac97ab6","jump_start":null,"meta":{"phishing_detected":false,"wildcard_proxiable":false},"name_servers":["arch.ns.cloudflare.com","tani.ns.cloudflare.com"],"paused":false,"plan":"free","status":"active","type":"full","vanity_name_servers":[],"verification_key":"","zone":"towerops.net"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ=="}]},{"mode":"managed","type":"cloudflare_zone_settings_override","name":"aprs_me","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":2,"attributes":{"id":"09da59049b0ecad7b734ce3d902bf581","initial_settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"off","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.0","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"off","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":false,"include_subdomains":false,"max_age":0,"nosniff":false,"preload":false}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"full","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"on","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"off","websockets":"on","zero_rtt":"off"}],"initial_settings_read_at":"2026-02-25T19:03:59.962087Z","readonly_settings":["advanced_ddos","http2","long_lived_grpc","mirage","origin_error_page_pass_thru","polish","prefetch_preload","proxy_read_timeout","response_buffering","sort_query_string_for_cache","true_client_ip_header","webp","image_resizing"],"settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"on","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.2","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"off","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":true,"include_subdomains":true,"max_age":15552000,"nosniff":true,"preload":true}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"strict","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"zrt","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"","websockets":"on","zero_rtt":"on"}],"zone_id":"09da59049b0ecad7b734ce3d902bf581","zone_status":"active","zone_type":"full"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjIifQ==","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_zone_settings_override","name":"gridmap_org","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":2,"attributes":{"id":"836f24d97eb51ffc18aa10c0a98efa48","initial_settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"off","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.0","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"off","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":false,"include_subdomains":false,"max_age":0,"nosniff":false,"preload":false}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"full","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"on","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"off","websockets":"on","zero_rtt":"off"}],"initial_settings_read_at":"2026-02-25T19:04:25.78697Z","readonly_settings":["advanced_ddos","http2","long_lived_grpc","mirage","origin_error_page_pass_thru","polish","prefetch_preload","proxy_read_timeout","response_buffering","sort_query_string_for_cache","true_client_ip_header","webp","image_resizing"],"settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"on","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.2","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"off","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":true,"include_subdomains":true,"max_age":15552000,"nosniff":true,"preload":true}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"strict","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"zrt","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"","websockets":"on","zero_rtt":"on"}],"zone_id":"836f24d97eb51ffc18aa10c0a98efa48","zone_status":"active","zone_type":"full"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjIifQ==","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"cloudflare_zone_settings_override","name":"towerops_net","provider":"provider[\"registry.opentofu.org/cloudflare/cloudflare\"]","instances":[{"schema_version":2,"attributes":{"id":"c275d35a8885de79ca8e61c17ac97ab6","initial_settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"on","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.2","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"add_header","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":true,"include_subdomains":false,"max_age":15552000,"nosniff":true,"preload":true}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"full","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"zrt","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"off","websockets":"on","zero_rtt":"on"}],"initial_settings_read_at":"2026-02-25T19:04:04.422661Z","readonly_settings":["advanced_ddos","http2","long_lived_grpc","mirage","origin_error_page_pass_thru","polish","prefetch_preload","proxy_read_timeout","response_buffering","sort_query_string_for_cache","true_client_ip_header","webp","image_resizing"],"settings":[{"aegis":[{"enabled":false,"pool_id":""}],"always_online":"off","always_use_https":"on","automatic_https_rewrites":"on","binary_ast":"off","brotli":"on","browser_cache_ttl":14400,"browser_check":"on","cache_level":"aggressive","challenge_ttl":1800,"ciphers":[],"cname_flattening":"flatten_at_root","development_mode":"off","early_hints":"off","email_obfuscation":"on","filter_logs_to_cloudflare":"off","fonts":"off","h2_prioritization":"off","hotlink_protection":"off","http2":"on","http3":"on","image_resizing":"off","ip_geolocation":"on","ipv6":"on","log_to_cloudflare":"on","max_upload":100,"min_tls_version":"1.2","minify":[],"mirage":"off","mobile_redirect":[],"nel":[{"enabled":true}],"opportunistic_encryption":"on","opportunistic_onion":"on","orange_to_orange":"off","origin_error_page_pass_thru":"off","origin_max_http_version":"2","polish":"off","prefetch_preload":"off","privacy_pass":"on","proxy_read_timeout":"100","pseudo_ipv4":"add_header","replace_insecure_js":"on","response_buffering":"off","rocket_loader":"off","security_header":[{"enabled":true,"include_subdomains":true,"max_age":15552000,"nosniff":true,"preload":true}],"security_level":"medium","server_side_exclude":"on","sort_query_string_for_cache":"off","speed_brain":"off","ssl":"full","ssl_automatic_mode":"custom","tls_1_2_only":"off","tls_1_3":"zrt","tls_client_auth":"off","true_client_ip_header":"off","universal_ssl":"","visitor_ip":"on","waf":"off","webp":"","websockets":"on","zero_rtt":"on"}],"zone_id":"c275d35a8885de79ca8e61c17ac97ab6","zone_status":"active","zone_type":"full"},"sensitive_attributes":[],"private":"eyJzY2hlbWFfdmVyc2lvbiI6IjIifQ==","dependencies":["cloudflare_zone.zones"]}]},{"mode":"managed","type":"porkbun_dns_record","name":"ammocpr_com_a_root","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"204.110.191.231","domain":"ammocpr.com","id":529716883,"notes":"","prio":0,"subdomain":"","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_ca","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"167.114.209.151","domain":"manero.org","id":529396999,"notes":"","prio":0,"subdomain":"ca","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_irc","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"149.28.242.178","domain":"manero.org","id":529396990,"notes":"","prio":0,"subdomain":"irc","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_root_1","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"185.199.108.153","domain":"manero.org","id":529396998,"notes":"","prio":0,"subdomain":"","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_root_2","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"185.199.109.153","domain":"manero.org","id":529396984,"notes":"","prio":0,"subdomain":"","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_root_3","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"185.199.110.153","domain":"manero.org","id":529396983,"notes":"","prio":0,"subdomain":"","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_root_4","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"185.199.111.153","domain":"manero.org","id":529396986,"notes":"","prio":0,"subdomain":"","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_tankfox","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"137.184.202.89","domain":"manero.org","id":529396993,"notes":"","prio":0,"subdomain":"tankfox","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_a_us","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"149.28.242.178","domain":"manero.org","id":529396987,"notes":"","prio":0,"subdomain":"us","ttl":600,"type":"A"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_aaaa_us","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"2001:19f0:6401:19e6:5400:5ff:fe45:5701","domain":"manero.org","id":529396985,"notes":"","prio":0,"subdomain":"us","ttl":600,"type":"AAAA"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_dns_record","name":"manero_org_cname_404","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"schema_version":0,"attributes":{"content":"404.al.","domain":"manero.org","id":529396992,"notes":"","prio":0,"subdomain":"404","ttl":600,"type":"CNAME"},"sensitive_attributes":[]}]},{"mode":"managed","type":"porkbun_nameservers","name":"domains","provider":"provider[\"registry.opentofu.org/marcfrederick/porkbun\"]","instances":[{"index_key":"ammocpr.com","schema_version":0,"attributes":{"domain":"ammocpr.com","nameservers":["curitiba.ns.porkbun.com","fortaleza.ns.porkbun.com","maceio.ns.porkbun.com","salvador.ns.porkbun.com"]},"sensitive_attributes":[]},{"index_key":"aprs.me","schema_version":0,"attributes":{"domain":"aprs.me","nameservers":["arch.ns.cloudflare.com","tani.ns.cloudflare.com"]},"sensitive_attributes":[]},{"index_key":"beanjar.org","schema_version":0,"attributes":{"domain":"beanjar.org","nameservers":["ns-global.kjsl.com","ns1.as393837.net","ns2.as393837.net"]},"sensitive_attributes":[]},{"index_key":"gridmap.org","schema_version":0,"attributes":{"domain":"gridmap.org","nameservers":["arch.ns.cloudflare.com","tani.ns.cloudflare.com"]},"sensitive_attributes":[]},{"index_key":"gunincrements.com","schema_version":0,"attributes":{"domain":"gunincrements.com","nameservers":["curitiba.ns.porkbun.com","fortaleza.ns.porkbun.com","maceio.ns.porkbun.com","salvador.ns.porkbun.com"]},"sensitive_attributes":[]},{"index_key":"manero.org","schema_version":0,"attributes":{"domain":"manero.org","nameservers":["curitiba.ns.porkbun.com","fortaleza.ns.porkbun.com","maceio.ns.porkbun.com","salvador.ns.porkbun.com"]},"sensitive_attributes":[]},{"index_key":"mcintire.me","schema_version":0,"attributes":{"domain":"mcintire.me","nameservers":["ns-global.kjsl.com","ns1.as393837.net","ns2.as393837.net"]},"sensitive_attributes":[]},{"index_key":"ntxarms.com","schema_version":0,"attributes":{"domain":"ntxarms.com","nameservers":["ns-global.kjsl.com","ns1.as393837.net","ns2.as393837.net"]},"sensitive_attributes":[]},{"index_key":"qth.social","schema_version":0,"attributes":{"domain":"qth.social","nameservers":["curitiba.ns.porkbun.com","fortaleza.ns.porkbun.com","maceio.ns.porkbun.com","salvador.ns.porkbun.com"]},"sensitive_attributes":[]},{"index_key":"vntx.org","schema_version":0,"attributes":{"domain":"vntx.org","nameservers":["ns-global.kjsl.com","ns1.as393837.net","ns2.as393837.net"]},"sensitive_attributes":[]},{"index_key":"w5isp.com","schema_version":0,"attributes":{"domain":"w5isp.com","nameservers":["ns-global.kjsl.com","ns1.as393837.net","ns2.as393837.net"]},"sensitive_attributes":[]}]}],"check_results":null}