Skip to content
Snippets Groups Projects
Unverified Commit a4ef2c0a authored by Roma's avatar Roma Committed by Rémy Huet
Browse files

ldap-virtual-mailbox-maps: pas un copy, mais un write bash

parent ba6147e9
No related branches found
No related tags found
1 merge request!20pica-mailnt
......@@ -15,7 +15,16 @@ postconf -e "myhostname=${MY_HOSTNAME}"
postconf -e "virtual_transport = lmtp:inet:${LMTP_LAN_HOSTNAME}:${LMTP_PORT}"
#noms de domaines des boîtes gérées par ce serveur de fin de chaîne
postconf -e "virtual_mailbox_domains = ${MY_DOMAIN}, localhost.${MY_DOMAIN}, localhost"
#préfixe pour éviter que des mails buggués atterissent n'importe où dans le système de fichiers (c'est une sécurité mais c'est pas ça qui fait que ça marche)
#map: donne la liste des adresses existantes
cat <<EOF >> /etc/postfix/ldap-virtual-mailbox-maps
server_host = ${LDAP_PROTOCOL}://${LDAP_SERVER_HOSTNAME}:${LDAP_PORT}
search_base = ${LDAP_SEARCH_BASE}
query_filter = ${LDAP_VIRTUAL_MAILBOX_FILTER}
bind = yes
bind_dn = ${LDAP_BIND_DN}
bind_pw = ${LDAP_BIND_PW}
result_attribute = uid
EOF
postconf -e "virtual_mailbox_maps = ldap:/etc/postfix/ldap-virtual-mailbox-maps"
#en dessous de ce degré de "vérité", les boîtes non trouvées en table sont rejetées. (100 correspond à un "vrai" simple, mais il est possible de définir différents degrés d'appartenance à la table des utilisateurs dans des configurations plus complexes: une boîte pourrait par exemple avoir le bon nom de domaine mais pas le bon nom d'utilisateur, mais ne pas être rejetée;)
postconf -e "virtual_minimum_uid = 100"
......
#on met en commentaire ces paramètres parce qu'ils seront écrits lors de l'entrypoint
#hôte, port et protocole (on pourrait utiliser ldaps)
# server_host = ldap://ldap.test.picasoft.net:389
#niveau de l'arborescence LDAP à partir duquel on commencer à chercher dans les entrées
# search_base = dc=picasoft,dc=net
#filtre permettant d'accepter certaines entrées: ici, le paramètre en entrée est %s
#uid correspond au champ LDAP utilisé, on aurait pu aussi utiliser cn, ou n'importe quel autre champ, c'est arbitraire.
# query_filter = uid=%s
#ce qui sera retourné par la requête. Comme le but est seulement de vérifier si l'adresse existe, il faut juste que ce champ soit non vide.
# result_attribute = uid
#le bind au serveur (un utilisateur spécial utilisé pour se connecter au LDAP et lire son arborescence (à l'exception des hashs de password))
# bind = yes
# bind_dn = cn=nss,dc=picasoft,dc=net
# bind_pw = rdonly
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