debian 13 support

This commit is contained in:
lolcat 2025-08-09 19:36:54 -04:00
parent dba715f47f
commit f4a271a720
3 changed files with 33 additions and 21 deletions

View File

@ -2,6 +2,9 @@
BullMail is a no-bullshit solution to setup an E-Mail server on a Debian/Ubuntu shitbox. BullMail is a no-bullshit solution to setup an E-Mail server on a Debian/Ubuntu shitbox.
## Now updated to work with Debian 13 Trixie
If you ran this script before, simply run it again. Just a heads up, it will generate new DKIM keys. I recommend you generate new ones otherwise this shit might break.
## What it does ## What it does
- Creates an `SMTP` server (`postfix`, to send and receive E-Mails) - Creates an `SMTP` server (`postfix`, to send and receive E-Mails)
- Creates an `IMAP` server (`dovecot`, to check your E-Mails) - Creates an `IMAP` server (`dovecot`, to check your E-Mails)

View File

@ -1,19 +1,24 @@
#logging #logging
dovecot_config_version = 2.4.1
dovecot_storage_version = 2.4.1
auth_mechanisms = plain login
auth_username_format = %{user | username | lower }
#auth_verbose = yes #auth_verbose = yes
#auth_debug = yes #auth_debug = yes
#mail_debug = yes #mail_debug = yes
#log_path = /var/log/dovecot.log #log_path = /var/log/dovecot.log
disable_plaintext_auth = no protocol imap {
auth_mechanisms = plain login ssl = yes
auth_username_format = %Ln auth_allow_cleartext = yes
ssl_server_cert_file = KEY.pem
ssl = yes ssl_server_key_file = KEY.key
ssl_cert = <KEY.pem #ssl_client_ca_dir = /etc/ssl/certs
ssl_key = <KEY.key #ssl_dh = </usr/share/dovecot/dh.pem
ssl_client_ca_dir = /etc/ssl/certs ssl_min_protocol = TLSv1.1
ssl_dh = </usr/share/dovecot/dh.pem }
ssl_min_protocol = TLSv1.1
service imap-login { service imap-login {
inet_listener imap { inet_listener imap {
@ -40,13 +45,16 @@ service auth {
} }
} }
mail_location = maildir:~/Maildir mail_driver = maildir
mail_path = ~/Maildir
mailbox_list_layout = fs
mail_privileged_group = mail mail_privileged_group = mail
managesieve_notify_capability = mailto managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext
namespace inbox { namespace inbox {
inbox = yes inbox = yes
location = maildir:~/Maildir mail_path = ~/Maildir
prefix = prefix =
mailbox Drafts { mailbox Drafts {
@ -67,27 +75,28 @@ namespace inbox {
} }
} }
passdb { passdb pam {
driver = pam driver = pam
} }
userdb { userdb passwd {
driver = passwd driver = passwd
} }
sieve_script spam2junk {
plugin { path = /etc/dovecot/sieve/spam2junk.sieve
sieve_global_path = /etc/dovecot/sieve/spam2junk.sieve
#sieve_global_dir = /etc/dovecot/sieve/ #sieve_global_dir = /etc/dovecot/sieve/
#sieve = file:~/sieve;active=~/.dovecot.sieve #sieve = file:~/sieve;active=~/.dovecot.sieve
} }
protocol lmtp { protocol lmtp {
mail_plugins = $mail_plugins sieve mail_plugins = sieve
postmaster_address = postmaster@__domain__ postmaster_address = postmaster@__domain__
mail_fsync = optimized mail_fsync = optimized
} }
protocol lda { protocol lda {
mail_plugins = $mail_plugins sieve mail_plugins = sieve
} }
service lmtp { service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix group = postfix

View File

@ -26,7 +26,7 @@ smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = __hostname__ smtpd_sasl_local_domain = __hostname__
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
virtual_transport = dovecot virtual_transport = lmtp:unix:private/dovecot-lmtp
local_transport = lmtp:unix:private/dovecot-lmtp local_transport = lmtp:unix:private/dovecot-lmtp
dovecot_destination_recipient_limit = 1 dovecot_destination_recipient_limit = 1