Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
utilisateurs:hypathie:tutos:php-envoi-de-mails [28/12/2020 18:59] Hypathie [msmtp] |
utilisateurs:hypathie:tutos:php-envoi-de-mails [28/12/2020 20:27] Hypathie [postfix] |
||
---|---|---|---|
Ligne 50: | Ligne 50: | ||
<note tip> | <note tip> | ||
- | * host mail.gandi.net : c'est le mail DNS de gandi | + | * **host mail.gandi.net** : c'est le mail DNS de gandi |
**?? où trouver l'info ??** | **?? où trouver l'info ??** | ||
- | * user application@comgocom.pw : c'est le nom de la messagerie associée au domaine servant pour le site web | + | * **user application@comgocom.pw** : c'est le nom de la messagerie associée au domaine servant pour le site web |
{{/file-R1e8ae758462487d12172eaf18416fb7c.png}} | {{/file-R1e8ae758462487d12172eaf18416fb7c.png}} | ||
- | * from admin@comgocom.pw : c'est l'alias de l'adresse nom de la messagerie associée au domaine servant pour le site web | + | * **from admin@comgocom.pw** : c'est l'alias de l'adresse nom de la messagerie associée au domaine servant pour le site web |
+ | * **tls_trust_file /etc/ssl/certs/ca-certificates.crt** : si aucun certificat se trouve à ce chemin, tout fonctionne malgré cela. | ||
</note> | </note> | ||
Ligne 120: | Ligne 121: | ||
Dans cet exemple, à partir de la configuration DNS par défaut qui correspond au nom de domaine comgocom.pw : | Dans cet exemple, à partir de la configuration DNS par défaut qui correspond au nom de domaine comgocom.pw : | ||
- | * Les champs de type A permettent de rejoindre une box machin_chose_1 d'ip 78.115.221.146 ou la box machin_chose_2 qui sont paramétrées pour rediriger le port 80 vers une machine sur laquelle tourne apache2 et qui possède le code source du site. | + | * Les champs de **type A** permettent de rejoindre une box machin_chose_1 d'ip 78.115.221.146 ou la box machin_chose_2 qui sont paramétrées pour rediriger le port 80 vers une machine sur laquelle tourne apache2 et qui possède le code source du site. |
- | * Le dernier champ CNAME a été ajouté pour que le nom de domaine comgocom.pw ... | + | * Le dernier champ **CNAME** a été ajouté pour que le nom de domaine comgocom.pw ...??? |
</note> | </note> | ||
Ligne 147: | Ligne 148: | ||
* 192.168.1.80 comgocom.pw : c'est l'ip fixée à cette adresse au niveau du routeur de la box_machin_2 ... | * 192.168.1.80 comgocom.pw : c'est l'ip fixée à cette adresse au niveau du routeur de la box_machin_2 ... | ||
</note> | </note> | ||
- | ===== Installation de postfix ===== | + | ===== postfix ===== |
+ | ====Installations et configurations ==== | ||
+ | * Pour utiliser le client mail en ligne de commande | ||
+ | <code root>apt install mailutils</code> | ||
+ | * Pour utiliser la commande dig (info sur dns reverse) | ||
+ | <code root>apt install dnsutils</code> | ||
+ | * Pour créer des clés d'authentification dns | ||
+ | <code root>apt-get install opendkim opendkim-tools</code> | ||
+ | |||
+ | <code root>apt install postfix</code> | ||
+ | |||
+ | <note> | ||
+ | Lors de l'installation de postfix répondre : | ||
+ | |||
+ | * Site internet | ||
+ | * Nom du domaine des adresses mails, ici comgocom.pw | ||
+ | </note> | ||
+ | |||
+ | ===Configuration de postfix /etc/postfix/main.cf === | ||
+ | |||
+ | <code root>kate /etc/postfix/main.cf</code> | ||
+ | |||
+ | <code> | ||
+ | # See /usr/share/postfix/main.cf.dist for a commented, more complete version | ||
+ | |||
+ | |||
+ | # Debian specific: Specifying a file name will cause the first | ||
+ | # line of that file to be used as the name. The Debian default | ||
+ | # is /etc/mailname. | ||
+ | #myorigin = /etc/mailname | ||
+ | |||
+ | smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) | ||
+ | biff = no | ||
+ | |||
+ | # appending .domain is the MUA's job. | ||
+ | append_dot_mydomain = no | ||
+ | |||
+ | # Uncomment the next line to generate "delayed mail" warnings | ||
+ | #delay_warning_time = 4h | ||
+ | |||
+ | readme_directory = no | ||
+ | |||
+ | # See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on | ||
+ | # fresh installs. | ||
+ | compatibility_level = 2 | ||
+ | |||
+ | |||
+ | |||
+ | # TLS parameters | ||
+ | smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem | ||
+ | smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key | ||
+ | smtpd_use_tls=yes | ||
+ | smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache | ||
+ | smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache | ||
+ | |||
+ | # See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for | ||
+ | # information on enabling SSL in the smtp client. | ||
+ | |||
+ | smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination | ||
+ | myhostname = comgocom.pw | ||
+ | alias_maps = hash:/etc/aliases | ||
+ | alias_database = hash:/etc/aliases | ||
+ | #myorigin = /etc/mailname | ||
+ | mydestination = $myhostname, comgocom.pw, Eve, localhost.$mydomain, $mydomain | ||
+ | relayhost = | ||
+ | mynetworks = 127.0.0.0/8 192.168.1.0/24 192.168.0.0/24 [::ffff:127.0.0.0]/104 [::1]/128 | ||
+ | mailbox_size_limit = 0 | ||
+ | recipient_delimiter = + | ||
+ | inet_interfaces = all | ||
+ | inet_protocols = all | ||
+ | </code> | ||
+ | |||
+ | <code root>kate /etc/hosts</code> | ||
+ | |||
+ | <code>127.0.0.1 localhost | ||
+ | 127.0.1.1 Eve | ||
+ | 192.168.0.18 db | ||
+ | 192.168.0.18 comgocom.pw mail.comgocom.pw | ||
+ | 192.168.1.80 comgocom.pw mail.comgocom.pw | ||
+ | |||
+ | # The following lines are desirable for IPv6 capable hosts | ||
+ | ::1 localhost ip6-localhost ip6-loopback | ||
+ | ff02::1 ip6-allnodes | ||
+ | ff02::2 ip6-allrouters | ||
+ | </code> | ||
+ | * Pour changer le nom de la machine par le nom de domaine, pour que le mail envoyé le soit ...@domain au lieu de ...@hostname | ||
+ | <code root>hostnamectl set-hostname comgocom.pw | ||
+ | </code> | ||
+ | |||
+ | <code root>kate /etc/aliases</code> | ||
+ | |||
+ | <code># /etc/aliases | ||
+ | mailer-daemon: postmaster | ||
+ | postmaster: root | ||
+ | nobody: root | ||
+ | hostmaster: root | ||
+ | usenet: root | ||
+ | news: root | ||
+ | webmaster: root | ||
+ | www: root | ||
+ | ftp: root | ||
+ | abuse: root | ||
+ | noc: root | ||
+ | security: root | ||
+ | root: nathalie | ||
+ | admin: nathalie | ||
+ | </code> | ||
+ | * Pour régénérer le fichier aliases.db | ||
+ | <code root>newaliases </code> | ||
+ | |||
+ | ===Configuration de OpenDKIM === | ||
+ | |||
+ | <code root>kate /etc/opendkim.conf</code> | ||
+ | * On modifie la ligne commençant par Socket pour mettre ceci : | ||
+ | <code> | ||
+ | Socket inet:12301@comgocom.pw | ||
+ | </code> | ||
+ | * Connexion du mail avec Postfix: | ||
+ | <code root>kate /etc/default/opendkim</code> | ||
+ | |||
+ | <code>SOCKET="inet:12301@comgocom.pw"</code> | ||
+ | |||
+ | * Configurer postfix pour qu'il utilise le mail : | ||
+ | |||
+ | <code root>kate /etc/postfix/main.cf</code> | ||
+ | On ajoute les deux lignes suivantes : | ||
+ | <code>milter_protocol = 2 | ||
+ | milter_default_action = accept | ||
+ | </code> | ||
+ | |||
+ | <code root>systemctl restart postfix</code> | ||
+ | |||
+ | * créer les dossiers pour ranger les clés : | ||
+ | <code root></code> | ||
+ | |||
+ | <code root>mkdir /etc/opendkim && mkdir /etc/opendkim/keys</code> | ||
+ | * Le fichier définissant les hosts de confiance | ||
+ | <code root>kate /etc/opendkim/TrustedHosts</code> | ||
+ | <code>127.0.0.1 | ||
+ | localhost | ||
+ | 192.168.0.1/24 | ||
+ | 192.168.1.1/24 | ||
+ | |||
+ | *.comgocom.pw | ||
+ | </code> | ||
+ | |||
+ | * créer les tables des clés : | ||
+ | <code root>kate /etc/opendkim/KeyTable</code> | ||
+ | <code>mail._domainkey.comgocom.pw comgocom.pw:mail:/etc/opendkim/keys/comgocom.pw/mail.private</code> | ||
+ | |||
+ | * Déclarer les adresses mails qui correspondent aux clés : | ||
+ | <code root>kate /etc/opendkim/SigningTable</code> | ||
+ | <code>*@comgocom.pw mail._domainkey.comgocom.pw</code> | ||
+ | * Générer les clés : | ||
+ | <code root>cd /etc/opendkim/keys</code> | ||
+ | |||
+ | <code root>mkdir comgocom.pw</code> | ||
+ | |||
+ | <code root>cd comgocom.pw</code> | ||
+ | <code root>opendkim-genkey -s mail -d comgocom.pw</code> | ||
+ | <code root>chown opendkim:opendkim mail.private</code> | ||
+ | * Prendre le contenu de /etc/opendkim/keys/comgocom.pw/mail.txt pour mettre dans le DNS de gandi, ajout d'un ''TXT'' | ||
+ | <code root>more /etc/opendkim/keys/comgocom.pw/mail.txt</code> | ||
+ | <code>mail._domainkey IN TXT ( "v=DKIM1; h=sha256; k=rsa; " | ||
+ | "p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0+srrYaYVjb47PPRNKnmw9SpDaLyZDyF74g2xhfbo+Hg0OeOSGiTLVb9YBMQnWrAcWHroUDJr6lSjDpQ/A4aON+XAdyHGmdaC/idLYLkIIwDxoLQBGJrfjfhf+pVaQj3sWI0 | ||
+ | IiTIOltzyiIK4k7yNlaZqcpfOp2i2bP0adcfPyRFdqcWKob0bHStk2OFGRTq8C9YxhdatHM1yW" | ||
+ | "YmeWelo1xH99D79XAjt59CAyf3QiLcI8cfzTkD/846VKPr2ooObP5mMIpOTqO74euIRSRrtYktTDYlbxbGLfb3q7gdObSfLP18b0blneCE2Osd3Q0E1KW98d80ESEmZJRyyhI0TwIDAQAB" ) ; ----- DKIM key mail for comgo | ||
+ | com.pw | ||
+ | </code> | ||
+ | {{/file-R188f0780312575b65eeff6e7d8de2662.png}} | ||
+ | |||
+ | <code root>service postfix restart</code> | ||
+ | |||
+ | <code root>service opendkim restart</code> | ||
+ | <code root></code> | ||
+ | |||
+ | <code root></code> | ||
+ | <code root></code> | ||
+ | |||
+ | <code root></code> | ||
===== Utilisation ===== | ===== Utilisation ===== | ||