⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.23
Server IP:
178.33.27.10
Server:
Linux cpanel.dev-unit.com 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64
Server Software:
Apache/2.4.57 (Unix) OpenSSL/1.0.2k-fips
PHP Version:
8.2.11
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
doc
/
dovecot-2.2.36
/
wiki
/
View File Name :
Migration.Online.txt
Online Mailbox Format Conversion -------------------------------- This page aims to help with the tasks around planned mailbox migrations to e.g. mdbox. To perform this exercise with minimum service interruption a Postfix check can be implemented to put mail for the accounts to be migrated on HOLD: Postfix main.cf --------------- ---%<------------------------------------------------------------------------- smtpd_recipient_restrictions = [...] check_recipient_access hash:/etc/postfix/recipient_maintenance, permit_mynetworks, reject_unauth_destination ---%<------------------------------------------------------------------------- /etc/postfix/recipient_maintenance ---------------------------------- ---%<------------------------------------------------------------------------- user@domain.tld HOLD Planned maintenance user1@domain.tld HOLD Planned maintenance user2@domain.tld HOLD Planned maintenance [...] ---%<------------------------------------------------------------------------- Virtual Domain Aliases in Postfix can be easily used to populate the *List of Recipients* to be converted (and to be queued on HOLD). The following basic script helps populating the database and needs to be adapted to the actual alias location: ---%<------------------------------------------------------------------------- #!/bin/bash set -e ALIASES="/etc/postfix/virtual" MAINTALIASES="/etc/postfix/recipient_maintenance" doveadm user $1 || { echo 'user query failed.'; exit 1; } sed -e "s/\(.*\)$1/\1/;s/[ \t]*$//; s/$/ HOLD Planned maintenance: account=$1/" $ALIASES >>$MAINTALIASES grep $1 $MAINTALIASES postmap $MAINTALIASES echo '[ Complete ]' ---%<------------------------------------------------------------------------- Usage: ---%<------------------------------------------------------------------------- $ maintalias.sh user@domain.tld ---%<------------------------------------------------------------------------- Finally running *postmap recipient_maintenance* will create the database (in case this part is not scripted). Actual Migration ---------------- Disable new logins for the users by adding 'allow_nets=' to their userdb records, effectively disallowing ALL nets. Close open sessions if any: ---%<------------------------------------------------------------------------- $ doveadm who <user> $ doveadm kick <user> ---%<------------------------------------------------------------------------- Convert the mailbox using the backup option: ---%<------------------------------------------------------------------------- $ dsync -u user@domain.tld backup mdbox:~/mdbox ---%<------------------------------------------------------------------------- Adjust userdb entries (if required) to reflect new 'mail_location'. Clear the 'recipient_maintenance' DB and undo 'allow_nets=' entries for the migrated users. Finally release and requeue all mail previously held: ---%<------------------------------------------------------------------------- $ postsuper -r [ALL] $ postqueue -f ---%<------------------------------------------------------------------------- (This file was created from the wiki on 2018-05-23 04:42)