Note utilisateur: 0 / 5

Etoiles inactivesEtoiles inactivesEtoiles inactivesEtoiles inactivesEtoiles inactives
 

Gratuit: votre serveur de messagerie courrier email !

 

Un serveur de messagerie électronique est un logiciel serveur de courrier électronique. Il a pour vocation de transférer les messages électroniques d'un serveur à un autre. Un utilisateur n'est jamais en contact direct avec ce serveur mais utilise soit un client de messagerie, soit une messagerie web, qui se charge de contacter le serveur pour envoyer ou recevoir les messages.

 

Gratuit votre serveur de messagerie courrier email

 

 

 

 

 

 

 Voir définition plus complète sur Wikipedia

 

  

 

Pourquoi gratuit? Parce qu'il utilise des composants logiciels libres. Solution à base de : Debian, Postfix, SpamAssassin, Dovecot, Roundcube, Apache, Mysql, Mutt, Swaks, SPF, Dkim, Dmarc

 

Un serveur avec système d'exploitation linux; sur lequel sont installés tous ces composants. Il s'agit d'un serveur Debian version Jessie pour les connaisseurs.

Postfix, le serveur d'envoi, SMTP

Dovecot, pour pouvoir recevoir les emails en POP ou IMAP.

Roundcube comme client email, webmail dans le navigateur Apache, pour récupérer les emails qui sont sur le serveur Postfix.

Apache est le serveur web qui acceuille le composant Roundcube.

Mysql est la base de données qui peut stocker les emails, les comptes utilisateurs.

SpamAssassin, comme son nom l'indique, place les courriels indésirables dans le dossier spam en suivant des règles (se basant sur des recherches de chaines de textes, exemple R0l3X, CAS1N0, V1AGRA, comme un moteur de recherche, voir Gargantext ou CIMS Consultingit Matrix Sentinels

swaks : "SWiss Army Knife of Smtp" Un outil qui permet de tester l'envoi d'emails par smtp et de faire des diagnostics

Déploiement facile avec Ansible

 

 

Une question? Posez-la ici

Aide à la configuration du serveur de messagerie

 

 

 

 

Pourquoi monter un serveur de messagerie gratuit?

 

Parce que l’email est le 1er canal de communication.

On reçoit tous des emails d'amour comme celui là par exemple:

 

-----Message d'origine-----
De : Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.

Envoyé : jeudi 11 janvier 2018
Objet : Votre déclaration de chiffre d’affaires disponible en ligne

URSSAF     

Votre déclaration de chiffre d'affaires disponible en ligne

Bonjour,

Vous pouvez effectuer, dès aujourd'hui et jusqu'au 31 janvier 2018, votre télédéclaration de chiffre d'affaires et votre paiement en ligne.

Ce message est émis par un automate, il est inutile d'y répondre.

Prenez contact avec votre Urssaf pour toute information complémentaire.  

Me désinscrire   

 

-Les développeurs utilisent beaucoup les emails pour pout avoir des comptes rendus de crons, jobs automatiques, Jenkins…

 -Des dois, des emails arrivent en SPAM et il n'est pas possible d'indiquer que ce ne sont pas des SPAM mais des emails légitimes.

 -Comme l'explique Framasoft ici, les géants du net sont les rois des serveurs d'emails. Ils peuvent manipuler nos emails reçus dans notre web mail, et choisissent quel email on doit voir en priorité et quel emails ils jugent bon de mettre dans un dossier "commercial" ou "spam"...

 

 

  

Une question? Posez-la ici

Aide au développement d'applications

 

 

Partie Installation du serveur de messagerie gratuit

 

Installation du système d'exploitation

 

Création d’un nouveau serveur

Installer Debian Jessie en le téléchargeant ici

Le boot minimum est suffisant, on va selectionner ensuite les pacakges que l’on a besoin

Installation par defaut, en anglais fortement conseillé, car il peut y avoir des bugs lors de la traduction.

Sources des anciennes versions de Debian, ici
Ou celle là : debian-8.9.0-amd64-netinst.iso.torrent

Langue, anglais

Lieu : united states

Clavier : francais

Hostname : (il sera vu dans tous les emails) exemple : postfix

Domain name, Domainmail : sendmail.org !! ATTENTION CE DOMAIN NAME QUALIFIERA LE SERVEUR ! Donc mettre le nom du domaine avec lequel on envoie les emails, exemple : vit1rdv.fr

On pourra le changer avec sudo vim /etc/hostname ou nano

Root password : ***********

Full name of the new user : postfisuser

Username for the account : postfisuser

Partition du disque : manuel & lvm guided

Separate home, var, and tmp

/ 10 Gb Ext4

/tmp 1 Go Ext4

swap 1Go

/var/vmail avec le reste de place, plus il y en a mieux c’est

Emails utilisateur dans partition /var/vmail 

Base de donnée Mysql dans /var/lib/mysql

Log files dans /var/log

Package manager : France

ftp.fr.debian.org

packages à selectionner:

-ssh server

-standard system utilities

Grub bootloader sur le mbr ? Oui

Sur /dev/sda

Ca installe,

Enlever CD

et reboot , ok

 

Mise à l’heure de Debian Jessie

 

Pour que le serevur de mail soit à l’heure, on installe un client NTP Network time protocol

https://packages.debian.org/ntpdate

https://wiki.debian.org/fr/NTP

su

apt-get install ntpdate

Vérifier que le daemon est lancé

ps aux ||grep ntp

Configuration si besoin (serveurs ntp)…

nano /etc/default/ntpdate

Lancer ntpdate-debian

nano /etc/ntp.conf

nano /etc/init.d/ntpdate

 

Vérifier que le réseau (firewall) est configuré pour laisser passer les flux

 

Par défaut, iptables sur le serveur laisse tout passer, tout sortir
Vérifier auprès de l'administrateur réseau/sécurité que les ports (25, 465, 587, 110, 995, 143, and 993) sont bien ouverts
https://linode.com/docs/security/firewalls/control-network-traffic-with-iptables/
taper
sudo iptables -L –nv
Par defaut tout est ouvert, OK

 

Installation des packages applicatifs

 

 

 

Etre root pour pouvoir installer les packages :

Su – 

 

 

 MySQL server

 

 

Apt-get install mysql-server


New password for Mysqlroot user
*********************
Enregistrer le password dans le fichier /root/.my.cnf avec nano
Nano /root/.my.cnf
[client]
password= *********************
enregistrer :
CTRL O
Quitter :
CTRL X

Proteger le fichier avec acces qu’aux admins :
chmod u=rw,go= /root/.my.cnf

test de mysql :
mysql
exit

mysql mailserver -e "update virtual_users set password=concat('{PLAIN-MD5}',password);"

 

 

Postfix

 

apt-get install postfix postfix-mysql
choisir : Internet site

choisir le « fully qualified domain name » par defaut, par exemple serveuremail.consultingit.fr

Domain name, Domainmail : consultingit.fr !! ATTENTION CE DOMAIN NAME QUALIFIERA LE SERVEUR ! Donc mettre le nom du domaine avec lequel on envoie les emails, exemple : consultingit.fr
On pourra le changer avec sudo vim /etc/hostname ou nano
nano/etc/hostname
sudo vim /etc/hosts
sudo /etc/hosts
ok

vérifier le hostname et le domain name en tapant :
hostname –short
hostname --domain
hostname –fqdn
hostname --ip-address


Vérifier
nano /etc/hostname
doit donner le nom du serveur. « serveuremail»

nano /etc/mailname
doit donner le nom FQDN du serveur. « serveuremail.consultingit.fr » si debian myorigin renseigné

nano /etc/postfix/main.cf
myorigin = /etc/mailname

Vérifier la commande « postconf –d » on doit avoir
Mydomain= consultingit.fr


nano /etc/postfix/main.cf
(https://postfix.traduc.org/index.php/postconf.5.html#mydomain)
mydestination = $myhostname localhost.$mydomain localhost $mydomain

mydestination=localhost
relayhost =
(vide, normal)

 

 

spamassassin

apt-get install spamassassin spamass-milter


swaks 

apt-get install swaks

 

Dovecot

Pour interroger le serveur en imap et pop3

apt-get install dovecot-mysql dovecot-pop3d dovecot-imapd dovecot-managesieved dovecot-lmtpd

 

Roundcube

Pour interroger le serveur et lire ses emails

apt-get install roundcube roundcube-plugins


Roundcube demande de créer dans une base de donnée: YES
Type de base de donnée : mysql

password= ***************
mysql application password for roundcube :
pas de pwd, taper juste ENTREE

 

Sécurité : creation du certificat TLS

 

Comme l'explique cet article sur la sécurité et 7 trucs pour sécuriser ses applications , lorsque l'on communique sur internet, il vaut mieux se protéger. Il est recommandé de sécuriser l'infrastrcuture avec des certificats, TLS, successeur de SSL.

 

On peut choisir plusieurs types de certificats qui vont du payant (100 à 200 Euros par an) au gratuit, signé automatiquement par notre infrastructure.

Let's Encrypt propose des certificats gratuits, un bon compromis enter pas de sécurité du tout et le certificat payant.

 

Pour ne pas avoir un message à la connexion, il faut utiliser un certificat Let’s encrypt

 


se connecter avec putty en ssh
Username for the account : route
Password : L3M0t,D3-PA5S3bienl0ng!
Et faire un su

Générer la clé :
openssl genrsa -out /etc/ssl/private/mailserver.pem 4096
Generating RSA private key, 4096 bit long modulus
Le pem contient les clés publiques et privées


La requete depuis la clé :
openssl req -new -key /etc/ssl/private/mailserver.pem -out /etc/ssl/certs/mailserver.csr


country name : FR
state : France
city : Paris
organisation : servermail.consultingit.fr
section : consultingit.fr
common name : FQDN servermail.consultingit.fr
email adress Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.

challenge password : pozefpz7eh7i4fp13z3ie3fzpeif
optional company name : consultingit.fr

afficher la clé :
openssl rsa -in account.key –pubout
openssl rsa -in privkey.pem -pubout > key.pub

openssl rsa -in account.key | mail
openssl rsa -in /etc/ssl/private/mailserver.pem -pubout > key.pub

nano key.pub

Bouton droit pour la copier dans le presse papier
La coller dans :

 

https://letsencrypt.org/getting-started/
https://www.sslforfree.com/

https://gethttpsforfree.com/

Looks good! Proceed to Step 2!
email adress : Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.

step2 :
openssl req -new -key /etc/ssl/private/mailserver.pem -out /etc/ssl/certs/mailserver.csr

openssl req -new -sha256 -key /etc/ssl/private/mailserver.pem -subj "/" \
-reqexts SAN -config <(cat /etc/ssl/openssl.cnf \
<(printf "\n[SAN]\nsubjectAltName=DNS:consultingit.fr,DNS:www.consultingit.fr"))


le copier coller dans le presse papier quand il s’affiche

Le coller dans le champ CSR de https://gethttpsforfree.com/

Found domains! Proceed to Step 3! (consultingit.fr, consultingit.fr)

Valider les 4 challenges proposés :

PRIV_KEY=/etc/ssl/private/mailserver.pem; echo -n "ey6Ik9...cGRn0" | openssl dgst -sha256 -hex -sign $PRIV_KEY

PRIV_KEY=/etc/ssl/private/mailserver.pem; echo -n "eyJub2....XcifQ" | openssl dgst -sha256 -hex -sign $PRIV_KEY

PRIV_KEY=/etc/ssl/private/mailserver.pem; echo -n "eyJ...X0" | openssl dgst -sha256 -hex -sign $PRIV_KEY

PRIV_KEY=/etc/ssl/private/mailserver.pem; echo -n "eyJub2...ifQ" | openssl dgst -sha256 -hex -sign $PRIV_KEY

Step 3 complete! Please proceed to Step 4.

Step 4
PRIV_KEY=/etc/ssl/private/mailserver.pem; echo -n "e...kifQ

 

 

Configuration du serveur web Apache

 

virtual host configurations in /etc/apache2/sites-available/
000-default.conf sers le /var/www directory via http
default-ssl.conf sers le /var/www directory via HTTPS

 

Intégration du certificat

nano /etc/apache2/sites-available/default-ssl.conf
changer 2 lignes par :
SSLCertificateFile /etc/ssl/certs/mailserver.pem
SSLCertificateKeyFile /etc/ssl/private/mailserver.pem

a2enmod ssl
a2ensite default-ssl
Recharger le service Apache:
service apache2 reload

apache2ctl configtest
si erreur : car .pfx a la place de .pem

tester en local avec http://192.168.0.31

Editer le /etc/apache2/sites-available/000-default.conf file et ajouter:
Redirect permanent / https://YOUR.MAIL.SERVER/
Redirect permanent / https://192.0.168.15/

Si soucil lancer la commande :
apache2ctl configtest
et examiner le fichier log :
/var/log/apache2/error.log

(si comme un service il est dans init.d)
système d'init. Dans le cas de l'arborescence /etc/init.d/ elle est utilisée par le système d'init "SysVinit".
/etc/init.d/apache2 reload
/etc/init.d/apache2 restart
/etc/init.d/apache2 start

 

 

 

 

 

 

 

 

 

 

 

 

Sur le DNS domaine, faire pointer les MX vers le nouveau serveur d’email.

Pour ne perdre aucun email postconf soft_bounce=yes

Regarder dans /var/log/mail.log et lancer “mailq” de temps en temps pour voir si des emails ne sont pas coincés dans la queue

Une fois que les emails arrivent et partent bien, refaire le postconf soft_bounce=no

 

 

  

Une question? Posez-la ici

Aide au développement d'applications

 

 

 

Ce transcript reflète exclusivement l'opinion de ses auteurs et n’engage en aucune façon Consultingit

Allez, c'est à, vous: vous pouvez voter et mettre 5 étoiles!

 

Voilà, j'espère que ça vous a plu. Vos commentaires/remarques sont les bienvenus

 

Ajouter un Commentaire

Ces commentaires reflète exclusivement l'opinion de leurs auteurs et n’engage en aucune façon Consultingit. L'icone à gauche du commentaire apparait si votre adresse email utilisée pour poster est la même que celle de votre compte gravatar: https://fr.gravatar.com Pour insérer une balise youtube: [youtube]IDENTIFIER[/youtube]

Code de sécurité
Rafraîchir