index.html 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617
  1. <!DOCTYPE html>
  2. <!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
  3. <!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
  4. <head>
  5. <meta charset="utf-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  8. <link rel="shortcut icon" href="../../../img/favicon.ico">
  9. <title>Installation d'un serveur de courriers basique - Les Tutoriels du Yojik</title>
  10. <link rel="stylesheet" href="../../../css/theme.css" />
  11. <link rel="stylesheet" href="../../../css/theme_extra.css" />
  12. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/github.min.css" />
  13. <script>
  14. // Current page data
  15. var mkdocs_page_name = "Installation d'un serveur de courriers basique";
  16. var mkdocs_page_input_path = "Tutoriels/tutoraspi/Installation-courrier-basique.md";
  17. var mkdocs_page_url = null;
  18. </script>
  19. <script src="../../../js/jquery-2.1.1.min.js" defer></script>
  20. <script src="../../../js/modernizr-2.8.3.min.js" defer></script>
  21. <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js"></script>
  22. <script>hljs.initHighlightingOnLoad();</script>
  23. </head>
  24. <body class="wy-body-for-nav" role="document">
  25. <div class="wy-grid-for-nav">
  26. <nav data-toggle="wy-nav-shift" class="wy-nav-side stickynav">
  27. <div class="wy-side-scroll">
  28. <div class="wy-side-nav-search">
  29. <a href="../../.." class="icon icon-home"> Les Tutoriels du Yojik</a>
  30. <div role="search">
  31. <form id ="rtd-search-form" class="wy-form" action="../../../search.html" method="get">
  32. <input type="text" name="q" placeholder="Search docs" title="Type search term here" />
  33. </form>
  34. </div>
  35. </div>
  36. <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
  37. <p class="caption"><span class="caption-text">Home</span></p>
  38. <ul>
  39. <li class="toctree-l1"><a class="reference internal" href="../../..">Page d'accueil</a>
  40. </li>
  41. </ul>
  42. <p class="caption"><span class="caption-text">Tutoriels</span></p>
  43. <ul class="current">
  44. <li class="toctree-l1"><a class="reference internal" href="../../tutos/">Introduction</a>
  45. </li>
  46. <li class="toctree-l1"><a class="reference internal" href="#">Installation d'un serveur sécurisé, version Debian/Stretch (obsolète)</a>
  47. <ul>
  48. <li class="toctree-l2"><a class="reference internal" href="../../tutostretch/tutostretch/">Présentation</a>
  49. </li>
  50. <li class="toctree-l2"><a class="reference internal" href="#">Installation</a>
  51. <ul>
  52. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Installation-de-base/">Installation du système de base</a>
  53. </li>
  54. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/ovh/">Démarrage sur serveur OVH</a>
  55. </li>
  56. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Premi%C3%A8re-Etape-S%C3%A9curisation/">Première étapes de sécurisation du serveur</a>
  57. </li>
  58. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Configuration-R%C3%A9seau/">Configuration du réseau</a>
  59. </li>
  60. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Installation-Serveur-Temps/">Installation d'un serveur de temps</a>
  61. </li>
  62. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Installation-Parre-Feu/">Installation d'un pare-feu</a>
  63. </li>
  64. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Installation-Fail2ban/">Contrer les attaques de brute-force avec fail2ban</a>
  65. </li>
  66. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Installation-Serveur-Courrier-Basique/">Installation d'un serveur de courrier basique</a>
  67. </li>
  68. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Installation-Serveur-DNS/">Installation du serveur DNS</a>
  69. </li>
  70. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Installation-Serveur-Web/">Installation d'un serveur web</a>
  71. </li>
  72. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Installation-Dovecot-Authentification/">Installation de dovecot et de l'authentification</a>
  73. </li>
  74. <li class="toctree-l3"><a class="" href="../../tutostretch/Installation-Certificats-Letsencrypt.md)">Installation des certificats letsencrypt</a>
  75. </li>
  76. <li class="toctree-l3"><a class="" href="../../tutostretch/courrier-SPF-DKIM-OPENDMARC.md">Ajout des enregistrements **spf**, **DKIM**, **DMARC** au fichier de zone DNS</a>
  77. </li>
  78. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Courrier-Comptes-Virtuels/">Ajout des comptes émail virtuels</a>
  79. </li>
  80. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Surveillance-Serveur/">Installation de programmes de surveillance du serveur</a>
  81. </li>
  82. <li class="toctree-l3"><a class="reference internal" href="../../tutostretch/Installation-Webmail/">Installation d'un webmail (rainloop)</a>
  83. </li>
  84. <li class="toctree-l3"><a class="" href="../../tutostretch/Sécurisation-Serveur-Web">Sécurisation d'un serveur WEB</a>
  85. </li>
  86. </ul>
  87. </li>
  88. </ul>
  89. </li>
  90. <li class="toctree-l1"><a class="reference internal" href="#">Installation d'un serveur sécurisé, version Debian/Buster (en cours d'écriture)</a>
  91. <ul>
  92. <li class="toctree-l2"><a class="reference internal" href="../../tutobuster/1-tutobuster/">Présentation</a>
  93. </li>
  94. <li class="toctree-l2"><a class="reference internal" href="../../tutobuster/2-Installation-de-base/">Installation de base</a>
  95. </li>
  96. <li class="toctree-l2"><a class="reference internal" href="../../tutobuster/3-ovh/">Démarrage sur serveur OVH</a>
  97. </li>
  98. <li class="toctree-l2"><a class="reference internal" href="../../tutobuster/4-Plan/">Plan d'ensemble</a>
  99. </li>
  100. <li class="toctree-l2"><a class="reference internal" href="../../tutobuster/5-Premi%C3%A8re-Etape-S%C3%A9curisation/">Premières étapes de sécurisation du serveur</a>
  101. </li>
  102. </ul>
  103. </li>
  104. <li class="toctree-l1 current"><a class="reference internal current" href="#">Installation d'un serveur sécurisé, version Debian/Buster sur RaspberryPI</a>
  105. <ul class="current">
  106. <li class="toctree-l2"><a class="reference internal" href="../R%C3%A9sum%C3%A9/">Résumé</a>
  107. </li>
  108. <li class="toctree-l2"><a class="reference internal" href="../tutoraspi/">Présentation</a>
  109. </li>
  110. <li class="toctree-l2"><a class="reference internal" href="../Installation-de-base/">Installation de base</a>
  111. </li>
  112. <li class="toctree-l2"><a class="reference internal" href="../Premier-d%C3%A9marrage/">Premier démarrage</a>
  113. </li>
  114. <li class="toctree-l2"><a class="reference internal" href="../Etat-des-lieux/">État des lieux</a>
  115. </li>
  116. <li class="toctree-l2"><a class="reference internal" href="../S%C3%A9curisation-SSH/">Sécurisation SSH</a>
  117. </li>
  118. <li class="toctree-l2"><a class="reference internal" href="../R%C3%A9seau/">Réseau (des IPs fixes)</a>
  119. </li>
  120. <li class="toctree-l2"><a class="reference internal" href="../Knot/">Installation de Knot-resolver</a>
  121. </li>
  122. <li class="toctree-l2"><a class="reference internal" href="../Firewall/">Installation d'un pare-feux</a>
  123. </li>
  124. <li class="toctree-l2"><a class="reference internal" href="../Fail2ban/">Contrer les attaques de force brute</a>
  125. </li>
  126. <li class="toctree-l2"><a class="reference internal" href="../Logwatch/">Surveillance du serveur</a>
  127. </li>
  128. <li class="toctree-l2 current"><a class="reference internal current" href="./">Installation d'un serveur de courriers basique</a>
  129. <ul class="current">
  130. <li class="toctree-l3"><a class="reference internal" href="#installation">Installation</a>
  131. </li>
  132. <li class="toctree-l3"><a class="reference internal" href="#suppression-complete-de-exim4">Suppression complète de exim4</a>
  133. </li>
  134. <li class="toctree-l3"><a class="reference internal" href="#ouverture-des-ports-25">Ouverture des ports 25</a>
  135. <ul>
  136. <li class="toctree-l4"><a class="reference internal" href="#liste-des-services-disponibles">Liste des services disponibles</a>
  137. </li>
  138. <li class="toctree-l4"><a class="reference internal" href="#ajout-du-service-smtp">Ajout du service smtp</a>
  139. </li>
  140. <li class="toctree-l4"><a class="reference internal" href="#verification">Vérification</a>
  141. </li>
  142. </ul>
  143. </li>
  144. <li class="toctree-l3"><a class="reference internal" href="#installation-des-utilitaire-courriers">Installation des utilitaire courriers</a>
  145. </li>
  146. <li class="toctree-l3"><a class="reference internal" href="#test-denvoi-de-courriers-entre-comptes-internes">Test d'envoi de courriers entre comptes internes.</a>
  147. </li>
  148. <li class="toctree-l3"><a class="reference internal" href="#configuration-de-postfix">Configuration de postfix</a>
  149. <ul>
  150. <li class="toctree-l4"><a class="reference internal" href="#courriers-sortants">Courriers sortants</a>
  151. </li>
  152. <li class="toctree-l4"><a class="reference internal" href="#courriers-entrants">Courriers entrants</a>
  153. </li>
  154. </ul>
  155. </li>
  156. <li class="toctree-l3"><a class="reference internal" href="#amelioration-de-la-gestion-du-courrier">Amélioration de la gestion du courrier</a>
  157. </li>
  158. <li class="toctree-l3"><a class="reference internal" href="#protection-par-fail2ban">Protection par Fail2ban</a>
  159. </li>
  160. </ul>
  161. </li>
  162. <li class="toctree-l2"><a class="reference internal" href="../Exemple-d-utilisation-serveur-Web/">Exemple d'utilisation avec un serveur Web</a>
  163. </li>
  164. <li class="toctree-l2"><a class="reference internal" href="../Annexe/">Annexe</a>
  165. </li>
  166. </ul>
  167. </li>
  168. <li class="toctree-l1"><a class="reference internal" href="#">Domotique</a>
  169. <ul>
  170. <li class="toctree-l2"><a class="reference internal" href="../../Domotique/Introduction/">Introduction</a>
  171. </li>
  172. <li class="toctree-l2"><a class="reference internal" href="../../Domotique/Le-mat%C3%A9riel/">Le matériel</a>
  173. </li>
  174. </ul>
  175. </li>
  176. <li class="toctree-l1"><a class="reference internal" href="#">Tutoriel Anki</a>
  177. <ul>
  178. <li class="toctree-l2"><a class="reference internal" href="../../tutoanki/Introduction/">Introduction</a>
  179. </li>
  180. <li class="toctree-l2"><a class="reference internal" href="../../tutoanki/Installation/">Installation</a>
  181. </li>
  182. <li class="toctree-l2"><a class="reference internal" href="../../tutoanki/Les-fiches/">Les fiches</a>
  183. </li>
  184. <li class="toctree-l2"><a class="reference internal" href="../../tutoanki/Premi%C3%A8re-utilisation/">Premières utilisations et impressions</a>
  185. </li>
  186. <li class="toctree-l2"><a class="reference internal" href="../../tutoanki/Personnalisation/">Personnalisation</a>
  187. </li>
  188. <li class="toctree-l2"><a class="reference internal" href="../../tutoanki/Cartes/">Les cartes</a>
  189. </li>
  190. </ul>
  191. </li>
  192. </ul>
  193. </div>
  194. </div>
  195. </nav>
  196. <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
  197. <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
  198. <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
  199. <a href="../../..">Les Tutoriels du Yojik</a>
  200. </nav>
  201. <div class="wy-nav-content">
  202. <div class="rst-content">
  203. <div role="navigation" aria-label="breadcrumbs navigation">
  204. <ul class="wy-breadcrumbs">
  205. <li><a href="../../..">Docs</a> &raquo;</li>
  206. <li>Installation d'un serveur sécurisé, version Debian/Buster sur RaspberryPI &raquo;</li>
  207. <li>Tutoriels &raquo;</li>
  208. <li>Installation d'un serveur de courriers basique</li>
  209. <li class="wy-breadcrumbs-aside">
  210. </li>
  211. </ul>
  212. <hr/>
  213. </div>
  214. <div role="main">
  215. <div class="section">
  216. <h1 id="installation-dun-serveur-de-courrier-basique">Installation d'un serveur de courrier basique</h1>
  217. <p>Debian installe par défaut <strong>exim4</strong>. Nous allons le remplacer par postfix (que nous étendrons par la suite pour obtenir un serveur de mail complet)</p>
  218. <p>Il faut penser à ouvrir les ports 25 en IPV4 et IPV6 avec <strong>firewalld</strong>.</p>
  219. <h2 id="installation">Installation</h2>
  220. <pre><code>pi@raspberrypi:~ $ sudo apt install postfix
  221. Lecture des listes de paquets... Fait
  222. Construction de l'arbre des dépendances
  223. Lecture des informations d'état... Fait
  224. Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
  225. libgnutls-dane0 libunbound8
  226. Veuillez utiliser « sudo apt autoremove » pour les supprimer.
  227. Les paquets supplémentaires suivants seront installés :
  228. ssl-cert
  229. Paquets suggérés :
  230. procmail postfix-mysql postfix-pgsql postfix-ldap postfix-pcre postfix-lmdb postfix-sqlite sasl2-bin | dovecot-common postfix-cdb ufw
  231. postfix-doc openssl-blacklist
  232. Les paquets suivants seront ENLEVÉS :
  233. exim4-base exim4-config exim4-daemon-light
  234. Les NOUVEAUX paquets suivants seront installés :
  235. postfix ssl-cert
  236. 0 mis à jour, 2 nouvellement installés, 3 à enlever et 0 non mis à jour.
  237. Il est nécessaire de prendre 1 423 ko dans les archives.
  238. Après cette opération, 0 o d'espace disque supplémentaires seront utilisés.
  239. Souhaitez-vous continuer ? [O/n] o
  240. Réception de :1 http://ftp.igh.cnrs.fr/pub/os/linux/raspbian/raspbian buster/main armhf postfix armhf 3.4.14-0+deb10u1 [1 402 kB]
  241. Réception de :2 http://mirrors.ircam.fr/pub/raspbian/raspbian buster/main armhf ssl-cert all 1.0.39 [20,8 kB]
  242. 1 423 ko réceptionnés en 3s (524 ko/s)
  243. Préconfiguration des paquets...
  244. dpkg: exim4-daemon-light : problème de dépendance, mais suppression comme demandé :
  245. logwatch dépend de default-mta | mail-transport-agent ; cependant :
  246. Le paquet default-mta n'est pas installé.
  247. Le paquet exim4-daemon-light qui fournit default-mta doit être supprimé.
  248. Le paquet mail-transport-agent n'est pas installé.
  249. Le paquet exim4-daemon-light qui fournit mail-transport-agent doit être supprimé.
  250. logwatch dépend de default-mta | mail-transport-agent ; cependant :
  251. Le paquet default-mta n'est pas installé.
  252. Le paquet exim4-daemon-light qui fournit default-mta doit être supprimé.
  253. Le paquet mail-transport-agent n'est pas installé.
  254. Le paquet exim4-daemon-light qui fournit mail-transport-agent doit être supprimé.
  255. (Lecture de la base de données... 46982 fichiers et répertoires déjà installés.)
  256. Suppression de exim4-daemon-light (4.92-8+deb10u4) ...
  257. dpkg: exim4-config : problème de dépendance, mais suppression comme demandé :
  258. exim4-base dépend de exim4-config (&gt;= 4.82) | exim4-config-2 ; cependant :
  259. Le paquet exim4-config doit être supprimé.
  260. Le paquet exim4-config-2 n'est pas installé.
  261. Le paquet exim4-config qui fournit exim4-config-2 doit être supprimé.
  262. exim4-base dépend de exim4-config (&gt;= 4.82) | exim4-config-2 ; cependant :
  263. Le paquet exim4-config doit être supprimé.
  264. Le paquet exim4-config-2 n'est pas installé.
  265. Le paquet exim4-config qui fournit exim4-config-2 doit être supprimé.
  266. Suppression de exim4-config (4.92-8+deb10u4) ...
  267. Sélection du paquet postfix précédemment désélectionné.
  268. (Lecture de la base de données... 46922 fichiers et répertoires déjà installés.)
  269. Préparation du dépaquetage de .../postfix_3.4.14-0+deb10u1_armhf.deb ...
  270. Dépaquetage de postfix (3.4.14-0+deb10u1) ...
  271. (Lecture de la base de données... 47112 fichiers et répertoires déjà installés.)
  272. Suppression de exim4-base (4.92-8+deb10u4) ...
  273. Sélection du paquet ssl-cert précédemment désélectionné.
  274. (Lecture de la base de données... 47038 fichiers et répertoires déjà installés.)
  275. Préparation du dépaquetage de .../ssl-cert_1.0.39_all.deb ...
  276. Dépaquetage de ssl-cert (1.0.39) ...
  277. Paramétrage de ssl-cert (1.0.39) ...
  278. Paramétrage de postfix (3.4.14-0+deb10u1) ...
  279. Ajout du groupe « postfix » (GID 118)...
  280. Fait.
  281. Ajout de l'utilisateur système « postfix » (UID 112) ...
  282. Ajout du nouvel utilisateur « postfix » (UID 112) avec pour groupe d'appartenance « postfix » ...
  283. Le répertoire personnel « /var/spool/postfix » n'a pas été créé.
  284. Creating /etc/postfix/dynamicmaps.cf
  285. Ajout du groupe « postdrop » (GID 119)...
  286. Fait.
  287. setting myhostname: raspberrypi
  288. setting alias maps
  289. setting alias database
  290. changing /etc/mailname to yojik.net
  291. setting myorigin
  292. setting destinations: $myhostname, yojik.net, raspberrypi, localhost.localdomain, localhost
  293. setting relayhost:
  294. setting mynetworks: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
  295. setting mailbox_size_limit: 0
  296. setting recipient_delimiter: +
  297. setting inet_interfaces: all
  298. setting inet_protocols: all
  299. WARNING: /etc/aliases exists, but does not have a root alias.
  300. Postfix (main.cf) is now set up with a default configuration. If you need to
  301. make changes, edit /etc/postfix/main.cf (and others) as needed. To view
  302. Postfix configuration values, see postconf(1).
  303. After modifying main.cf, be sure to run 'service postfix reload'.
  304. Running newaliases
  305. Created symlink /etc/systemd/system/multi-user.target.wants/postfix.service → /lib/systemd/system/postfix.service.
  306. Traitement des actions différées (« triggers ») pour systemd (241-7~deb10u6+rpi1) ...
  307. Traitement des actions différées (« triggers ») pour man-db (2.8.5-2) ...
  308. Traitement des actions différées (« triggers ») pour rsyslog (8.1901.0-1) ...
  309. pi@raspberrypi:~ $
  310. </code></pre>
  311. <h2 id="suppression-complete-de-exim4">Suppression complète de <strong>exim4</strong></h2>
  312. <p>On supprime complètement <strong>exim4</strong>, fichiers de configuration inclus.</p>
  313. <pre><code>pi@raspberrypi:~ $ sudo apt remove --purge exim4*
  314. Lecture des listes de paquets... Fait
  315. Construction de l'arbre des dépendances
  316. Lecture des informations d'état... Fait
  317. Note : sélection de exim4-base pour l'expression rationnelle « exim4* »
  318. Note : sélection de exim4-config-2 pour l'expression rationnelle « exim4* »
  319. Note : sélection de exim4-doc-info pour l'expression rationnelle « exim4* »
  320. Note : sélection de exim4-daemon-light pour l'expression rationnelle « exim4* »
  321. Note : sélection de exim4-daemon-heavy pour l'expression rationnelle « exim4* »
  322. Note : sélection de exim4-daemon-custom pour l'expression rationnelle « exim4* »
  323. Note : sélection de exim4-config pour l'expression rationnelle « exim4* »
  324. Note : sélection de exim4-doc-html pour l'expression rationnelle « exim4* »
  325. Note : sélection de exim4-localscanapi-2.0 pour l'expression rationnelle « exim4* »
  326. Note : sélection de exim4-dev pour l'expression rationnelle « exim4* »
  327. Note : sélection de exim4 pour l'expression rationnelle « exim4* »
  328. Le paquet « exim4-daemon-custom » n'est pas installé, et ne peut donc être supprimé
  329. Note : sélection de « exim4-config » au lieu de « exim4-config-2 »
  330. Le paquet « exim4 » n'est pas installé, et ne peut donc être supprimé
  331. Le paquet « exim4-daemon-heavy » n'est pas installé, et ne peut donc être supprimé
  332. Le paquet « exim4-dev » n'est pas installé, et ne peut donc être supprimé
  333. Le paquet « exim4-doc-html » n'est pas installé, et ne peut donc être supprimé
  334. Le paquet « exim4-doc-info » n'est pas installé, et ne peut donc être supprimé
  335. Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
  336. libgnutls-dane0 libunbound8
  337. Veuillez utiliser « sudo apt autoremove » pour les supprimer.
  338. Les paquets suivants seront ENLEVÉS :
  339. exim4-base* exim4-config* exim4-daemon-light*
  340. 0 mis à jour, 0 nouvellement installés, 3 à enlever et 0 non mis à jour.
  341. Après cette opération, 0 o d'espace disque supplémentaires seront utilisés.
  342. Souhaitez-vous continuer ? [O/n] o
  343. (Lecture de la base de données... 47047 fichiers et répertoires déjà installés.)
  344. Purge des fichiers de configuration de exim4-base (4.92-8+deb10u4) ...
  345. Purge des fichiers de configuration de exim4-config (4.92-8+deb10u4) ...
  346. dpkg-statoverride: avertissement: pas de dérogation (« override ») présente
  347. Purge des fichiers de configuration de exim4-daemon-light (4.92-8+deb10u4) ...
  348. Traitement des actions différées (« triggers ») pour systemd (241-7~deb10u6+rpi1) ...
  349. pi@raspberrypi:~ $
  350. </code></pre>
  351. <h2 id="ouverture-des-ports-25">Ouverture des ports 25</h2>
  352. <p>Ajout du protocole <strong>smtp</strong> à notre zone.</p>
  353. <h3 id="liste-des-services-disponibles">Liste des services disponibles</h3>
  354. <pre><code>pi@piras:~ $ sudo firewall-cmd --get-services
  355. RH-Satellite-6 amanda-client amanda-k5-client amqp amqps apcupsd audit bacula
  356. bacula-client bgp bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc
  357. ceph ceph-mon cfengine cockpit condor-collector ctdb dhcp dhcpv6
  358. dhcpv6-client distcc dns docker-registry docker-swarm dropbox-lansync
  359. elasticsearch etcd-client etcd-server finger freeipa-ldap freeipa-ldaps
  360. freeipa-replication freeipa-trust ftp ganglia-client ganglia-master
  361. git gre high-availability http https imap imaps ipp ipp-client
  362. ipsec irc ircs iscsi-target isns jenkins kadmin kerberos kibana klogin
  363. kpasswd kprop kshell ldap ldaps libvirt libvirt-tls lightning-network
  364. llmnr managesieve matrix mdns minidlna mongodb mosh mountd mqtt mqtt-tls
  365. ms-wbt mssql murmur mysql nfs nfs3 nmea-0183 nrpe ntp nut openvpn
  366. ovirt-imageio ovirt-storageconsole ovirt-vmconsole plex pmcd pmproxy
  367. pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp
  368. pulseaudio puppetmaster quassel radius redis rpc-bind rsh rsyncd
  369. rtsp salt-master samba samba-client samba-dc sane sip sips slp smtp
  370. smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh
  371. steam-streaming svdrp svn syncthing syncthing-gui synergy syslog syslog-tls
  372. telnet tftp tftp-client tinc tor-socks transmission-client upnp-client vdsm
  373. vnc-server wbem-http wbem-https wsman wsmans xdmcp xmpp-bosh xmpp-client
  374. xmpp-local xmpp-server zabbix-agent zabbix-server
  375. pi@piras:~ $
  376. </code></pre>
  377. <p>Le protocole qui nous intéresse est : <strong>smtp</strong></p>
  378. <h3 id="ajout-du-service-smtp">Ajout du service smtp</h3>
  379. <pre><code>pi@piras:~ $ sudo firewall-cmd --permanent --zone=public --add-service=smtp
  380. success
  381. pi@piras:~ $
  382. </code></pre>
  383. <p>Il faut recharger <strong>firewalld</strong> pour que ce soit pris en compte.</p>
  384. <pre><code>pi@piras:~ $ sudo systemctl restart firewalld
  385. pi@piras:~ $
  386. </code></pre>
  387. <p>Dans mon cas, j'ai été obligé de redémarrer le serveur pour que ce soit pris en compte: pas d'explication ... mais comme ça, ça marche!</p>
  388. <h3 id="verification">Vérification</h3>
  389. <pre><code>pi@piras:~ $ sudo firewall-cmd --list-all
  390. public (active)
  391. target: default
  392. icmp-block-inversion: no
  393. interfaces: eth0
  394. sources:
  395. services: dhcpv6-client smtp ssh
  396. ports:
  397. protocols:
  398. masquerade: no
  399. forward-ports:
  400. source-ports:
  401. icmp-blocks:
  402. rich rules:
  403. pi@piras:~ $
  404. </code></pre>
  405. <h2 id="installation-des-utilitaire-courriers">Installation des utilitaire courriers</h2>
  406. <pre><code>pi@raspberrypi:~ $ sudo apt install mailutils
  407. Lecture des listes de paquets... Fait
  408. Construction de l'arbre des dépendances
  409. Lecture des informations d'état... Fait
  410. mailutils est déjà la version la plus récente (1:3.5-4).
  411. mailutils passé en « installé manuellement ».
  412. Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
  413. libgnutls-dane0 libunbound8
  414. Veuillez utiliser « sudo apt autoremove » pour les supprimer.
  415. 0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
  416. pi@raspberrypi:~ $
  417. </code></pre>
  418. <p>Ils étaient déjà installés.</p>
  419. <h2 id="test-denvoi-de-courriers-entre-comptes-internes">Test d'envoi de courriers entre comptes internes.</h2>
  420. <ul>
  421. <li>
  422. <p>pi-&gt; root</p>
  423. <p>Les commandes suivantes permettent de :</p>
  424. <ul>
  425. <li>
  426. <p>envoyer un message à <strong>root</strong>(Essai 1)</p>
  427. <pre><code>pi@raspberrypi:~ $ mail root
  428. Cc:
  429. Subject: Essai1
  430. Essai 1
  431. .
  432. pi@raspberrypi:~ $
  433. </code></pre>
  434. </li>
  435. <li>
  436. <p>passer <strong>root</strong></p>
  437. <pre><code>pi@raspberrypi:~ $ sudo /bin/bash
  438. root@raspberrypi:/home/pi#
  439. </code></pre>
  440. </li>
  441. <li>
  442. <p>lancer <strong>mutt</strong></p>
  443. <pre><code>root@raspberrypi:/home/pi# mutt
  444. 1 gardé(s), 0 effacé(s).
  445. root@raspberrypi:/home/pi#
  446. </code></pre>
  447. <p><img alt="image de mutt" src="../../../Images/tutoraspi/Capture%20d%E2%80%99%C3%A9cran%20de%202021-02-14%2019-11-39.png" /></p>
  448. </li>
  449. </ul>
  450. </li>
  451. <li>
  452. <p>root -&gt; pi</p>
  453. <pre><code>root@raspberrypi:/home/pi# mail pi
  454. Cc:
  455. Subject: Essai 2
  456. .
  457. root@raspberrypi:/home/pi# exit
  458. Vous avez du nouveau courrier dans /var/mail/pi
  459. pi@raspberrypi:~ $ mutt
  460. 3 gardé(s), 0 effacé(s).
  461. pi@raspberrypi:~ $
  462. </code></pre>
  463. <p>Nous avions 2 messages avant: le nouveau message est bien arrivé !</p>
  464. </li>
  465. </ul>
  466. <h2 id="configuration-de-postfix">Configuration de <strong>postfix</strong></h2>
  467. <p>Il nous faut configurer <strong>postfix</strong> pour permettre l'envoi de courriers à l'extérieur et en recevoir de l'extérieur.</p>
  468. <p>Pour cela, il nous faut modifier le fichier <strong>/etc/postfix/main.cf</strong></p>
  469. <p>Modifiez la ligne <strong>mydestination</strong> pour qu'elle ressemble à ce qui suit :</p>
  470. <blockquote>
  471. <p>mydestination = $myhostname, yojik.net, atom.yojik.net, localhost.yojik.net, localhost</p>
  472. </blockquote>
  473. <p>et relancez <strong>postfix</strong> avec la commande suivante :</p>
  474. <blockquote>
  475. <p>sudo service postfix restart</p>
  476. </blockquote>
  477. <h3 id="courriers-sortants">Courriers sortants</h3>
  478. <p>Envoi d'un message sur mon compte de messagerie gmail (oui, un envoi sur mon compte normal ne fonctionne pas dû à sa configuration):</p>
  479. <pre><code>pi@piras:~$ echo "Et voilà un petit message" | mail -s "test du courrier sortant" ericounet26200@gmail.com
  480. </code></pre>
  481. <p>Le message est bien reçu et dans les courriers indésirables, bien entendu (pas de dkim, spf, dnnssec, etc.)</p>
  482. <h3 id="courriers-entrants">Courriers entrants</h3>
  483. <p>Envoi d'un message à partir de mon adresse de courrier normale :</p>
  484. <p>Message bien reçu (après mise à jour de mon serveur DNS).</p>
  485. <p><img alt="Mutt" src="../../../Images/tutoraspi/Capture%20d%E2%80%99%C3%A9cran%20de%202021-02-15%2004-59-28.png" /></p>
  486. <h2 id="amelioration-de-la-gestion-du-courrier">Amélioration de la gestion du courrier</h2>
  487. <p>Nous allons transférer les mails destinés à <strong>root</strong> vers l'utilisateur <strong>pi</strong>. Ainsi que d'autres adresses de courrier standards. Pour cela, nous allons modifier le fichier <strong>/etc/aliases</strong>, le compiler pour être digeste par <strong>postfix</strong> et relancer <strong>postfix</strong>.</p>
  488. <p>Ce fichier sert à rediriger toutes les adresses émail comme <strong>abuse</strong>, <strong>webmaster</strong>, <strong>root</strong> vers un utilisateur <strong>administrateur</strong> de la machine, root puis vers moi <strong>ericadmin</strong>.</p>
  489. <pre><code># /etc/aliases
  490. mailer-daemon: postmaster
  491. postmaster: root
  492. nobody: root
  493. hostmaster: root
  494. usenet: root
  495. news: root
  496. webmaster: root
  497. www: root
  498. ftp: root
  499. abuse: root
  500. noc: root
  501. security: root
  502. root: pi
  503. </code></pre>
  504. <p>Il faut lancer la commande <strong>newaliases</strong> pour générer le fichier.db utile à Postfix et on demande à Postfix de recharger ses fichiers.</p>
  505. <pre><code>pi@piras:~ $ sudo newaliases
  506. pi@piras:~ $
  507. </code></pre>
  508. <p>On relance <strong>postfix</strong> :</p>
  509. <pre><code>pi@piras:~ $ sudo systemctl restart postfix
  510. pi@piras:~ $
  511. </code></pre>
  512. <p>Et on teste (envoi d'un courrier à root@piras.yojik.net)</p>
  513. <p><img alt="Transfert" src="../../../Images/tutoraspi/Capture%20d%E2%80%99%C3%A9cran%20de%202021-02-15%2005-07-49.png" /></p>
  514. <p>Et voilà, notre serveur de courrier est fonctionnel.</p>
  515. <h2 id="protection-par-fail2ban">Protection par Fail2ban</h2>
  516. <p>Nous devons ajouter la surveillance du mail par <strong>fail2ban</strong>.</p>
  517. <p>Editons le fichier /etc/fail2ban/jail.d/defaults-debian.conf pour y ajouter la surveillance de postfix (port smtp : 25.)</p>
  518. <p>Nous prenons l'exemple fourni dans <strong>/etc/fail2ban/jail.conf</strong> et ne gardons que le port 25.</p>
  519. <p>Voilà la partie modifiée à ajouter :</p>
  520. <pre><code>[postfix]
  521. mode = more
  522. port = smtp
  523. logpath = %(postfix_log)s
  524. backend = %(postfix_backend)s
  525. </code></pre>
  526. <p>Relançons le service pour que nos modifications soient prises en compte:</p>
  527. <pre><code>pi@piras:~ $ sudo systemctl reload fail2ban
  528. pi@piras:~ $
  529. </code></pre>
  530. </div>
  531. </div>
  532. <footer>
  533. <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
  534. <a href="../Exemple-d-utilisation-serveur-Web/" class="btn btn-neutral float-right" title="Exemple d'utilisation avec un serveur Web">Next <span class="icon icon-circle-arrow-right"></span></a>
  535. <a href="../Logwatch/" class="btn btn-neutral" title="Surveillance du serveur"><span class="icon icon-circle-arrow-left"></span> Previous</a>
  536. </div>
  537. <hr/>
  538. <div role="contentinfo">
  539. <!-- Copyright etc -->
  540. </div>
  541. Built with <a href="https://www.mkdocs.org/">MkDocs</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
  542. </footer>
  543. </div>
  544. </div>
  545. </section>
  546. </div>
  547. <div class="rst-versions" role="note" aria-label="versions">
  548. <span class="rst-current-version" data-toggle="rst-current-version">
  549. <span><a href="../Logwatch/" style="color: #fcfcfc;">&laquo; Previous</a></span>
  550. <span style="margin-left: 15px"><a href="../Exemple-d-utilisation-serveur-Web/" style="color: #fcfcfc">Next &raquo;</a></span>
  551. </span>
  552. </div>
  553. <script>var base_url = '../../..';</script>
  554. <script src="../../../js/theme.js" defer></script>
  555. <script src="../../../search/main.js" defer></script>
  556. <script defer>
  557. window.onload = function () {
  558. SphinxRtdTheme.Navigation.enable(true);
  559. };
  560. </script>
  561. </body>
  562. </html>