Différences
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 | ||
serveur_hebergement:serveur_mail:partie_6_roundcube [2022/11/09 15:05] – fate | serveur_hebergement:serveur_mail:partie_6_roundcube [2023/08/08 14:00] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Partie 6 : Roundcube ====== | ====== Partie 6 : Roundcube ====== | ||
- | ====== A rédiger ====== | + | Roundcube est un webmail, permettant donc de lire et d' |
+ | ===== Installation de RoundCube ===== | ||
+ | Pour installer Roundcube, lancez la commande suivante : | ||
+ | <code bash> | ||
+ | Une fenêtre va apparaître vous demandant si vous voulez configurer la base de donnée pour Roundcube. Répondez oui, puis choisissez “mysql” sur la fenêtre d’après. Il vous sera ensuite demandé un mot de passe de connexion à la base de donnée pour Roundcube. Soit vous en choisissez un, soit vous laissez vide pour qu’un mot de passe soit créé aléatoirement. Perso j’ai pris le second choix. | ||
+ | L' | ||
+ | |||
+ | ===== Configuration ===== | ||
+ | |||
+ | ==== Apache2 ==== | ||
+ | |||
+ | On va maintenant devoir configurer Apache pour pouvoir accéder à l’interface web de Roundcube. Ouvrez le fichier / | ||
+ | Décommentez la ligne suivante (supprimez le # devant la ligne) : | ||
+ | <code apache2> | ||
+ | Cette ligne va permettre d’accéder à l’interface web de Roundcube en tapant nomdedomaine.fr/ | ||
+ | |||
+ | Redémarrez Apache : | ||
+ | <code bash> | ||
+ | |||
+ | Si vous vous rendez à l’adresse nomdedomaine.fr/ | ||
+ | |||
+ | ==== Roundcube ==== | ||
+ | |||
+ | Après avoir configuré Apache, on va configurer Roundcube. Ouvrez le fichier / | ||
+ | < | ||
+ | par | ||
+ | < | ||
+ | |||
+ | Remplacez également la ligne : | ||
+ | < | ||
+ | par | ||
+ | < | ||
+ | |||
+ | Pour utiliser le port 465 pour envoyer des e-mails, remplacez la ligne : | ||
+ | < | ||
+ | par | ||
+ | < | ||
+ | |||
+ | On va également activer le plugin markasjunk pour apprendre à notre serveur à reconnaître les spam. Remplacez la ligne : | ||
+ | < | ||
+ | $config[' | ||
+ | ); | ||
+ | </ | ||
+ | par | ||
+ | < | ||
+ | $config[' | ||
+ | ' | ||
+ | ); | ||
+ | </ | ||
+ | |||
+ | C’est tout pour la configuration de Roundcube. Maintenant que nous pouvons accéder à nos mail via Roundcube, on va voir comment alimenter la base de donnée du filtre bayésien de Spamassassin via Roundcube. | ||
+ | |||
+ | ==== Plugin markasjunk ==== | ||
+ | |||
+ | On va donc utiliser le plugin markasjunk activé précédemment. Ce plugin permet de marquer des mails en spam ou ham manuellement en utilisant sa-learn et ainsi améliorer la base de donnée du filtre bayésien. | ||
+ | |||
+ | Passons à la configuration du plugin. Lancez la commande suivante pour récupérer le fichier de configuration complet : | ||
+ | <code bash> | ||
+ | |||
+ | Ouvrez le fichier / | ||
+ | |||
+ | C’est là qu’on va configurer le plugin pour qu’il utilise sa-learn, l’outil de Spamassassin servant à améliorer la base de donnée du filtre antispam. Vous allez devoir modifier plusieurs lignes : | ||
+ | |||
+ | Pour activer le lancement de commande, remplacez la ligne : | ||
+ | < | ||
+ | par | ||
+ | < | ||
+ | |||
+ | Pour activer le mode debug pour pouvoir vérifier que le plugin fonctionne correctement avec Spamassassin, | ||
+ | < | ||
+ | par | ||
+ | < | ||
+ | |||
+ | Pour marquer les mail en tant que spam quand on les déplace du courrier entrant vers le dossier spam (c'est optionnel mais je trouve ça pratique), remplacez la ligne : | ||
+ | < | ||
+ | par | ||
+ | < | ||
+ | |||
+ | Idem que la ligne précédente mais quand on déplace un mail du dossier spam vers le dossier courrier entrant, remplacez la ligne | ||
+ | < | ||
+ | par | ||
+ | < | ||
+ | |||
+ | Remplacez la ligne : | ||
+ | < | ||
+ | par | ||
+ | < | ||
+ | |||
+ | Remplacez la ligne | ||
+ | < | ||
+ | par | ||
+ | < | ||
+ | |||
+ | J’expliquerai ces deux lignes plus tard. | ||
+ | |||
+ | C’est tout pour ce fichier. | ||
+ | |||
+ | Maintenant lancez la commande : | ||
+ | <code bash> | ||
+ | Puis lancez commande : | ||
+ | <code bash> | ||
+ | La première commande sert à créer le dossier logs dans le répertoire /var/www et la seconde à rendre l’utilisateur www-data, qui exécute toutes les application web comme Roundcube, propriétaire de ce dossier. | ||
+ | Pourquoi créer ce dossier ? C’est lié aux deux lignes que je n’ai pas expliquées. Passons donc aux explications. | ||
+ | |||
+ | $config[' | ||
+ | * sa-learn correspond au binaire à exécuter. Comme dit précédemment, | ||
+ | * -D learn,bayes : -D active le mode debug de sa-learn et learn,bayes indique quelle partie on veut en mode debug. J’ai seulement activé la partie apprentissage et les messages liés au filtre bayésien. | ||
+ | * -u amavis sert à indiquer qu’on veut lancer cette commande avec le profil de l’utilisateur amavis (c’est lui qui détient la base de donnée anti-spam). | ||
+ | * --dbpath / | ||
+ | * --cf=\' | ||
+ | * --prefspath=/ | ||
+ | * --spam %f et ---ham %f servent à marquer l' | ||
+ | * Enfin, >> / | ||
+ | |||
+ | On va devoir maintenant donner les droits à l' | ||
+ | <code bash> | ||
+ | sudo chmod 770 / | ||
+ | sudo chmod 770 / | ||
+ | sudo chmod 770 / | ||
+ | sudo addgroup www-data amavis | ||
+ | </ | ||
+ | |||
+ | Si vous vous rendez sur Roundcube et vous connectez, vous remarquerez un bouton Pourriel si vous êtes dans les courriers entrants et Acceptable si vous êtes dans le dossier spam. Il vous suffit de sélectionner un e-mail puis de cliquer sur ce bouton pour apprendre au filtre anti-spam que cet e-mail doit être considéré comme un spam ou comme un ham, selon le dossier dans lequel vous vous trouvez. | ||
+ | Après avoir effectué cette action, vous trouverez dans le fichier / | ||
+ | |||
+ | Si vous n' | ||
+ | |||
+ | === Méthode Thunderbird === | ||
+ | |||
+ | Sur votre gestionnaire de mail (Thunderbird ou autre), rajouter votre compte e-mail en utilisant L’IMAP. Une fois le compte créé, via Thunderbird, | ||
+ | |||
+ | Sur votre serveur, rendez vous dans le répertoire / | ||
+ | |||
+ | Tout d’abord il faut que l’utilisateur amavis, qui gère le filtrage des mail en utilisant Spamassassin, | ||
+ | <code bash> | ||
+ | |||
+ | Ensuite, on va modifier les droits du répertoire /var/vmail. De base, ce répertoire est accessible en lecture/ | ||
+ | <code bash> | ||
+ | |||
+ | On va également modifier les droits des deux dossiers que nous avons créés pour que tous les utilisateurs puissent écrire dedans. Toujours en étant dans le répertoire / | ||
+ | <code bash> | ||
+ | |||
+ | Maintenant que ceci est fait, on va modifier le cron de l’utilisateur amavis. Le cron permet de planifier des tâches. Il permet par exemple de lancer une commande ou un script tous les jours à 17h45 (un exemple parmi d’autres). | ||
+ | Tapez la commande : | ||
+ | <code bash> | ||
+ | Choisissez nano si on vous pose la question et rajoutez les lignes suivantes : | ||
+ | |||
+ | <code bash>00 00 * * * if [ "$(ls / | ||
+ | 01 00 * * * if [ "$(ls / | ||
+ | |||
+ | Il faudra évidemment remplacer nomdedomaine.fr et toto par votre nom de domaine et votre utilisateur mail. | ||
+ | |||
+ | Si vous n’avez pas suivi la méthode utilisant Roundcube, il vous faut lancer les commandes suivantes pour créer le répertoire de log et configurer les droits : | ||
+ | <code bash> | ||
+ | sudo mkdir / | ||
+ | sudo chown -R www-data: | ||
+ | </ | ||
+ | La première commande sert à créer le dossier logs dans le répertoire /var/www et la seconde à mettre l’utilisateur www-data, qui exécute toutes les application web comme Roundcube, propriétaire de ce dossier. | ||
+ | |||
+ | Ensuite, lancez la commande suivante pour créer le fichier de log : | ||
+ | <code bash> | ||
+ | |||
+ | Ensuite, lancez la commande suivante afin que les fichiers de logs soient accessibles à tous les utilisateurs | ||
+ | <code bash> | ||
+ | |||
+ | Expliquons un peu ces lignes : | ||
+ | * 00 00 * * * et 01 00 * * * signifient que ces lignes vont être exécutées tous les jours à 00:00 et 00:01. | ||
+ | * if [ "$(ls / | ||
+ | * sa-learn correspond au binaire à exécuter. Comme dit précédemment, | ||
+ | * -D learn,bayes : -D active le mode debug de sa-learn et learn,bayes indique quelle partie on veut en mode debug. J’ai seulement activé la partie apprentissage et les messages liés au filtre bayésien. | ||
+ | * --spam var/ | ||
+ | * --ham var/ | ||
+ | * >> / | ||
+ | * && rm -R / | ||
+ | fi indique la fin de la condition. | ||
+ | |||
+ | Si vous recevez un spam qui n’a pas été classé en spam, déplacez-le dans le dossier Spam_sa-learn et à minuit, il sera analysé par sa-learn afin de lui apprendre que ce mail est un spam et il sera ensuite supprimé. | ||
+ | Si vous recevez un mail légitime qui a été classé en spam, déplacez-le dans le dossier Ham_sa-learn et à minuit une, il sera analysé par sa-learn afin de lui apprendre que ce mail n’est pas un spam et il sera ensuite supprimé. | ||
+ | ATTENTION : si c’est un mail important que vous souhaitez conserver, mettez une copie du mail dans le dossier Ham_sa-learn, | ||
+ | |||
+ | Si vous avez plusieurs adresses mails, il vous suffit de réutiliser la même méthode. Dans le crontab, décalez les heures de lancement de commande d’une minute chaque fois que vous rajoutez des lignes. |