--- - name: Install needed packages become: true ansible.builtin.apt: name: - postfix - name: Copy configuration files become: true loop: - sql-virtual-mailbox-domains.cf - sql-virtual-mailbox-maps.cf - sql-virtual-alias-maps.cf - sql-email-as-alias.cf ansible.builtin.template: src: "{{ item }}.j2" dest: "/etc/postfix/{{ item }}" owner: root group: postfix mode: "640" - name: Copy main.cf become: true ansible.builtin.template: src: main.cf.j2 dest: /etc/postfix/main.cf owner: root group: root mode: "644" notify: Restart postfix service - name: Copy master.cf become: true ansible.builtin.template: src: master.cf.j2 dest: /etc/postfix/master.cf owner: root group: root mode: "644" notify: Restart postfix service - name: Copy /etc/aliases become: true ansible.builtin.template: src: aliases.j2 dest: /etc/aliases owner: root group: root mode: "644" notify: Run newaliases - name: Allow incoming and outgoing SMTP/submission become: true ansible.builtin.template: src: "nftables/{{ item }}.d/smtp-submission.conf.j2" dest: "/etc/nftables/{{ item }}.d/smtp-submission.conf" mode: 0640 notify: Reload nftables service loop: - input - output