This commit is contained in:
Tommy Parnell
2025-08-03 16:24:09 -04:00
parent 44db7d06cb
commit eb201d9865

View File

@@ -27,6 +27,9 @@ POSTFIXADMIN_PASSWORD=""
WEBROOT="/var/www/postfixadmin"
POSTFIXADMIN_VERSION="postfixadmin-3.3.11.tar.gz"
# New: Define the mail volume path
MAIL_VOLUME_PATH="/mnt/MainEmail"
# Logging
LOG_FILE="/var/log/email-server-setup.log"
@@ -304,7 +307,7 @@ mydestination = localhost
virtual_mailbox_domains = pgsql:/etc/postfix/pgsql-virtual-mailbox-domains.cf
virtual_mailbox_maps = pgsql:/etc/postfix/pgsql-virtual-mailbox-maps.cf
virtual_alias_maps = pgsql:/etc/postfix/pgsql-virtual-alias-maps.cf
virtual_mailbox_base = /var/mail/vhosts
virtual_mailbox_base = $MAIL_VOLUME_PATH/vhosts # <-- CHANGED: Mailbox base is now the volume path
virtual_minimum_uid = 100
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
@@ -427,11 +430,11 @@ smtp-amavis unix - - - - 2 smtp
-o receive_override_options=no_header_body_checks,no_unknown_recipient_checks
EOF
# Create virtual mailbox directory
mkdir -p /var/mail/vhosts
# Create virtual mailbox directory and set permissions
mkdir -p $MAIL_VOLUME_PATH/vhosts # <-- CHANGED: Directory is now created on the volume
groupadd -g 5000 vmail 2>/dev/null || true
useradd -g vmail -u 5000 vmail -d /var/mail/vhosts -m 2>/dev/null || true
chown -R vmail:vmail /var/mail/vhosts
useradd -g vmail -u 5000 vmail -d $MAIL_VOLUME_PATH/vhosts -m 2>/dev/null || true
chown -R vmail:vmail $MAIL_VOLUME_PATH/vhosts # <-- CHANGED: Permissions set on the volume
success "Postfix configured"
}
@@ -453,7 +456,7 @@ EOF
# 10-mail.conf
cat > /etc/dovecot/conf.d/10-mail.conf << EOF
mail_location = maildir:/var/mail/vhosts/%d/%n
mail_location = maildir:$MAIL_VOLUME_PATH/vhosts/%d/%n # <-- CHANGED: Mail location is now the volume path
namespace inbox {
inbox = yes
}
@@ -481,7 +484,7 @@ passdb {
}
userdb {
driver = static
args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n
args = uid=vmail gid=vmail home=$MAIL_VOLUME_PATH/vhosts/%d/%n # <-- CHANGED: User home directory is now on the volume
}
EOF
@@ -866,6 +869,7 @@ display_final_info() {
echo "Primary Domain: $DOMAIN"
echo "Hostname: $HOSTNAME"
echo "Admin Email: $ADMIN_EMAIL"
echo "Mailbox Location: $MAIL_VOLUME_PATH/vhosts" # <-- CHANGED: Display the new path
echo "PostfixAdmin URL: https://$HOSTNAME/postfixadmin/"
echo
echo -e "${YELLOW}=== DNS Records to Add for $DOMAIN ===${NC}"