Skip to content
Snippets Groups Projects
Verified Commit 9fc189dc authored by Quentin Duchemin's avatar Quentin Duchemin
Browse files

[Mail] Remove unused files and env variables from Dockerfile

parent 51c51b6b
No related branches found
No related tags found
1 merge request!67[Mail] Partially revert e0260299 and make Postfix listen to port 25 again
......@@ -49,42 +49,44 @@ services:
- /var/log/opendmarc.log:/var/log/opendmarc.log
# For sharing with exporter
- mail-mta-spool:/var/spool/postfix
#doit contenir selecteur.domaine.rsa
# Doit contenir selecteur.domaine.rsa
- /DATA/docker/mail/opendkim/:/etc/dkimkeys/
- /DATA/docker/certs/mail.picasoft.net/:/certs-ssl/:ro
env_file: ./secrets/mail.secrets
environment:
#hostname et port du serveur LMTP i.e. le MDA
# As specified in volume section, this is where
# keys generated by Traefik are mounted
SSL_CERT: "/certs-ssl/fullchain.pem"
SSL_KEY: "/certs-ssl/privkey.pem"
# Hostname et port du serveur LMTP i.e. le MDA
LMTP_LAN_HOSTNAME: pica-mail-mda
LMTP_PORT: 24
#nom d'hôte sous lequel Postfix répondra aux requêtes SMTP
# Nom d'hôte sous lequel Postfix répondra aux requêtes SMTP
MY_HOSTNAME: mail.picasoft.net
#domaine des mails
# Domaine des mails
MY_DOMAIN: picasoft.net
#domaines mails qu'on s'autorise à relayer (qui ont le droit de passer à travers notre serveur si ils sont en expéditeur ou destinataire)
# Domaines mails qu'on s'autorise à relayer (qui ont le droit de passer à travers notre serveur si ils sont en expéditeur ou destinataire)
RELAY_DOMAINS: picasoft.net
#réglage de la connexion au serveur LDAP: protocole (ldap ou ldaps), hôte et port
# Réglage de la connexion au serveur LDAP
LDAP_PROTOCOL: ldaps
LDAP_SERVER_HOSTNAME: ldap.picasoft.net
LDAP_PORT: 636
#réglage du bind : login d'un compte qui a suffisamment de droits pour lire l'arborescence (à l'exception des mots de passe)
# Réglage du bind : login d'un compte qui a suffisamment de droits pour lire l'arborescence (à l'exception des mots de passe)
LDAP_BIND_DN: cn=nss,dc=picasoft,dc=net
#réglage de la manière dont on répertorie les comptes et les adresses existantes
#la config actuelle fait que la possession d'une adresse mail se fait ainsi : login => login@picasoft.net
#cependant, nous avons quand même deux couches différentes: l'existence d'un compte (SASL) et l'existence d'une adresse
#ce qui fait qu'on peut créer une adresse valide sans nécessairement lui associer un compte valide
#ainsi, on pourra recevoir des mails dans la boîte, mais on ne pourra pas se connecter en tant que cet utilisateur
#pour ce faire, il suffit d'utiliser des attributs LDAP différents
#nous utilisons donc le cn pour l'existence d'un compte LDAP, et l'uid pour l'existence d'une adresse
#niveau de l'arborescence à partir duquel les entrées sont trouvées:
# Réglage de la manière dont on répertorie les comptes et les adresses existantes
# La config actuelle fait que la possession d'une adresse mail se fait ainsi : login => login@picasoft.net
# Cependant, nous avons quand même deux couches différentes: l'existence d'un compte (SASL) et l'existence d'une adresse
# On peut donc créer une adresse valide sans nécessairement lui associer un compte valide : on pourra recevoir des mails dans la boîte, mais on ne pourra pas se connecter en tant que cet utilisateur
# Il suffit d'utiliser des attributs LDAP différents : le cn pour l'existence d'un compte LDAP, et l'uid pour l'existence d'une adresse
# Niveau de l'arborescence à partir duquel les entrées sont trouvées:
LDAP_SEARCH_BASE: dc=picasoft,dc=net
#filtre permettant de répertorier les comptes SASL
# Filtre permettant de répertorier les comptes SASL
LDAP_SASL_FILTER: "cn=%u"
#filtre permettant de répertorier les adresses mail
# Filtre permettant de répertorier les adresses mail
LDAP_VIRTUAL_MAILBOX_FILTER: "uid=%s"
#ajout de listes noires pour éviter le SPAM. La décision politique et l'éthique associée sortent du cadre de la conception de cette image et doivent être discutées par l'asso; en tout cas, si on lève cette restriction, elle doit être remplacée par une autre (un spamassassin par exemple).
# Ajout de listes noires pour éviter le SPAM. La décision politique et l'éthique associée sortent du cadre de la conception de cette image et doivent être discutées par l'asso; en tout cas, si on lève cette restriction, elle doit être remplacée par une autre (un spamassassin par exemple).
SMTPD_CLIENT_RESTRICTIONS: reject_rbl_client sbl.spamhaus.org, reject_rbl_client dnsbl.sorbs.net
#prefixe DKIM, utilise pour identifier la clef
# Préfixe DKIM, utilise pour identifier la clef
DKIM_SELECTOR: janv2021
labels:
traefik.http.routers.pica-mail-mta.rule: Host(`mail.picasoft.net`)
......
#Dockerfile pour le MTA et MSA de Picasoft
#actuellement basé sur postfix
From debian:stretch
LABEL maintainer="picasoft@assos.utc.fr"
FROM debian:stretch
#lors de l'installation de postfix, par défaut, il y a des "fenêtres dans la console", ceci les désactive et utilise des réponses par défaut
# Use default answer for installation as no one can answer
ENV DEBIAN_FRONTEND noninteractive
#installation des paquets debian
RUN apt-get update -y \
&& apt-get install -y \
postfix postfix-ldap libsasl2-modules sasl2-bin opendkim opendkim-tools rsyslog opendmarc ca-certificates \
&& rm -rf /var/lib/apt/lists/*
#configuration de postfix
#nom de domaine des courriers dont on est à l'origine (pour s'en réserver l'exclusivité)
ENV MY_DOMAIN picasoft.net
#nom d'\hôte de la machine qui va faire tourner le MTA
ENV MY_HOSTNAME pica01-test.picasoft.net
#noms de domaines de courriers qu'on s'autorise à transmettre, séparés par des virgules (example.com, example2.com, example3.com)
ENV RELAY_DOMAINS picasoft.net
ENV LDAP_BIND_PW readonly
#niveau de l'arborescence à partir de laquelle les entrées sont considérées
ENV LDAP_SEARCH_BASE dc=picasoft,dc=net
#filtre sur les entrées demandées par saslauthd. %u sera substitué par le login entré par l'utilisateur
ENV LDAP_SASL_FILTER cn=%u
#filtre sur les entrées demandées par virtual_mailbox. %s sera substitué par la partie gauche de l'adresse mail.
ENV LDAP_VIRTUAL_MAILBOX_FILTER uid=%s
#Local Delivery (LMTP)
#adresse et port du LDA (dans notre cas, c'est le MDA Dovecot, embarqué dans un conteneur, et accessible à travers un docker network)
ENV LMTP_LAN_HOSTNAME pica-mail-mda-ldap.local-mail-delivery
ENV LMTP_PORT 24
#blacklist, peut être vide
ENV SMTPD_CLIENT_RESTRICTIONS reject_rbl_client sbl.spamhaus.org, reject_rbl_client dnsbl.sorbs.net
# SSL
ENV SSL_CERT "/certs-ssl/fullchain.pem"
ENV SSL_KEY "/certs-ssl/privkey.pem"
#configuration de OpenDKIM
# Copy DKIM and DMARC conf
COPY spam/opendkim.conf /etc/
COPY spam/opendmarc.conf /etc/
COPY spam/dkimkeys/* /etc/dkimkeys/
COPY spam/opendkim /etc/default/opendkim
COPY spam/opendmarc /etc/default/opendmarc
RUN mkdir /etc/opendmarc
COPY --chown=opendmarc:opendmarc spam/ignore.hosts /etc/opendmarc/ignore.hosts
# Copy authentication daemon configuration
COPY saslauthd-postfix /etc/default/
# Copy scripts for building configuration at startup
COPY opendkim-tables.sh /
COPY config.sh /
COPY entrypoint.sh /
......
# /etc/rsyslog.conf Configuration file for rsyslog.
#
# For more information see
# /usr/share/doc/rsyslog-doc/html/rsyslog_conf.html
#################
#### MODULES ####
#################
module(load="imuxsock") # provides support for local system logging
module(load="imklog") # provides kernel logging support
#module(load="immark") # provides --MARK-- message capability
# provides UDP syslog reception
#module(load="imudp")
#input(type="imudp" port="514")
# provides TCP syslog reception
#module(load="imtcp")
#input(type="imtcp" port="514")
###########################
#### GLOBAL DIRECTIVES ####
###########################
#
# Use traditional timestamp format.
# To enable high precision timestamps, comment out the following line.
#
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
#
# Set the default permissions for all log files.
#
$FileOwner root
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
#
# Where to place spool and state files
#
$WorkDirectory /var/spool/rsyslog
#
# Include all config files in /etc/rsyslog.d/
#
$IncludeConfig /etc/rsyslog.d/*.conf
###############
#### RULES ####
###############
#
# First some standard log files. Log by facility.
#
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
#cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* -/var/log/lpr.log
#sera redirige vers le stdout
mail.* -/var/log/mail.log
user.* -/var/log/user.log
#
# Logging for the mail system. Split it up so that
# it is easy to write scripts to parse these files.
#
#mail.info -/var/log/mail.info
#mail.warn -/var/log/mail.warn
#mail.err /var/log/mail.err
#desactive car doublon avec mail.log
#
# Some "catch-all" log files.
#
*.=debug;\
auth,authpriv.none;\
news.none;mail.none -/var/log/debug
*.=info;*.=notice;*.=warn;\
auth,authpriv.none;\
cron,daemon.none;\
mail,news.none -/var/log/messages
#
# Emergencies are sent to everybody logged in.
#
*.emerg :omusrmsg:*
This directory is for storing private keys associated with DKIM signing with
opendkim.
Here is advice from upstream
(4) Store the private key in a safe place. We generally use a path like
/var/db/dkim/SELECTOR.key.pem (where "SELECTOR" is the name you chose).
The /var/db/dkim directory and the associated .pem file should be owned by
the user that will be executing the filter (preferably not the
superuser) and be mode 0700 and 0600 respectively.
In Debian, we use /etc/dkimkeys by default and the directory permissions and
ownership are set correctly. Ensure that the private key is owned by the
opendkim user and the permissions are 0600.
nov2018._domainkey.picasoft.net picasoft.net:nov2018:/etc/dkimkeys/nov2018.picasoft.net.rsa
*@picasoft.net nov2018._domainkey.picasoft.net
-----BEGIN RSA PRIVATE KEY-----
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
-----END RSA PRIVATE KEY-----
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment