🏗️ Architektura logiczna Vault
Obiekty w HashiCorp Vault Cluster
Section titled “Obiekty w HashiCorp Vault Cluster”Sekrety używane podczas bootstrap
Section titled “Sekrety używane podczas bootstrap”User SSH keys:
Relacje repozytoriów i zależności
Section titled “Relacje repozytoriów i zależności”ansible/requirements.yml
Section titled “ansible/requirements.yml”Plik gdzie są zdefiniowane zależności Ansible. Zawiera:
9 external roles (pobierane z gitlab.com/pl.rachuna-net/artifacts/ansible-roles/):
set-timezone,users-management,sudo,set-hostname,ssh-hardening,install-packages,keepalived,haproxy,certificates
3 local roles (zdefiniowane w tym repozytorium):
install-consul— instalacja i konfiguracja Consul serwerainstall-vault— instalacja i konfiguracja HashiCorp Vaultvault-auto-unseal— systemd service do automatycznego unseal’u Vault
iac-vault/main.tf.json + submodules
Section titled “iac-vault/main.tf.json + submodules”Plik główny z modułami OpenTofu. Struktura:
iac-vault/providers.tf
Section titled “iac-vault/providers.tf”Konfiguracja providera Vault:
- Terraform/OpenTofu: Wymagana nowoczesna wersja
- Vault provider: hashicorp/vault
- Default address:
https://vault-1023.rachuna-net.pl:8200(można zmienić zmiennąvault_address) - TLS verification: Wyłączona w dev (wymaga włączenia w production)
⚠️ Słabe strony
Section titled “⚠️ Słabe strony”Auto-unseal — niesecure w current implementation
Section titled “Auto-unseal — niesecure w current implementation”Rekomendacja: Migracja na Vault Transit Seal (self-hosted) lub AWS KMS/Google Cloud KMS.
2. Circular dependency w bootstrap
Section titled “2. Circular dependency w bootstrap”Rekomendacja: Dokumentacja step-by-step bootstrap procedury + test DR scenariuszy.