diff --git a/roles/mail/tasks/main.yml b/roles/mail/tasks/main.yml index 8a98404..6d7d571 100644 --- a/roles/mail/tasks/main.yml +++ b/roles/mail/tasks/main.yml @@ -16,8 +16,6 @@ - dovecot-ldap - dovecot-managesieved - dovecot-sieve - - fcgiwrap - - mailman - mailman3-full - python3-psycopg2 - postgresql @@ -101,12 +99,6 @@ file: path=/etc/dovecot/ssl/{{ mail_server }}.key owner=dovecot mode=0400 notify: Restart dovecot -- name: Configure mailman - template: src={{ item }}.j2 dest=/etc/{{ item }} - with_items: - - mailman/mm_cfg.py - notify: Restart postfix - - name: Configure mailman vhost template: src=nginx/vhost.j2 dest=/etc/nginx/sites-available/mailman notify: Restart nginx @@ -182,7 +174,6 @@ template: src={{ item }}.j2 dest=/etc/{{ item }} with_items: - postfix/helo_access - - postfix/transport - postfix/virtual-alias notify: Run postmap diff --git a/roles/mail/templates/mailman/mm_cfg.py.j2 b/roles/mail/templates/mailman/mm_cfg.py.j2 deleted file mode 100644 index 2652a8c..0000000 --- a/roles/mail/templates/mailman/mm_cfg.py.j2 +++ /dev/null @@ -1,115 +0,0 @@ -# -*- 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/cgi-bin/mailman/' -DEFAULT_URL_PATTERN = 'https://%s/' -IMAGE_LOGOS = '/images/mailman/' - -#------------------------------------------------------------- -# Default domain for email addresses of newly created MLs -DEFAULT_EMAIL_HOST = '{{ mailman_domain }}' -#------------------------------------------------------------- -# Default host for web interface of newly created MLs -DEFAULT_URL_HOST = '{{ mailman_domain }}' -#------------------------------------------------------------- -# 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: -# http://www.jamesh.id.au/articles/mailman-spamassassin/ -# GLOBAL_PIPELINE.insert(1, 'SpamAssassin') - -POSTFIX_STYLE_VIRTUAL_DOMAINS = ['{{ mailman_domain }}'] -# alias for postmaster, abuse and mailer-daemon -DEB_LISTMASTER = 'postmaster@{{ mail_domain }}' - -# Remove, rename and preserve DKIM headers -REMOVE_DKIM_HEADERS = 3 -# Munge From for DMARC -DEFAULT_DMARC_MODERATION_ACTION = 1 - -# 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. diff --git a/roles/mail/templates/nginx/vhost.j2 b/roles/mail/templates/nginx/vhost.j2 index 1926459..840673b 100644 --- a/roles/mail/templates/nginx/vhost.j2 +++ b/roles/mail/templates/nginx/vhost.j2 @@ -7,7 +7,7 @@ server { server_name {{ mailman_domain }}; - root /usr/lib/cgi-bin/mailman/; + root /var/www/html/; location /.well-known/acme-challenge { default_type "text/plain"; @@ -19,27 +19,13 @@ server { } location / { - root /usr/lib/cgi-bin/mailman; - fastcgi_split_path_info (^/[^/]*)(.*)$; - fastcgi_pass unix:///var/run/fcgiwrap.socket; - include /etc/nginx/fastcgi_params; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - fastcgi_param PATH_INFO $fastcgi_path_info; + rewrite ^ /mailman3 redirect; } location = /listinfo { rewrite ^ /mailman3 redirect; } - location /images/mailman { - alias /usr/share/images/mailman; - } - - location /pipermail { - alias /var/lib/mailman/archives/public; - autoindex on; - } - location /mailman3/ { include /etc/nginx/uwsgi_params; uwsgi_pass unix:/run/mailman3-web/uwsgi.sock; diff --git a/roles/mail/templates/postfix/main.cf.j2 b/roles/mail/templates/postfix/main.cf.j2 index 7baefcc..815b3ba 100644 --- a/roles/mail/templates/postfix/main.cf.j2 +++ b/roles/mail/templates/postfix/main.cf.j2 @@ -118,14 +118,10 @@ unverified_recipient_reject_reason = Recipient unknown # mailman relay_domains = hash:/var/lib/mailman3/data/postfix_domains - {{ mailman_domain }} local_recipient_maps = hash:/var/lib/mailman3/data/postfix_lmtp - hash:/var/lib/mailman/data/virtual-mailman transport_maps = hash:/var/lib/mailman3/data/postfix_lmtp - hash:/etc/postfix/transport -mailman_destination_recipient_limit = 1 # postsrsd # sender_canonical_maps = tcp:localhost:10001 - > see master.cf diff --git a/roles/mail/templates/postfix/master.cf.j2 b/roles/mail/templates/postfix/master.cf.j2 index c890795..bc1ccbc 100644 --- a/roles/mail/templates/postfix/master.cf.j2 +++ b/roles/mail/templates/postfix/master.cf.j2 @@ -131,5 +131,3 @@ 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=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py ${nexthop} ${user} diff --git a/roles/mail/templates/postfix/transport.j2 b/roles/mail/templates/postfix/transport.j2 deleted file mode 100644 index 5cda071..0000000 --- a/roles/mail/templates/postfix/transport.j2 +++ /dev/null @@ -1 +0,0 @@ -{{ mailman_domain }} mailman: