I have mailman3 installed and mostly configured on a linux machine running ubuntu 24.04. I can use mailmanweb to add and delete mailinglists and users. However, mail is not getting delivered at all.
I have both mysql and postgres installed -- I'm using postgres only for mailman, and mysql for dovecot and postfix.
Mail, in general, works fine. I'm hosting four virtual domains on this box, and mail to and from all of them to many users gives me no errors.
When I add a new user (and thus try to send a welcome message) mail.err log gives me:
2024-10-15T12:40:11.193687-04:00 mail postfix/virtual[960838]: error: open database /opt/mailman/mm/var/data/postfix_lmtp.db: Permission denied
I've tried playing with file permissions. I put postfix,mail, and vmail in the mailman group, and tried giving ownership of postfix_domains, postfix_lmtp, and postfix_vmap to user postfix, but that changed nothing. Currently, it sits at:
root:/opt/mailman/mm/var/data# ls -l total 36 -rw-rw-r-- 1 postfix mailman 0 Oct 15 12:53 postfic_vmap.db -rw-rw-r-- 1 postfix mailman 12288 Oct 15 12:53 postfic_vmap.db.db -rw-rw---- 1 postfix mailman 353 Oct 13 07:54 postfix_domains -rw-rw-r-- 1 postfix mailman 0 Oct 15 12:53 postfix_domains.db -rw-rw-r-- 1 postfix mailman 12288 Oct 15 12:53 postfix_domains.db.db -rw-rw---- 1 postfix mailman 1155 Oct 13 07:54 postfix_lmtp -rw-rw-r-- 1 postfix mailman 0 Oct 15 12:53 postfix_lmtp.db -rw-rw-r-- 1 postfix mailman 12288 Oct 15 12:53 postfix_lmtp.db.db -rw-rw---- 1 postfix mailman 1118 Oct 13 07:54 postfix_vmap
So, I'm assuming this is a database permissions error, but I don't know how to fix it.
As an aside, my main.cf is below.
Any help would be appreciated.
billo
%cat main.cf
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) biff = no
# appending .domain is the MUA's job. append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings #delay_warning_time = 4h
readme_directory = no
# See http://www.postfix.org/COMPATIBILITY_README.html -- default to 3.6 on # fresh installs. compatibility_level = 3.6
#Enable TLS Encryption when Postfix receives incoming emails smtpd_tls_cert_file=/etc/letsencrypt/live/mail.forensicpath.us/fullchai n.pem smtpd_tls_key_file=/etc/letsencrypt/live/mail.forensicpath.us/privkey.p em smtpd_tls_loglevel = 1 smtpd_tls_security_level=may smtpd_tls_loglevel = 1 smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
#Enable TLS Encryption when Postfix sends outgoing emails smtp_tls_CApath=/etc/ssl/certs smtp_tls_security_level = may smtp_tls_loglevel = 1 smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination myhostname = mail.forensicpath.us alias_maps = hash:/etc/aliases
myorigin = /etc/mailname mydestination = $myhostname, localhost.$mydomain, localhost relayhost = mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all inet_protocols = ipv4
#Enforce TLSv1.3 or TLSv1.2 smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1 smtpd_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1 smtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1 smtp_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
mailbox_transport = lmtp:unix:private/dovecot-lmtp smtputf8_enable = no
virtual_mailbox_domains = proxy:mysql:/etc/postfix/sql/mysql_virtual_domains_maps.cf virtual_mailbox_maps = proxy:mysql:/etc/postfix/sql/mysql_virtual_mailbox_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cf #added 20241009 for mailman hash:/opt/mailman/mm/var/data/postfix_lmtp ${dovecot}
virtual_alias_maps = proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.c f #added 20241009 for mailman hash:/opt/mailman/mm/var/data/postfix_vmap
virtual_mailbox_base = /var/vmail virtual_minimum_uid = 900 virtual_uid_maps = static:900 virtual_gid_maps = static:900
policyd-spf_time_limit = 3600 smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination, check_policy_service unix:private/policyd-spf
# Milter configuration milter_default_action = accept milter_protocol = 6 smtpd_milters = local:opendkim/opendkim.sock non_smtpd_milters = $smtpd_milters
#Mailman transport stuff transport_maps = hash:/opt/mailman/mm/var/data/postfix_lmtp local_recipient_maps = hash:/opt/mailman/mm/var/data/postfix_lmtp ${dovecot} relay_domains = hash:/opt/mailman/mm/var/data/postfix_domains