Skip to content

environment

github-actions[bot] edited this page May 12, 2026 · 1 revision

Ambiente

Este repositório suporta apenas o ambiente prod.

Inventário público

O host wireguard-egress-01 público usa valores neutros:

  • Host: vpn.example.com
  • Usuário SSH: ansible
  • Porta SSH: 22
  • Chave SSH local: ssh/ansible_wireguard_egress_vpn_ed25519

Valores reais ficam em inventories/inventory.local.yml, ignorado pelo Git. O script prepare.sh pode ser executado com um usuário bootstrap que tenha sudo para criar ou validar o usuário técnico e manter o inventário local alinhado.

Variáveis

Valores públicos de exemplo ficam em group_vars/prod/vars.yml. Valores reais não sensíveis ficam em group_vars/prod/zz-local.yml, ignorado pelo Git. Senhas e qualquer outro segredo real ficam em group_vars/prod/vault.yml, sempre criptografado e ignorado.

Clientes WireGuard

wireguard_server_clients aceita uma lista de clientes. Quando apenas name é informado, o endereço é gerado pela ordem da lista:

wireguard_server_clients:
  - name: example-client

Com a rede padrão 10.8.0.0/24, o primeiro cliente recebe 10.8.0.2/32, o segundo 10.8.0.3/32 e assim por diante. O mesmo vale para o prefixo IPv6 roteado configurado. Não reordene a lista depois do primeiro deploy; para fixar endereços manualmente, use address e address_ipv6.

IPv6 roteado

A automação prefere IPv6 roteado sem NAT66. Se o provedor expõe um prefixo on-link e não uma rota delegada, habilite wireguard_server_ipv6_proxy_ndp: true no override local. O modo wireguard_server_ipv6_nat66_mode: auto ativa NAT66 quando o prefixo do túnel é ULA (fd00::/8) ou quando o servidor só tem IPv6 /128, emitindo aviso explícito no deploy.

Clone this wiki locally