I'm trying to get docker-mailserver up and running, so I'm able to send mails from my containers.
I created the server with the following compose file:
`version: '2'
services:
xxx_mail:
restart: always
container_name: xxx_mail
image: tvial/docker-mailserver:2.1
hostname: mails
domainname: xxx.xx
expose:
- 25
ports:
- "xxx.xxx.xxx.xxx:25:25"
- "127.0.0.1:143:143"
- "127.0.0.1:587:587"
- "127.0.0.1:993:993"
mem_limit: "512m"
networks:
- xxx-mail-backend
volumes:
- /data/xxx/mailserver/maildata:/var/mail
- /data/xxx/mailserver/mailstate:/var/mail-state
- ./config/:/tmp/docker-mailserver
environment:
- ENABLE_SPAMASSASSIN=0
- ENABLE_CLAMAV=0
- ENABLE_FAIL2BAN=0
- ENABLE_POSTGREY=0
- ONE_DIR=1
- DMS_DEBUG=0
- SMTP_ONLY=1
# SSL: empty means disabled. as we don't have any mailclients (yet), we don't need it.
#- SSL_TYPE=letsencrypt
- PERMIT_DOCKER=network
networks:
xxx-mail-backend:
external:
name: xxx-mail-backend
`
when trying to send a mail from another container (which is in the same network), it fails. in the logs it just says
Feb 22 00:14:21 mails postfix/smtpd[1000]: error: open database /etc/postfix/vmailbox: No such file or directory
Feb 22 00:14:21 mails postfix/smtpd[1000]: fatal: no SASL authentication mechanisms
from the other container, I'm using ssmtp with mailhub=mail (where mail is the alias mapped into the other container).
there I just get a "sendmail: Invalid response SMTP server"
returned.
Any suggestions? I don't want any virus scanning or anything.. I only want to send mails that are DKIM signed.
thx
Hello @domdorn, i will try to reproduce your problem. After investigation i will write again!
Hi.
Same problem for me with release 2.1 and with SMTP_ONLY=1. I'm trying to use Postfix as relay to Amazon SES service. My env configurations in docker-compose are:
(...)
environment:
- ENABLE_SPAMASSASSIN=0
- ENABLE_CLAMAV=0
- ENABLE_FAIL2BAN=0
- ENABLE_POSTGREY=0
- ENABLE_SASLAUTHD=0
- DMS_DEBUG=1
- SMTP_ONLY=1
- AWS_SES_HOST=email-smtp.eu-west-1.amazonaws.com
- AWS_SES_USERPASS=aws_ses_usr:aws_ses_pwd
(...)
Some logs, last lines refer to mail test:
(...)
mece-extmail-ses | #
mece-extmail-ses | #
mece-extmail-ses | # docker-mailserver
mece-extmail-ses | #
mece-extmail-ses | #
mece-extmail-ses |
mece-extmail-ses | Initializing setup
mece-extmail-ses | Registering check,setup,fix,misc and start-daemons functions
mece-extmail-ses | * _check_environment_variables() registered
mece-extmail-ses | * _check_hostname() registered
mece-extmail-ses | * _setup_default_vars() registered
mece-extmail-ses | * _setup_dkim() registered
mece-extmail-ses | * _setup_ssl() registered
mece-extmail-ses | * _setup_docker_permit() registered
mece-extmail-ses | * _setup_mailname() registered
mece-extmail-ses | * _setup_amavis() registered
mece-extmail-ses | * _setup_postfix_override_configuration() registered
mece-extmail-ses | * _setup_postfix_sasl_password() registered
mece-extmail-ses | * _setup_security_stack() registered
mece-extmail-ses | * _setup_postfix_aliases() registered
mece-extmail-ses | * _setup_postfix_vhost() registered
mece-extmail-ses | * _setup_postfix_relay_amazon_ses() registered
mece-extmail-ses | * _fix_var_mail_permissions() registered
mece-extmail-ses | * _misc_save_states() registered
mece-extmail-ses | * _start_daemons_cron() registered
mece-extmail-ses | * _start_daemons_rsyslog() registered
mece-extmail-ses | * _start_daemons_opendkim() registered
mece-extmail-ses | * _start_daemons_opendmarc() registered
mece-extmail-ses | * _start_daemons_postfix() registered
mece-extmail-ses | * _start_daemons_amavis() registered
mece-extmail-ses | Checking configuration
mece-extmail-ses | Check that there are no conflicts with env variables [_check_environment_variables]
mece-extmail-ses | Check that hostname/domainname is provided or overidden (no default docker hostname/kubernetes) [_check_hostname]
mece-extmail-ses | * Domain has been set to mecenize.com
mece-extmail-ses | * Hostname has been set to mecenize.mecenize.com
mece-extmail-ses | Configuring mail server
mece-extmail-ses | Setting up default variables [_setup_default_vars]
mece-extmail-ses | * Set ENABLE_LDAP=0
mece-extmail-ses | * Set ENABLE_FETCHMAIL=0
mece-extmail-ses | * Set OVERRIDE_HOSTNAME=
mece-extmail-ses | * Set ENABLE_MANAGESIEVE=0
mece-extmail-ses | * Set DMS_DEBUG=1
mece-extmail-ses | * Set VIRUSMAILS_DELETE_DELAY=7
mece-extmail-ses | * Set ENABLE_POP3=0
mece-extmail-ses | * Set ENABLE_SASLAUTHD=0
mece-extmail-ses | * Set ENABLE_CLAMAV=0
mece-extmail-ses | * Set SMTP_ONLY=1
mece-extmail-ses | * Set ENABLE_FAIL2BAN=0
mece-extmail-ses | * Set ENABLE_SPAMASSASSIN=0
mece-extmail-ses | Setting up DKIM
mece-extmail-ses | * No DKIM key provided. Check the documentation to find how to get your keys.
mece-extmail-ses | Setting up SSL
mece-extmail-ses | Setting up PERMIT_DOCKER Option
mece-extmail-ses | * Adding container ip in my networks
mece-extmail-ses | Setting up Mailname
mece-extmail-ses | * Creating /etc/mailname
mece-extmail-ses | Setting up Amavis
mece-extmail-ses | * Applying hostname to /etc/amavis/conf.d/05-node_id
mece-extmail-ses | Setting up Postfix Override configuration
mece-extmail-ses | * No extra postfix settings loaded because optional '/tmp/docker-mailserver/postfix-main.cf' not provided.
mece-extmail-ses | Setting up Postfix SASL Password
mece-extmail-ses | * Warning: 'SASL_PASSWD' is not provided. /etc/postfix/sasl_passwd not created.
mece-extmail-ses | Setting up Security Stack
mece-extmail-ses | * Spamassassin is disabled. You can enable it with 'ENABLE_SPAMASSASSIN=1'
mece-extmail-ses | * Clamav is disabled. You can enable it with 'ENABLE_CLAMAV=1'
mece-extmail-ses | Setting up Postfix Aliases
mece-extmail-ses | * Warning 'config/postfix-virtual.cf' is not provided. No mail alias/forward created.
mece-extmail-ses | Setting up Postfix vhost
mece-extmail-ses | Setting up Postfix Relay Amazon SES
mece-extmail-ses | * Setting up outgoing email via AWS SES host email-smtp.eu-west-1.amazonaws.com:25
mece-extmail-ses | Fixing /var/mail permissions
mece-extmail-ses | * Fixing /var/mail permissions
mece-extmail-ses | Starting Misc
mece-extmail-ses | Starting mail server
mece-extmail-ses | Starting cron [ OK ]
mece-extmail-ses | Starting rsyslog [ OK ]
mece-extmail-ses | Starting opendkim [ OK ]
mece-extmail-ses | Starting opendmarc [ OK ]
mece-extmail-ses | Starting postfix [ OK ]
mece-extmail-ses | Starting amavis [ OK ]
mece-extmail-ses |
mece-extmail-ses | #
mece-extmail-ses | # mecenize.mecenize.com is up and running
mece-extmail-ses | #
mece-extmail-ses |
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Amavis::Conf 2.303
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Archive::Zip 1.30
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module BerkeleyDB 0.54
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Compress::Zlib 2.06
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Convert::TNEF 0.18
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Convert::UUlib 1.4
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Crypt::OpenSSL::RSA 0.28
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Digest::MD5 2.52
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Digest::SHA 5.84_01
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module File::Temp 0.23
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module IO::Socket::INET6 2.71
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module MIME::Entity 5.505
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module MIME::Parser 5.505
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module MIME::Tools 5.505
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Mail::DKIM::Signer 0.4
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Mail::DKIM::Verifier 0.4
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Mail::Header 2.12
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Mail::Internet 2.12
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Net::DNS 0.68
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Net::Server 2.007
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Socket6 0.25
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Time::HiRes 1.9725
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Module Unix::Syslog 1.1
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Amavis::DB code loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: SQL base code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: SQL::Log code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: SQL::Quarantine NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Lookup::SQL code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Lookup::LDAP code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: AM.PDP-in proto code loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: SMTP-in proto code loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Courier proto code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: SMTP-out proto code loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Pipe-out proto code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: BSMTP-out proto code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Local-out proto code loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: OS_Fingerprint code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: ANTI-VIRUS code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: ANTI-SPAM code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: ANTI-SPAM-EXT code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: ANTI-SPAM-C code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: ANTI-SPAM-SA code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Unpackers code loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: DKIM code loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Tools code NOT loaded
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Found $file at /usr/bin/file
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No $altermime, not using it
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Internal decoder for .mail
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .F
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Found decoder for .Z at /bin/uncompress
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Internal decoder for .gz
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Found decoder for .bz2 at /bin/bzip2 -d
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .xz tried: xzdec, xz -dc, unxz -c, xzcat
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .lzma tried: lzmadec, xz -dc --format=lzma, lzma -dc, unlzma -c, lzcat, lzmadec
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .lzo tried: lzop -d
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .rpm tried: rpm2cpio.pl, rpm2cpio
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Found decoder for .cpio at /bin/pax
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Found decoder for .tar at /bin/pax
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .deb tried: ar
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Internal decoder for .zip
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Internal decoder for .kmz
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Found decoder for .7z at /usr/bin/7zr
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .rar tried: unrar-free
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Found decoder for .arj at /usr/bin/arj
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .arc tried: nomarch, arc
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .zoo tried: zoo
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .doc tried: ripole
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .cab tried: cabextract
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: No decoder for .tnef
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Internal decoder for .tnef
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Found decoder for .exe at /usr/bin/arj
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Deleting db files in /var/lib/amavis/db
mece-extmail-ses | Mar 19 07:47:10 mecenize amavis[883]: Creating db in /var/lib/amavis/db/; BerkeleyDB 0.54, libdb 5.3
mece-extmail-ses | Mar 19 07:47:15 mecenize postfix/smtpd[887]: error: open database /etc/postfix/vmailbox: No such file or directory
mece-extmail-ses | Mar 19 07:47:15 mecenize postfix/smtpd[887]: connect from unknown[172.18.0.1]
mece-extmail-ses | Mar 19 07:47:15 mecenize postfix/smtpd[887]: warning: connect to Milter service inet:localhost:8891: Connection refused
mece-extmail-ses | Mar 19 07:47:15 mecenize postfix/smtpd[887]: warning: SASL: Connect to /var/spool/postfix/private/auth failed: No such file or directory
mece-extmail-ses | Mar 19 07:47:15 mecenize postfix/smtpd[887]: fatal: no SASL authentication mechanisms
mece-extmail-ses | Mar 19 07:47:16 mecenize postfix/master[868]: warning: process /usr/lib/postfix/smtpd pid 887 exit status 1
mece-extmail-ses | Mar 19 07:47:16 mecenize postfix/master[868]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling
I found the problem. Within /etc/postfix/main.cfg smtpd_sasl_auth_enable is set to 'yes' per default. So we need to disable sasl, when not explicit enabled.
So for a quick workarround you can do the following:
docker exec -i
docker restart
Most helpful comment
So for a quick workarround you can do the following:
docker exec -i /bin/bash -c "sed -i -e 's|^smtpd_sasl_auth_enable[[:space:]]+.*|smtpd_sasl_auth_enable = no|g' /etc/postfix/main.cf"
docker restart