Skip to content
Snippets Groups Projects
Unverified Commit 4e5e4458 authored by Thomas Picouet's avatar Thomas Picouet Committed by Rémy Huet
Browse files

changement NSS

parent e4af8ad7
No related branches found
No related tags found
1 merge request!20pica-mailnt
......@@ -32,7 +32,7 @@ services:
- /DATA/docker/mail/ssl/:/certs-ssl/
environment:
- LMTP_LAN_HOSTNAME=pica-mail-mda.pica_mail
- ENV LMTP_PORT=1025
- ENV LMTP_PORT=24
- MY_HOSTNAME=pica01-test.picasoft.net
labels:
- "traefik.frontend.rule=Host:mail.test.picasoft.net"
......@@ -53,7 +53,7 @@ services:
- DOMAIN=mail.test.picasoft.net
networks:
mail:
......
......@@ -4,16 +4,27 @@ From debian
#lors de l'installation de dovecot, par défaut, il y a des "fenêtres dans la console", ceci les désactive et utilise des réponses par défaut
ENV DEBIAN_FRONTEND noninteractive
### Définition des variables d'environnement.
# LDAP
ENV LDAP_ADDRESS ldap.test.picasoft.net
ENV LDAP_NSS_CN readonly
ENV LDAP_DC2 picasoft
ENV LDAP_DC1 net
ENV LDAP_DNPASS readonly
# SSL
# L'antislash "\" est nécessaire devant le slash "/" !
ENV SSL_CERT "\/certs-ssl\/cert"
ENV SSL_KEY "\/certs-ssl\/key"
COPY fichiers_de_configuration.sh /
#installation des paquets debian
RUN apt-get update -y \
&& apt-get install -y \
dovecot-common dovecot-imapd dovecot-lmtpd dovecot-ldap \
dovecot-common dovecot-imapd dovecot-lmtpd dovecot-ldap nano \
&& rm -rf /var/lib/apt/lists/* \
&& addgroup --gid 1000 vmail \
&& adduser --system --disabled-login --no-create-home --ingroup vmail --uid 500 vmail \
# Prévoir de lire des param de conf via variable d'environnement et passer en entrypoint
&& bash /fichiers_de_configuration.sh
CMD ["dovecot", "-F"]
......@@ -7,29 +7,14 @@
### Notes
# La configuration de Dovecot étant éclatée dans plus d'une dizaine de fichiers, ce script
# est censé être une alternative à la copie de tous ces fichiers pré-édité dans le conteneur.
# Fichier par fichier, il vient édité des paramètres spécifiques de Dovecot.
# Pour une utilisation basique, seule les variables d'environnement définies juste après doivent
# être définies. Le reste nécessite une connaissance plus fine de Dovecot.
# Fichier par fichier, il vient éditer des paramètres spécifiques de Dovecot.
# La commande massivement utilisée dans ce script est sed. L'utilisation qui en
# est faite est principalement celle-ci :
# sed -i (édite le fichier) 's/regex identifiant la ligne à remplacer/ligne de substitution/' /chemin/du/fichier
### Définition des variables d'environnement.
# LDAP
LDAP_ADRESS=ldap.test.picasoft.net
LDAP_NSS_CN=nss
LDAP_DC2=picasoft
LDAP_DC1=net
LDAP_DNPASS=rdonly
# SSL
# L'antislash est nécessaire devant le slash!
SSL_CERT="\/certs-ssl\/cert"
SSL_KEY="\/certs-ssl\/key"
### Modification de /etc/dovecot/dovecot-ldap.conf.ext
# Définition de l'adresse du LDAP
sed -i 's/^#hosts =.*/hosts = '"${LDAP_ADRESS}"'/' /etc/dovecot/dovecot-ldap.conf.ext
sed -i 's/^#hosts =.*/hosts = '"${LDAP_ADDRESS}"'/' /etc/dovecot/dovecot-ldap.conf.ext
# Définition du distinguished name pour accéder au LDAP
sed -i 's/^#dn =.*/dn = cn='"${LDAP_NSS_CN}"',dc='"${LDAP_DC2}"',dc='"${LDAP_DC1}"'/' /etc/dovecot/dovecot-ldap.conf.ext
# Définition du mot de passe pour accéder au LDAP
......@@ -51,6 +36,9 @@ sed -i 's/^#user_filter = .*/user_filter = (uid=%n)/' /etc/dovecot/dovecot-ldap.
sed -i 's/^#pass_filter = .*/pass_filter = (uid=%n)/' /etc/dovecot/dovecot-ldap.conf.ext
#sed -i 's/^# = .*//' /etc/dovecot/dovecot-ldap.conf.ext
### Modification de /etc/dovecot/conf.d/auth-ldap.conf.ext
#sed
### Modification de /etc/dovecot/conf.d/10-auth.conf
# Le mécanisme d'authentification ne se fait pas par le système mais par un LDAP (inclusion du fichier de config)
sed -i 's/^!include auth-system\.conf\.ext.*/#!include auth-system.conf.ext/' /etc/dovecot/conf.d/10-auth.conf
......
......@@ -29,8 +29,8 @@ ENV LDAP_PROTOCOL ldap
ENV LDAP_SERVER_HOSTNAME ldap.test.picasoft.net
ENV LDAP_PORT 389
#compte utilisé par les démons saslauthd et virtual_mailbox pour lire l'arborescence LDAP
ENV LDAP_BIND_DN cn=nss,dc=picasoft,dc=net
ENV LDAP_BIND_PW rdonly
ENV LDAP_BIND_DN cn=readonly,dc=picasoft,dc=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
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment