Anomalie #2066
Le conteneur ne peut pas envoyer de mail
Description
Il n'est pas possible d'envoyer des mails depuis le conteneur web (notamment depuis l'interface web).
Aujourd'hui exim est installé dans le conteneur web, il faut ajouter une dépendance sur ssmtp sur eole-web.
Modification du template 20_mail.xml (à l'époque container_only n'existait pas, donc on templatisait a chaque fois même si ce n'est pas nécessaire) :
--- /root/20_mail.xml 2011-09-15 22:35:33.826875570 +0200 +++ /usr/share/eole/creole/dicos/20_mail.xml 2011-09-15 22:37:13.504885423 +0200 @@ -12,7 +12,7 @@ <file filelist='sympa' name='/usr/share/ead2/backend/config/actions/actions_mail.cfg' rm='True'/> <file filelist='sympa' name='/usr/share/eole/firewall/00_mail_sympa.fw' rm='True'/> <!-- configuration de ssmtp pour le mode conteneur --> - <file name='/etc/ssmtp/ssmtp.conf' mkdir='True'/> + <file name='/etc/ssmtp/ssmtp.conf' container_only='True'/> <file name='/etc/bacula/baculafichiers.d/mail.conf' source='bacula-mail.conf'/> </files> <containers>
Modification du template 20_web.xml :
--- /root/20_web.xml 2011-09-15 22:35:50.646862781 +0200 +++ /usr/share/eole/creole/dicos/20_web.xml 2011-09-15 22:51:32.906944264 +0200 @@ -18,6 +18,8 @@ <!-- remonter des logs vers la maitre --> <file name='/etc/rsyslog.d/50-default.conf' source="50-default-conteneur.conf" container_only="True"/> <file filelist='ssoclient' name='/usr/share/php/configCAS/cas.inc.php' source='cas.inc.php.tmpl' mkdir='True'/> + <file name='/etc/ssmtp/ssmtp.conf' container_only='True'/> + <file name='/usr/share/eole/firewall/00_web.fw' container_only='True'/> </container> </containers>
Nouveau template 00_web_mail.fw :
%if %%is_defined('container_ip_mail') allow_dest(interface='eth0', container='mail', port='25') %else %if %%tls_smtp == 'port 465' allow_dest(interface='eth0', ip='%%passerelle_smtp', port='465') %else allow_dest(interface='eth0', ip='%%passerelle_smtp', port='25') %end if %end if
Cela doit fonctionner avec eole-mail et eole-ssmtp.
Related issues
Associated revisions
corrections pour autoriser l'envoi de mails depuis le conteneur web (fixes #2066)
tmpl/00_mail.fw : autoriser le conteneur reseau à sortir sur TCP/25 ou
TCP/465 si tls smtp activé vers passerelle smtp
fixes #2066 @10m
History
#1 Updated by Emmanuel GARETTE (2) over 11 years ago
Il n'est pas possible de mettre un dépendance sur ssmtp à cause du mode non conteneur. Il faudrait peut être ajouter "container_only" dans la balise "package" d'un dictionnaire.
#2 Updated by Emmanuel GARETTE (2) over 11 years ago
Bizarrement je n'ai pas mis le patch pour ssmtp.conf :
--- /root/distrib/ssmtp.conf 2011-08-17 15:32:28.000000000 +0200 +++ ssmtp.conf 2011-09-21 11:16:59.000000000 +0200 @@ -12,11 +12,15 @@ #Mailhub # The host to send mail to, in the form host port | IP_addr port [: port]. # The default port is 25. +%if %%is_defined('container_ip_mail') +Mailhub=%%container_ip_mail +%else %if %%tls_smtp == 'port 465' Mailhub=%%passerelle_smtp:465 %else Mailhub=%%passerelle_smtp %end if +%end if #UseTLS # Specifies whether ssmtp uses TLS to talk to the SMTP server.
#3 Updated by Joël Cuissinat over 11 years ago
- Target version set to Mises à jour 2.3 - 02 RC
#4 Updated by Joël Cuissinat over 11 years ago
modification du ssmtp.conf : http://dev-eole.ac-dijon.fr/projects/eole-common/repository/revisions/7c14b54c67ecb53958b41da5938b5c82d544a006
#5 Updated by Joël Cuissinat over 11 years ago
- Status changed from Nouveau to Résolu
- % Done changed from 0 to 100
Appliqué par commit commit:"45fee8820a75357230a1faf005ca36ad427452ca"
#6 Updated by Joël Cuissinat over 11 years ago
- % Done changed from 100 to 80
Pour moi, il reste le problème de comment on dit au conteneur web d'installer ssmtp OU mail-pkg (exim) !
#7 Updated by Joël Cuissinat over 11 years ago
- Target version changed from Mises à jour 2.3 - 02 RC to Mises à jour 2.2.3 - 03 RC
#8 Updated by Joël Cuissinat over 11 years ago
- Target version changed from Mises à jour 2.2.3 - 03 RC to Mises à jour 2.3 - 03 RC
#9 Updated by Joël Cuissinat over 11 years ago
- Status changed from Résolu to En attente d'informations
- Target version changed from Mises à jour 2.3 - 03 RC to Mises à jour 2.3.4 RC
- Distribution set to EOLE 2.3
#10 Updated by Joël Cuissinat over 11 years ago
- Project changed from conf-scribe to eole-exim
#11 Updated by Daniel Dehennin about 11 years ago
eole-common
: Dependseole-exim
pour installer les dicos/templateseolebase-conteneur
:Depends
ssmtp-pkg|mail-pkg
: pour installer le paquetssmtp-pkg
par défaut mais permettre son remplacement parexim-pkg
dans le conteneur mail
Le projet eole-ssmtp
devient donc inutile, il ne reste que son template à transvaser dans eole-exim
et s’assurer qu’il sera installer dans tous les conteneurs.
#12 Updated by Daniel Dehennin about 11 years ago
eole-common
doit aussi avoir une dépendance sur ssmtp-pkg|mail-pkg
pour le mode non conteneur
#13 Updated by Daniel Dehennin about 11 years ago
- Target version changed from Mises à jour 2.3.4 RC to Mises à jour 2.3.5 RC
#14 Updated by Bruno Boiget almost 11 years ago
2.3.5 RC
Pour tenter de résumer :
- ssmtp.conf est livré par eole-exim (port en dur) ou eole-ssmtp (template avec configuration du port) suivant les dépendances du module.
- le dictionnaire fourni par eole-web envoie ce template dans le conteneur web et met en place une règle vers le conteneur mail si nécessaire
- Il y a une dépendance sur eole-ssmtp | eole-mail dans eolebase-minimal
Le paquet ssmtp n'est pas installé dans le conteneur (seulement le fichier de conf)
A voir avec la configuration du serveur smtp de php.ini ? cf. demande #3610
#15 Updated by Bruno Boiget almost 11 years ago
- Target version changed from Mises à jour 2.3.5 RC to Mises à jour 2.3.6 RC
#16 Updated by Joël Cuissinat almost 11 years ago
- Target version changed from Mises à jour 2.3.6 RC to Mises à jour 2.3.7 RC
J'ai réglé l'affaire uniquement pour le conteneur web en ajoutant la fameuse dépendance scribe-pkg:commit:37dd9074 uniquement dans web-pkg.
#17 Updated by Joël Cuissinat over 10 years ago
- Status changed from En attente d'informations to Résolu
- % Done changed from 80 to 100
Appliqué par commit conf-scribe:45fee8820a75357230a1faf005ca36ad427452ca.
#18 Updated by Joël Cuissinat over 10 years ago
- Status changed from Résolu to À valider
- % Done changed from 100 to 80
Mon fix semble correspondre au cas horus-conteneur (ie : eole-web sans eole-mail, ssmtp envoie directement le mail vers la passerelle académique).
Dans le cas AmonEcole (eole-web + eole-mail), les mails sont bien passés à Exim (nb : dans ce cadre les règles ajoutées ne sont pas utiles car les deux se retrouvent dans le groupe de conteneur reseau), mais c'est Exim (le conteneur mail), lui-même qui ne peut pas sortir !
Je propose donc d'ajouter les lignes suivantes dans 00_mail.fw :
# envoi des mails vers la passerelle SMTP %if %%tls_smtp == 'port 465' allow_dest(interface='eth0', ip='%%passerelle_smtp', port='465') %else allow_dest(interface='eth0', ip='%%passerelle_smtp', port='25') %end if
#19 Updated by Fabrice Barconnière over 10 years ago
- Target version changed from Mises à jour 2.3.7 RC to Mises à jour 2.3.7 Stable
#20 Updated by Fabrice Barconnière over 10 years ago
- Status changed from À valider to Résolu
- % Done changed from 80 to 100
Appliqué par commit 9a8920ba505b47c9fcb6b7e00b1fa8c96ae1ac86.
#21 Updated by Fabrice Barconnière over 10 years ago
- Status changed from Résolu to Fermé