diff --git a/Cfg/etc/postfix/aliases/aliases.H_tracker.adm.crans.org b/Cfg/etc/postfix/aliases/aliases.H_tracker.adm.crans.org new file mode 100644 index 0000000..a7bee27 --- /dev/null +++ b/Cfg/etc/postfix/aliases/aliases.H_tracker.adm.crans.org @@ -0,0 +1,39 @@ +# -*- coding: utf-8; mode: conf-space -*- +# +# Fichier gere par BCfg2 +# +# Fichier d'alias pour postfix, +# pour les serveurs non mx + +root: root@crans.org + +backup: root +bin: root +daemon: root +ftp: root +ftpmaster: root +ftp-mirror: root +games: root +gnats: root +irc: root +list: root +lp: root +mail: root +majordom: root +man: root +msql: root +news: root +nobody: root +operator: root +postgres: root +postmaster: root +proxy: root +sync: root +sys: root +uucp: root +www-data: root + +mailer-daemon: postmaster +webmaster: root + +tracker: "| /usr/local/bin/redmine_handle_mail.py" diff --git a/Cfg/etc/postfix/virtual/virtual b/Cfg/etc/postfix/virtual/virtual index 46b9b90..8cb856d 100644 --- a/Cfg/etc/postfix/virtual/virtual +++ b/Cfg/etc/postfix/virtual/virtual @@ -30,6 +30,12 @@ forum@crans.org forum@lists.crans.org forum@crans.ens-cachan.fr forum@lists.crans.org praccis@crans.org praccis@lists.crans.org +# +---------+ +# | tracker | +# +---------+ + +tracker@crans.org tracker@tracker.adm.crans.org + # +-------------+ # | temporaires | # +-------------+ diff --git a/Python/etc/postfix/main.cf b/Python/etc/postfix/main.cf index 321b081..0c9b30b 100644 --- a/Python/etc/postfix/main.cf +++ b/Python/etc/postfix/main.cf @@ -1,5 +1,7 @@ # -*- mode: python; coding: utf-8 -*- +include("ip") + header("Fichier de configuration principal de postfix.") mx = has("mail-mx") @@ -16,6 +18,9 @@ users = has("users") # Si vrai alors passe les mails des ml a mailman manage_ml = has("mailing-list-manager") +# Si vrai, on est sur le tracker +tracker = has("tracker") + # La base de donnee utilise (pour les mx) if has("ldap"): db = "ldap" @@ -55,10 +60,16 @@ myorigin = "crans.org" mynetworks = local_networks if mx: add(client_networks + adm_networks) +elif tracker: + add(adm_networks) if not mx: - @# Ecoute en local uniquement - inet_interfaces = "loopback-only" + if not tracker: + @# Ecoute en local uniquement + inet_interfaces = "loopback-only" + else: + @# Ecoute en local et sur adm (récupération des mails @tracker.adm.crans.org + inet_interfaces = ["127.0.0.1/8", "%s/32" % admip()] if mx: @# Destinations acceptees @@ -83,6 +94,9 @@ if mx: add(["lists.$mydomain"]) if not mx: + if tracker: + @# On accepte les mails destinés au tracker + mydestination = "tracker.adm.crans.org", @# Les mails sont envoyes au MX principal relayhost = "smtp.adm.crans.org", diff --git a/Python/etc/postfix/master.cf b/Python/etc/postfix/master.cf index 6403a75..2c0c06e 100644 --- a/Python/etc/postfix/master.cf +++ b/Python/etc/postfix/master.cf @@ -18,6 +18,8 @@ public = has("mail-mx-public") # Si vrai alors delivre localement les mails des adherents. users = has("users") +tracker = has("tracker") + pub = pubip() adm = admip() loc = "127.0.0.1" @@ -99,6 +101,9 @@ if main: @ -o smtpd_tls_wrappermode=yes @ -o smtpd_sasl_auth_enable=yes @ -o smtpd_client_restrictions=permit_sasl_authenticated,reject +elif tracker: + @smtp inet n - - - - smtpd + @ -o receive_override_options=no_address_mappings else: if has("titanic"): print ext + ":smtp inet n - - - - smtpd"