For needed mailboxes: add postmaster, use aliases instead, and create them

This commit is contained in:
Tunui Franken 2024-07-24 16:46:30 +02:00
parent ae1b2667a3
commit 628d0c326a
2 changed files with 16 additions and 3 deletions

View file

@ -10,7 +10,12 @@ mailserver_database:
pwd: "{{ vault_mailserver_database.ro_user.pwd }}" pwd: "{{ vault_mailserver_database.ro_user.pwd }}"
# Create pwd hashes with `doveadm pw -s BLF-CRYPT` # Create pwd hashes with `doveadm pw -s BLF-CRYPT`
virtual_users: virtual_users:
- name: abuse - name: "{{ ansible_facts['env']['USER'] }}"
pwd: '{BLF-CRYPT}$2y$05$9rYhnwHxmu9nqLHyxE/JoOjAds22PQAM42cJr.sRtdzmFBykyUy3S'
- name: dns
pwd: '{BLF-CRYPT}$2y$05$9rYhnwHxmu9nqLHyxE/JoOjAds22PQAM42cJr.sRtdzmFBykyUy3S' pwd: '{BLF-CRYPT}$2y$05$9rYhnwHxmu9nqLHyxE/JoOjAds22PQAM42cJr.sRtdzmFBykyUy3S'
virtual_aliases:
- source: abuse
destination: "{{ ansible_facts['env']['USER'] }}"
- source: postmaster
destination: "{{ ansible_facts['env']['USER'] }}"
- source: dns
destination: "{{ ansible_facts['env']['USER'] }}"

View file

@ -31,3 +31,11 @@ CREATE TABLE IF NOT EXISTS virtual_aliases (
FOREIGN KEY (domain_id) REFERENCES virtual_domains(id) FOREIGN KEY (domain_id) REFERENCES virtual_domains(id)
ON DELETE CASCADE ON DELETE CASCADE
); );
{% for alias in mailserver_database.virtual_aliases %}
INSERT INTO virtual_aliases (domain_id, source, destination) VALUES (
(SELECT id FROM virtual_domains WHERE name = '{{ virtual_domain }}'),
'{{ alias.source }}@{{ virtual_domain }}',
'{{ alias.destination }}@{{ virtual_domain }}'
) ON CONFLICT (source) DO UPDATE SET destination = EXCLUDED.destination;
{% endfor %}