FAQ
Hi,

No doubt I'm overlooking something which is obvious to experienced users, but for a newcomer to both mail server setup and mailman setup, is opaque.

When I run genaliases, I get aliases, but not virtual-mailman.

The host that I'm generating this on is eunuch.pbw.id.au (to the outside world.)

The virtual host I want to use with postfix-to-mailman.py is lists.eunuch.pbw.id.au.

Any idea what I'm doing wrong?

Here's my postfix config.

-----------------------------------
# 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

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = eunuch.pbw.id.au
mydomain = pbw.id.au

proxy_interfaces = 60.241.99.30

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

mydestination = $myhostname, localhost.localdomain, , localhost

relayhost =

mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.1.0/8

relay_domains = lists.eunuch.pbw.id.au
relay_recipient_maps = hash:/var/lib/mailman/data/virtual-mailman

virtual_alias_domains = lists.eunuch.pbw.id.au
virtual_alias_maps = hash:/etc/postfix/virtual

transport_maps = hash:/etc/postfix/transport

mailman_destination_recipient_limit = 1


mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
html_directory = /usr/share/doc/postfix/html
---------------------------------------------------


Here's my mm_cfg.py
===================================================
# -*- python -*-

# Copyright (C) 1998,1999,2000 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


"""This is the module which takes your site-specific settings.

From a raw distribution it should be copied to mm_cfg.py. If you
already have an mm_cfg.py, be careful to add in only the new settings
you want. The complete set of distributed defaults, with annotation,
are in ./Defaults. In mm_cfg, override only those you want to
change, after the

from Defaults import *

line (see below).

Note that these are just default settings - many can be overridden via the
admin and user interfaces on a per-list or per-user basis.

Note also that some of the settings are resolved against the active list
setting by using the value as a format string against the
list-instance-object's dictionary - see the distributed value of
DEFAULT_MSG_FOOTER for an example."""


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

from Defaults import *

##############################################################
# Put YOUR site-specific configuration below, in mm_cfg.py . #
# See Defaults.py for explanations of the values. #

#-------------------------------------------------------------
# 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 = 'localhost.localdomain'
#-------------------------------------------------------------
# Default host for web interface of newly created MLs
DEFAULT_URL_HOST = 'localhost.localdomain'
#-------------------------------------------------------------
# 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'

POSTFIX_STYLE_VIRTUAL_DOMAINS = ['lists.eunuch.pbw.id.au']

DEB_LISTMASTER = 'postmaster at lists.eunuch.pbw.id.au'

#-------------------------------------------------------------
# Uncomment if you want to filter mail with SpamAssassin. For
# more information please visit this website:
# http://www.jamesh.id.au/articles/mailman-spamassassin/
# 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.
==============================================================================

Peter West

"Nicodemus said to him, 'How can this be?'"

Search Discussions

  • Mark Sapiro at Oct 6, 2010 at 3:10 pm

    Peter B. West wrote:
    No doubt I'm overlooking something which is obvious to experienced users, but for a newcomer to both mail server setup and mailman setup, is opaque.

    When I run genaliases, I get aliases, but not virtual-mailman.

    Because you have no lists whose host_name attribute matches one of the
    entries in POSTFIX_STYLE_VIRTUAL_DOMAINS (i.e. lists.eunuch.pbw.id.au).

    The host that I'm generating this on is eunuch.pbw.id.au (to the outside world.)

    The virtual host I want to use with postfix-to-mailman.py is lists.eunuch.pbw.id.au.

    Any idea what I'm doing wrong?

    First of all, if you are using postfix-to-mailman.py, you don't
    want/need Mailman to generate any aliases or virtual mappings. These
    are mutually exclusive ways of delivering mail to Mailman.

    Also please note that this list is the primary support for GNU Mailman
    as distributed by the Mailman project. If you use a downstream
    package, we will generally try to help, but your primary support
    resources should be those provided by your packager.

    Here's my postfix config.

    See comments inserted below. Note that this config doesn't reference
    Mailman's aliases or virtual-mailman at all which is correct for
    postfix-to-mailman.py.


    [...]
    alias_maps = hash:/etc/aliases
    alias_database = hash:/etc/aliases

    mydestination = $myhostname, localhost.localdomain, , localhost

    relayhost =

    mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.1.0/8

    relay_domains = lists.eunuch.pbw.id.au
    relay_recipient_maps = hash:/var/lib/mailman/data/virtual-mailman

    virtual_alias_domains = lists.eunuch.pbw.id.au

    You don't want the above. The domain is a relay domain, not a virtual
    alias domain.

    virtual_alias_maps = hash:/etc/postfix/virtual

    transport_maps = hash:/etc/postfix/transport

    Presumably (hopefully) there is an entry in /etc/postfix/transport that
    specifies a "mailman" transport for the lists.eunuch.pbw.id.au, and an
    entry in master.cf defining this transport

    mailman_destination_recipient_limit = 1


    mailbox_size_limit = 0
    recipient_delimiter = +
    inet_interfaces = all
    html_directory = /usr/share/doc/postfix/html
    ---------------------------------------------------


    Here's my mm_cfg.py

    Again see comments:


    [...]
    #-------------------------------------------------------------
    # Default domain for email addresses of newly created MLs
    DEFAULT_EMAIL_HOST = 'localhost.localdomain'


    Should be

    DEFAULT_EMAIL_HOST = 'lists.eunuch.pbw.id.au'

    This is why your lists don't get created with the correct host_name

    #-------------------------------------------------------------
    # Default host for web interface of newly created MLs
    DEFAULT_URL_HOST = 'localhost.localdomain'

    This should probably be

    DEFAULT_URL_HOST = 'lists.eunuch.pbw.id.au'

    or whatever host name you use to access Mailman's web interface. It
    should not be localhost as it is the host in URLs exposed to users to
    access their options page, list archives, etc.

    #-------------------------------------------------------------
    # Required when setting any of its arguments.
    add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST)

    #------------------------------------------------------------- [...]
    #-------------------------------------------------------------
    # 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'

    As it says, you don't specify MTA='Postfix' if you use
    postfix_to_mailman.py. You want

    MTA = None

    POSTFIX_STYLE_VIRTUAL_DOMAINS = ['lists.eunuch.pbw.id.au']

    And the above is irrelevant because virtual-mailman is not used.

    DEB_LISTMASTER = 'postmaster at lists.eunuch.pbw.id.au'
    [...]


    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupmailman-users @
categoriespython
postedOct 6, '10 at 2:26a
activeOct 6, '10 at 3:10p
posts2
users2
websitelist.org

2 users in discussion

Mark Sapiro: 1 post Peter B. West: 1 post

People

Translate

site design / logo © 2022 Grokbase