Postfixadmin mailbox deletion
This commit is contained in:
parent
08ddca07c8
commit
5816c705d4
4 changed files with 46 additions and 0 deletions
|
|
@ -94,3 +94,4 @@ mailserver:
|
|||
show_footer_text: 'NO'
|
||||
quota_multiplier: '1048576'
|
||||
page_size: '500'
|
||||
mailbox_postdeletion_script: sudo -u vmail /etc/postfixadmin/mailbox-postdeletion.sh
|
||||
|
|
|
|||
|
|
@ -63,6 +63,36 @@
|
|||
mode: 0700
|
||||
path: /var/cache/postfixadmin/templates_c
|
||||
|
||||
- name: copy postfixadmin mailbox postdeletion script
|
||||
ansible.builtin.template:
|
||||
src: postfixadmin/mailbox-postdeletion.sh.j2
|
||||
dest: /etc/postfixadmin/mailbox-postdeletion.sh
|
||||
owner: root
|
||||
group: root
|
||||
mode: "0755"
|
||||
|
||||
- name: copy postfixadmin sudoers config
|
||||
ansible.builtin.template:
|
||||
src: postfixadmin/sudoers.j2
|
||||
dest: /etc/sudoers.d/10-postfixadmin
|
||||
owner: root
|
||||
group: root
|
||||
mode: "0644"
|
||||
|
||||
- name: create directory for deleted mailboxes
|
||||
ansible.builtin.file:
|
||||
state: directory
|
||||
owner: vmail
|
||||
group: vmail
|
||||
mode: 0700
|
||||
path: /var/mail/vmail/.deleted/
|
||||
|
||||
- name: add cronjob to cleanup deleted mailboxes
|
||||
ansible.builtin.cron:
|
||||
name: cleanup deleted mailboxes
|
||||
job: 'find /var/mail/vmail/.deleted/ -mindepth 1 -maxdepth 1 -mtime +1 -exec rm -r {} \;'
|
||||
minute: "37"
|
||||
|
||||
# php_version and "restart php-fpm" handler from nginx role
|
||||
- name: create postfixadmin php pool
|
||||
ansible.builtin.template:
|
||||
|
|
|
|||
14
templates/postfixadmin/mailbox-postdeletion.sh.j2
Normal file
14
templates/postfixadmin/mailbox-postdeletion.sh.j2
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Parameters: (1) username (2) domain
|
||||
# username = localpart@domain
|
||||
|
||||
localpart="${1%%@*}"
|
||||
domain="${1#*@}"
|
||||
|
||||
set -e
|
||||
|
||||
test -d "/var/mail/vmail/$domain/$localpart" || exit 0
|
||||
|
||||
touch "/var/mail/vmail/$domain/$localpart"
|
||||
mv "/var/mail/vmail/$domain/$localpart" "/var/mail/vmail/.deleted/$(date '+%Y%m%d%H%M%S')-$localpart@$domain"
|
||||
1
templates/postfixadmin/sudoers.j2
Normal file
1
templates/postfixadmin/sudoers.j2
Normal file
|
|
@ -0,0 +1 @@
|
|||
postfixadmin ALL = (vmail) NOPASSWD: /etc/postfixadmin/mailbox-postdeletion.sh
|
||||
Loading…
Add table
Add a link
Reference in a new issue