Problem: ispconfig 3 with mailman version 2.1.12

Asked by Vezz

Hi

I have a problem with the configuration of ispconfig with mailman. I think the problem is more with postfix.

My problem is simple my mail works but my mailing list doesn't works.

My setup run with ubuntu 8.04tls with mailman 2.1.12
Example of my confuguration of my box.

ISPconfif 3.0.14
the address of my box is xxxxxxxx.privatedns.com
Actually, I have 2 futur domain:
domain1.info
Domain2.org

my /etc/postfix/main.cf
=======================

# See /usr/share/postfix/main.cf.dist for a commented, more complete version
# Debian specific: Specifying a file name will cause the first
# line of that file to be used as the name. The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

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 = /usr/share/doc/postfix
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
html_directory = /usr/share/doc/postfix/html
myhostname = xxxxxxxxxxxx.privatedns.com
##############
#vezz
#mydomain = privatedns.com
#masquerade_domains = privatedns.com
#mydestination = $myhostname, $mydomain, localhost.$mydomain, localhost
#myorigin = /etc/mailname
#home_mailbox = Maildir/
#mailbox_command = /usr/bin/procmail -Y -a $DOMAIN
#alias_maps = hash:/etc/aliases
#alias_database = hash:/etc/aliases
#setgid_group = postdrop
#mail_owner = postfix
#mailbox_size_limit = 0
#mail_spool_directory = /var/spool/mail
#delay_warning_time = 4h
#recipient_delimiter = +
###############
alias_maps = hash:/etc/aliases
#mydestination = localhost.privatedns.com, localhost
mydestination = /etc/mailname, localhost.privatedns.com, localhost
virtual_alias_domains =
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql-virtual_forwardings.cf, mysql:/etc/postfix/mysql-virtual_email2email.cf, hash:/usr/local/mailman/data/virtual-mailman
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql-virtual_domains.cf
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql-virtual_mailboxes.cf
virtual_mailbox_base = /var/vmail
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, check_recipient_access mysql:/etc/postfix/mysql-virtual_recipient.cf, reject_unauth_destination
smtpd_use_tls = yes
smtpd_tls_security_level = may
smtpd_tls_cert_file = /etc/postfix/smtpd.cert
smtpd_tls_key_file = /etc/postfix/smtpd.key
transport_maps = proxy:mysql:/etc/postfix/mysql-virtual_transports.cf
relay_domains = mysql:/etc/postfix/mysql-virtual_relaydomains.cf
virtual_create_maildirsize = yes
virtual_maildir_extended = yes
virtual_mailbox_limit_maps = proxy:mysql:/etc/postfix/mysql-virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_maildir_limit_message = "The user you are trying to reach is over quota."
virtual_overquota_bounce = yes
proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps
smtpd_sender_restrictions = check_sender_access mysql:/etc/postfix/mysql-virtual_sender.cf
smtpd_client_restrictions = check_client_access mysql:/etc/postfix/mysql-virtual_client.cf
maildrop_destination_concurrency_limit = 1
maildrop_destination_recipient_limit = 1
virtual_transport = maildrop
header_checks = regexp:/etc/postfix/header_checks
mime_header_checks = regexp:/etc/postfix/mime_header_checks
nested_header_checks = regexp:/etc/postfix/nested_header_checks
body_checks = regexp:/etc/postfix/body_checks
content_filter = amavis:[127.0.0.1]:10024
#relayhost = smtp.privatedns.com
relayhost =
mailbox_size_limit = 0
message_size_limit = 0
#mailbox_command = procmail -a "$EXTENSION"
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
canonical_maps = hash:/etc/postfix/canonical

mailbox_command = procmail -a "$EXTENSION"
owner_request_special = no
receive_override_options = no_address_mappings

my /etc/postfix/master.cf
===================================

#
# Postfix master process configuration file. For details on the format
# of the file, see the master(5) manual page (command: "man 5 master").
#
# Do not forget to execute "postfix reload" after editing this file.
#
# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
smtp inet n - - - - smtpd
submission inet n - - - - smtpd
# -o smtpd_tls_security_level=encrypt
# -o smtpd_sasl_auth_enable=yes
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
#smtps inet n - - - - smtpd
# -o smtpd_tls_wrappermode=yes
# -o smtpd_sasl_auth_enable=yes
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
#628 inet n - - - - qmqpd
pickup fifo n - - 60 1 pickup
cleanup unix n - - - 0 cleanup
qmgr fifo n - n 300 1 qmgr
#qmgr fifo n - - 300 1 oqmgr
tlsmgr unix - - - 1000? 1 tlsmgr
rewrite unix - - - - - trivial-rewrite
bounce unix - - - - 0 bounce
defer unix - - - - 0 bounce
trace unix - - - - 0 bounce
verify unix - - - - 1 verify
flush unix n - - 1000? 0 flush
proxymap unix - - n - - proxymap
proxywrite unix - - n - 1 proxymap
smtp unix - - - - - smtp
# When relaying mail as backup MX, disable fallback_relay to avoid MX loops
relay unix - - - - - smtp
        -o smtp_fallback_relay=
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq unix n - - - - showq
error unix - - - - - error
retry unix - - - - - error
discard unix - - - - - discard
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - - - - lmtp
anvil unix - - - - 1 anvil
scache unix - - - - 1 scache
#
# ====================================================================
# Interfaces to non-Postfix software. Be sure to examine the manual
# pages of the non-Postfix software to find out what options it wants.
#
# Many of the following services use the Postfix pipe(8) delivery
# agent. See the pipe(8) man page for information about ${recipient}
# and other message envelope options.
# ====================================================================
#
# maildrop. See the Postfix MAILDROP_README file for details.
# Also specify in main.cf: maildrop_destination_recipient_limit=1
#
maildrop unix - n n - - pipe
  flags=R user=vmail argv=/usr/bin/maildrop -d vmail ${extension} ${recipient} ${user} ${nexthop} ${sender}
#
# See the Postfix UUCP_README file for configuration details.
#
uucp unix - n n - - pipe
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
#
# Other external delivery methods.
#
ifmail unix - n n - - pipe
  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp unix - n n - - pipe
  flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient
scalemail-backend unix - n n - 2 pipe
  flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
mailman unix - n n - - pipe
  flags=FR user=mailman argv=/usr/local/mailman/bin/postfix-to-mailman.py ${nexthop} ${user}

amavis unix - - - - 2 smtp
        -o smtp_data_done_timeout=1200
        -o smtp_send_xforward_command=yes

127.0.0.1:10025 inet n - - - - smtpd
        -o content_filter=
        -o local_recipient_maps=
        -o relay_recipient_maps=
        -o smtpd_restriction_classes=
        -o smtpd_client_restrictions=
        -o smtpd_helo_restrictions=
        -o smtpd_sender_restrictions=
        -o smtpd_recipient_restrictions=permit_mynetworks,reject
        -o mynetworks=127.0.0.0/8
        -o strict_rfc821_envelopes=yes
        -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
        -o smtpd_bind_address=127.0.0.1

my /usr/local/mailman/Mailman/mm_cfg.py
===========================================

# -*- python -*-

# Copyright (C) 1998,1999,2000,2001,2002 by the Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

###############################################
# Here's where we get the distributed defaults.

from Defaults import *

##################################################
# Put YOUR site-specific settings below this line.
#-------------------------------------------------------------
# The name of the list Mailman uses to send password reminders
# and similar. Don't change if you want mailman-owner to be
# a valid local part.
MAILMAN_SITE_LIST = 'mailman'

#-------------------------------------------------------------
# If you change these, you have to configure your http server
# accordingly (Alias and ScriptAlias directives in most httpds)
DEFAULT_URL_PATTERN = 'http://%s/mailman/'
PRIVATE_ARCHIVE_URL = '/mailman/private'
IMAGE_LOGOS = '/images/mailman/'

#-------------------------------------------------------------
# Default domain for email addresses of newly created MLs
DEFAULT_EMAIL_HOST = 'xxxxxxxxxx.privatedns.com'
#-------------------------------------------------------------
# Default host for web interface of newly created MLs
DEFAULT_URL_HOST = 'xxxxxxxxxx.privatedns.com'
#-------------------------------------------------------------
# Required when setting any of its arguments.
add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST)

#-------------------------------------------------------------
# The default language for this server.
DEFAULT_SERVER_LANGUAGE = 'en'

#-------------------------------------------------------------
# Iirc this was used in pre 2.1, leave it for now
USE_ENVELOPE_SENDER = 0 # Still used?

#-------------------------------------------------------------
# Unset send_reminders on newly created lists
DEFAULT_SEND_REMINDERS = 0

#-------------------------------------------------------------
# Uncomment this if you configured your MTA such that it
# automatically recognizes newly created lists.
# (see /usr/share/doc/mailman/README.Exim4.Debian or
# /usr/share/mailman/postfix-to-mailman.py)
# MTA=None # Misnomer, suppresses alias output on newlist

#-------------------------------------------------------------
# Uncomment if you use Postfix virtual domains (but not
# postfix-to-mailman.py), but be sure to see
# /usr/share/doc/mailman/README.Debian first.
# MTA='Postfix'

#-------------------------------------------------------------
# Uncomment if you want to filter mail with SpamAssassin. For
# more information please visit this website:
# [url]http://www.jamesh.id.au/articles/mailman-spamassassin/[/url]
# GLOBAL_PIPELINE.insert(1, 'SpamAssassin')

# Note - if you're looking for something that is imported from mm_cfg, but you
# didn't find it above, it's probably in /usr/lib/mailman/Mailman/Defaults.py.
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['domain1.info','domain2.org']
add_virtualhost('www.domain1.info', 'domain1.info')
add_virtualhost('www.domain2.org', 'domain2.org')

MTA = 'Postfix'

My /usr/local/mailman/data/virtual-mailman
==================

# This file is generated by Mailman, and is kept in sync with the binary hash
# file virtual-mailman.db. YOU SHOULD NOT MANUALLY EDIT THIS FILE unless you
# know what you're doing, and can keep the two files properly in sync. If you
# screw it up, you're on your own.
#
# Note that you should already have this virtual domain set up properly in
# your Postfix installation. See README.POSTFIX for details.

# LOOP ADDRESSES START
[email]<email address hidden>[/email] mailman-loop
# LOOP ADDRESSES END

# STANZA START: info
# CREATED: Sun Sep 13 15:44:46 2009
[email]<email address hidden>[/email] info
[email]<email address hidden>[/email] info-admin
[email]<email address hidden>[/email] info-bounces
[email]<email address hidden>[/email] info-confirm
[email]<email address hidden>[/email] info-join
[email]<email address hidden>[/email] info-leave
[email]<email address hidden>[/email] info-owner
[email]<email address hidden>[/email] info-request
[email]<email address hidden>[/email] info-subscribe
[email]<email address hidden>[/email] info-unsubscribe
# STANZA END: info

the error is :
===========================

Final-Recipient: rfc822; [email]<email address hidden>[/email]
Original-Recipient: rfc822;<email address hidden>
Action: failed
Status: 5.1.1
Diagnostic-Code: X-Postfix; unknown user: "info"

Sorry for my english...
THANK YOU FOR YOUR HELP!!!

Question information

Language:
English Edit question
Status:
Solved
For:
GNU Mailman Edit question
Assignee:
No assignee Edit question
Solved by:
Mark Sapiro
Solved:
Last query:
Last reply:
Revision history for this message
Mark Sapiro (msapiro) said :
#1
Revision history for this message
Best Mark Sapiro (msapiro) said :
#2

At a minimum you need to add hash:/usr/local/mailman/data/aliases to alias_maps in Postfix main.cf. It also wouldn't hurt to add domain1.info and domain2.org to virtual_alias_domains.

Note: the output from 'postconf -n' is a lot more readable than the whole main.cf

Revision history for this message
Vezz (sadp-1999) said :
#3

Thank you!!! now this is works!

I have create a little script to added a domain automatically

///////////////////////////////////////////////////////////////////////////////////////////
#!/bin/bash
echo "Enter the domaine name [ENTER]:"

read DOMAIN_NAME
echo "This is the good domain : $DOMAIN_NAME"
echo "Confirm?(Y/N) : "
read CONFIRM

if [[ $CONFIRM != y && $CONFIRM != Y ]]
then
echo "Program aborted"
exit 0
fi

#DOMAIN_NAME="domain.tlt"
sed -i "s/virtual_alias_domains = /virtual_alias_domains = $DOMAIN_NAME, /g" /etc/postfix/main.cf2
sed -i "s/POSTFIX_STYLE_VIRTUAL_DOMAINS = \[/POSTFIX_STYLE_VIRTUAL_DOMAINS = \['$DOMAIN_NAME',/g" /usr/local/mailman/Mailman/mm_cfg.py2
echo "add_virtualhost('www.$DOMAIN_NAME', '$DOMAIN_NAME')" >> /usr/local/mailman/Mailman/mm_cfg.py2
newaliases
su - mailman -c "~/bin/genaliases"
postfix reload
echo "The domain added!!!!"

Revision history for this message
Vezz (sadp-1999) said :
#4

Thanks Mark Sapiro, that solved my question.