diff --git a/pica-mail-mta/sasl-test/Dockerfile b/pica-mail-mta/sasl-test/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..03b1fc72177610b269966f48ee0fbf2ac9479661
--- /dev/null
+++ b/pica-mail-mta/sasl-test/Dockerfile
@@ -0,0 +1,20 @@
+From pica-mail-mta
+
+#installation des paquets debian
+RUN apt-get update -y \
+  && apt-get install -y \
+      nano telnet rsyslog dnsutils \
+  && rm -rf /var/lib/apt/lists/*
+
+
+#serveur MDA/LDA sous la forme d'un serveur LMTP : donner l'adresse et le port du conteneur avec pica-mail-mda
+ENV LMTP_LAN_HOSTNAME pica-mail-mda-auth_plaintext.local-mail-delivery
+ENV LMTP_PORT 24
+
+ENV LDAP_SERVER_HOSTNAME ldap.test.picasoft.net
+ENV LDAP_PORT 389
+
+COPY local_users /
+COPY saslauthd-postfix /etc/default/
+COPY entrypoint2.sh /
+ENTRYPOINT ["/entrypoint2.sh"]
diff --git a/pica-mail-mta/sasl-test/README.md b/pica-mail-mta/sasl-test/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..93681bd3fa4a158f1573a64b36478fb0b390738c
--- /dev/null
+++ b/pica-mail-mta/sasl-test/README.md
@@ -0,0 +1,5 @@
+Ce conteneur permet de tester différentes implémentations de SASL: PAM, remote IMAP et LDAP.
+
+On peut s'authentifier au serveur en utilisant des couples (login, mot de passe) totalement indépendant des boîtes mails. Ces couples viennent de la source choisie (PAM, rIMAP, LDAP). Il n'y a pas de bind avec la source permettant de contrôler l'existence des adresses mails*: le SASL permet seulement de protéger le serveur, mais une fois qu'on est dedans, on peut faire ce qu'on veut. Cependant, la configuration de postfix permettra (à terme) de réagir différemment selon que l'utilisateur est authentifié ou non. (Par exemple, on pourra autoriser tout le monde à envoyer du courrier à des adresses @picasoft.net, et autoriser seulement les utilisateurs authentifiés à envoyer du courrier en tant qu'une adresse @picasoft.net).
+
+\*En effet, le conteneur reconnaît deux adresses et boîtes mails crées arbitrairement:  mail1@picasoft.net et mail2@picasoft.net. On peut donc envoyer des mails en tant que / à ces adresses, et recevoir des mails à ces adresses sur le MDA s'il est allumé.
diff --git a/pica-mail-mta/sasl-test/entrypoint2.sh b/pica-mail-mta/sasl-test/entrypoint2.sh
new file mode 100755
index 0000000000000000000000000000000000000000..13e770c67b153b32725b610296ed709865e38fb9
--- /dev/null
+++ b/pica-mail-mta/sasl-test/entrypoint2.sh
@@ -0,0 +1,87 @@
+#!/bin/bash
+
+/entrypoint.sh true
+
+postfix stop
+#génération du .db à partir du fichier texte
+postmap /local_users
+#ajout du .db en tant que source
+postconf -e "virtual_mailbox_maps = hash:/local_users"
+
+#on modifie temporairement les restrictions pour permettre à tout le monde d'envoyer du mail par notre serveur tant que la destination est autorisée (par les autres règles) et que celui qui tente de se servir du serveur est sur un réseau autorisé (typiquement l'hôte et le subnet)
+postconf -e "mynetworks = 127.0.0.0/8"
+#voir en dessous pour la config sasl
+postconf -e "smtpd_recipient_restrictions = permit_sasl_authenticated, reject_unauth_destination"
+
+postconf -e "smtpd_client_restrictions = "
+
+#désactivation des restrictions sur le helo
+postconf -e "smtpd_helo_restrictions = "
+
+#configuration du local delivery agent sous la forme du serveur lmtp de dovecot connecté par socket ip (inet)
+postconf -e "virtual_transport = lmtp:inet:${LMTP_LAN_HOSTNAME}:${LMTP_PORT}"
+#:private/dovecot-lmtp
+
+#utiliser le démon saslauthd. Il est contacté par des appels de fonction à une lib et retourne la validité des login.
+postconf -e "smtpd_sasl_path = smtpd"
+cat <<EOF >> /etc/postfix/sasl/smtpd.conf
+pwcheck_method: saslauthd
+mech_list: PLAIN LOGIN
+EOF
+
+#fichiers de config et socket utilisés par le démon de saslauthd créé pour postfix (voir fichier copié dans le Dockerfile)
+dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd
+adduser postfix sasl
+service saslauthd  restart
+
+#on utilise les comptes unix de l'hôte
+postconf -e 'smtpd_sasl_local_domain = $myhostname'
+postconf -e 'smtpd_sasl_auth_enable = yes'
+postconf -e 'smtpd_sasl_security_options = noanonymous'
+#autorise l'auth depuis des clients connus comme sécurisés mais utilisant des syntaxes obsolètes/non standard (=outlook)
+postconf -e 'broken_sasl_auth_clients = yes'
+
+useradd toto
+useradd bobo
+echo "toto:toutou"|chpasswd
+echo "bobo:boubou"|chpasswd
+
+if [ "$1" == "imap" ]
+then
+
+echo "L\'authentification SASL se fera par IMAP."
+  #find-and-replace
+  sed -i -e 's/MECHANISMS="pam"/MECHANISMS="rimap"/g' /etc/default/saslauthd-postfix
+  sed -i -e 's/MECH_OPTIONS=""/MECH_OPTIONS="${IMAP_AUTH_LAN_HOSTNAME}"/g' /etc/default/saslauthd-postfix
+  #TODO: implémenter un find-and-replace permettant de mettre un backslash pour hôte/port
+
+elif [ "$1" == "ldap" ]
+then
+echo "L\'authentification SASL se fera par LDAP."
+
+#find-and-replace
+sed -i -e 's/MECHANISMS="pam"/MECHANISMS="ldap"/g' /etc/default/saslauthd-postfix
+cat <<EOF >> /etc/saslauthd.conf
+ldap_servers: ldap://${LDAP_SERVER_HOSTNAME}:${LDAP_PORT}
+ldap_bind_dn: ${LDAP_BIND_DN}
+ldap_bind_pw: ${LDAP_BIND_PW}
+ldap_search_base: ${LDAP_SEARCH_BASE}
+ldap_filter: ${LDAP_FILTER}
+EOF
+
+else
+ echo "L\'authentification SASL se fera par PAM."
+ #c'est le paramètre par défaut dans saslauthd-postfix: on touche à rien
+fi
+
+
+postfix start
+postfix reload
+postfix stop
+
+service rsyslog start
+
+service postfix stop
+service postfix start
+
+tail -F /var/log/mail.log
diff --git a/pica-mail-mta/sasl-test/local_users b/pica-mail-mta/sasl-test/local_users
new file mode 100644
index 0000000000000000000000000000000000000000..e1ec6254d9faa787c48366491327a1f06a517178
--- /dev/null
+++ b/pica-mail-mta/sasl-test/local_users
@@ -0,0 +1,3 @@
+mail1 mail1
+mail2 mail2
+#attention: la partie après les deux points n'est pas interprétée, ceci liste les adresses existantes mais n'effectue aucun contrôle d'accès
diff --git a/pica-mail-mta/sasl-test/saslauthd-postfix b/pica-mail-mta/sasl-test/saslauthd-postfix
new file mode 100644
index 0000000000000000000000000000000000000000..bca39c2b1af416966a048baf87d9f49a783c57eb
--- /dev/null
+++ b/pica-mail-mta/sasl-test/saslauthd-postfix
@@ -0,0 +1,64 @@
+#
+# Settings for saslauthd daemon
+# Please read /usr/share/doc/sasl2-bin/README.Debian for details.
+#
+
+# Should saslauthd run automatically on startup? (default: no)
+START=yes
+
+# Description of this saslauthd instance. Recommended.
+# (suggestion: SASL Authentication Daemon)
+DESC="SASL Auth. Daemon for Postfix"
+
+# Short name of this saslauthd instance. Strongly recommended.
+# (suggestion: saslauthd)
+NAME="saslauthd-postf"
+
+# Which authentication mechanisms should saslauthd use? (default: pam)
+#
+# Available options in this Debian package:
+# getpwent  -- use the getpwent() library function
+# kerberos5 -- use Kerberos 5
+# pam       -- use PAM
+# rimap     -- use a remote IMAP server
+# shadow    -- use the local shadow password file
+# sasldb    -- use the local sasldb database file
+# ldap      -- use LDAP (configuration is in /etc/saslauthd.conf)
+#
+# Only one option may be used at a time. See the saslauthd man page
+# for more information.
+#
+# Example: MECHANISMS="pam"
+MECHANISMS="pam"
+
+# Additional options for this mechanism. (default: none)
+# See the saslauthd man page for information about mech-specific options.
+MECH_OPTIONS=""
+
+# How many saslauthd processes should we run? (default: 5)
+# A value of 0 will fork a new process for each connection.
+THREADS=5
+
+# Other options (default: -c -m /var/run/saslauthd)
+# Note: You MUST specify the -m option or saslauthd won't run!
+#
+# WARNING: DO NOT SPECIFY THE -d OPTION.
+# The -d option will cause saslauthd to run in the foreground instead of as
+# a daemon. This will PREVENT YOUR SYSTEM FROM BOOTING PROPERLY. If you wish
+# to run saslauthd in debug mode, please run it by hand to be safe.
+#
+# See /usr/share/doc/sasl2-bin/README.Debian for Debian-specific information.
+# See the saslauthd man page and the output of 'saslauthd -h' for general
+# information about these options.
+#
+# Example for chroot Postfix users: "-c -m /var/spool/postfix/var/run/saslauthd"
+# Example for non-chroot Postfix users: "-c -m /var/run/saslauthd"
+#
+# To know if your Postfix is running chroot, check /etc/postfix/master.cf.
+# If it has the line "smtp inet n - y - - smtpd" or "smtp inet n - - - - smtpd"
+# then your Postfix is running in a chroot.
+# If it has the line "smtp inet n - n - - smtpd" then your Postfix is NOT
+# running in a chroot.
+
+# Option -m sets working dir for saslauthd (contains socket)
+OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd" # postfix/smtp in chroot()