vbotka.freebsd_mailserver

serveur_mail_freebsd

qualité État de construction Tag GitHub

Rôle Ansible. FreeBSD. Installez et configurez Postfix et Dovecot2.

N'hésitez pas à partager vos commentaires et signaler des problèmes.

Les contributions sont les bienvenues.

Exigences et dépendances

Rôles

Les rôles ne sont pas listés dans le fichier méta. Installez-les manuellement.

Collections

Les collections ci-dessous devraient faire partie de l'installation standard d'Ansible. Si nécessaire, installez-les manuellement.

  • community.crypto
  • community.general

Recommandé

Variables

Consultez les valeurs par défaut et les exemples dans les variables.

Flux de travail

  1. Changez le shell en /bin/sh si nécessaire
shell> ansible mailserver -e 'ansible_shell_type=csh ansible_shell_executable=/bin/csh' -a 'sudo pw usermod freebsd -s /bin/sh'
  1. Installez les rôles
shell> ansible-galaxy role install vbotka.freebsd_mailserver
shell> ansible-galaxy role install vbotka.ansible_lib

Optionnellement, installez des rôles

shell> ansible-galaxy role install vbotka.freebsd_mailserver_sieve
shell> ansible-galaxy role install vbotka.freebsd_mailserver_spamassassin
  1. Si nécessaire, installez des collections
shell> ansible-galaxy collection install community.crypto
shell> ansible-galaxy collection install community.general
  1. Adaptez les variables à vos besoins.

  2. Générez les paramètres Diffie-Hellman OpenSSL

Par défaut, le fichier dovecot_ssl_dh est créé par le module Ansible openssl_dhparam

dovecot_ssl_dh_generate: true
dovecot_ssl_dh_cmd_generate: false

Il est possible d'utiliser une commande personnalisée dovecot_ssl_dh_cmd pour créer dovecot_ssl_dh

dovecot_ssl_dh_generate: false
dovecot_ssl_dh_cmd_generate: true
dovecot_ssl_dh_cmd: "openssl dhparam -out {{ dovecot_ssl_dh }} {{dovecot_ssl_dh_bits }}"

Les options dovecot_ssl_dh_generate (par défaut : true) et dovecot_ssl_dh_cmd_generate (par défaut : false) sont mutuellement exclusives. Si les deux options sont false, le fichier dovecot_ssl_dh_path (par défaut : files/dh.pem) est utilisé. Ce fichier est fourni par le rôle uniquement pour tester. Ne l'utilisez jamais en production.

La génération du fichier avec les paramètres Diffie-Hellman peut prendre beaucoup de temps. Par exemple, des paramètres de 4096 bits prennent environ 40 minutes avec un Intel(R) Core(TM) i5-8200Y CPU @ 1.30GHz. Il est conseillé de générer le fichier séparément pour accélérer la configuration.

dovecot_ssl_dh_generate: false
dovecot_ssl_dh_cmd_generate: false
dovecot_ssl_dh_path: <chemin-vers-le-fichier-Diffie-Hellman-généré>
  1. Créez le playbook et l'inventaire
shell> cat freebsd-mailserver.yml

- hosts: mailserver
  roles:
    - vbotka.freebsd_mailserver
shell> cat hosts
[mailserver]
<ip-ou-fqdn-du-serveur-mail>
[mailserver:vars]
ansible_connection=ssh
ansible_user=freebsd
ansible_become=true
ansible_become_method=sudo
ansible_python_interpreter=/usr/local/bin/python3.9
ansible_perl_interpreter=/usr/local/bin/perl
  1. Vérifiez la syntaxe
shell> ansible-playbook freebsd-mailserver.yml --syntax-check
  1. Installez les paquets
  • Installez les paquets du rôle vbotka.freebsd_mailserver
shell> ansible-playbook freebsd-mailserver.yml -t fm-packages -e fm_install=true
  • Si vous activez sieve
freebsd_mailserver_dovecot_protocols: imap pop3 lmtp sieve

installez les paquets du rôle vbotka.freebsd_mailserver_sieve

shell> ansible-playbook freebsd-mailserver-sieve.yml -t fm_ds_packages -e fm_ds_install=true
  • Si vous activez spamassassin
postfix_master_cf_service_def: "inet  n       -       -       -       -       smtpd -o content_filter=spamfilter"

installez les paquets du rôle vbotka.freebsd_mailserver_spamassassin

shell> ansible-playbook freebsd-mailserver-spamassassin.yml -t fm_sa_packages -e fm_sa_install=true
  1. Créez une configuration par défaut pour Dovecot
shell> ansible-playbook freebsd-mailserver.yml -t dovecot_example_conf
  1. Exécutez un test et affichez les changements
shell> ansible-playbook freebsd-mailserver.yml --check --diff
  1. Installez et configurez le serveur de messagerie
shell> ansible-playbook freebsd-mailserver.yml
  1. Pensez à tester le serveur de messagerie sur http://mxtoolbox.com/

Mode de vérification

Créez des fichiers de configuration par défaut de Dovecot pour éviter les erreurs de fichiers manquants

shell> ansible-playbook freebsd-mailserver.yml -t dovecot_example_conf

Ensuite, exécutez le mode de vérification

shell> ansible-playbook freebsd-mailserver.yml --check

Ansible lint

Utilisez le fichier de configuration .ansible-lint.local lors de l'exécution de ansible-lint. Certaines règles peuvent être désactivées et certains avertissements peuvent être ignorés. Consultez les notes dans le fichier de configuration.

shell> ansible-lint -c .ansible-lint.local

Références

Licence

licence

Informations sur l'auteur

Vladimir Botka

À propos du projet

FreeBSD. Install and configure Postfix and Dovecot.

Installer
ansible-galaxy install vbotka.freebsd_mailserver
Licence
bsd-2-clause
Téléchargements
228
Propriétaire