• Serveurs
  • [Discussion] Installation automatisée d'un serveur de mail sous Debian

J'en ai C/C un de 22, mais comme tu l'as dit sur le chat, je me suis mal exprimé et il s'agit du vhost.
Par contre je n'ai aucune idée...

Au fait, ton script de désinstallation vire bien les DB ? Parce qu'en repassant sur l'installation, elle est encore présente :
 /!\ FATAL: La base de donnée Postfix existe déjà.
Si une installation a déjà été effectuée merci de
lancer le script de désinstallation puis de re-tenter
une installation.
J'ai peut-être pas bien lancé quelque chose...

EDIT : Après l'avoir repassé deux fois, sans succès. Je n'ai pas jeté de coup d'oeil au script, pas le temps, mais es-tu sûr qu'il vire la DB postfix ? Il ne demande même pas le MDP root mysql.
Apparemment selon toi c'est le cas, je dois avoir un gros soucis.
Oui, le script supprime normalement et te demande le mot de passe :
echo -e "${CCYAN}----------------------------------------------${CEND}"
echo -e "${CCYAN}[  SUPPRESSION DE LA BASE DE DONNÉE POSTFIX  ]${CEND}"
echo -e "${CCYAN}----------------------------------------------${CEND}"
echo ""

echo -e "${CRED}-------------------------------------------------------------------------------${CEND}"
echo -e "${CRED} /!\ ATTENTION : CETTE ACTION SUPPRIME TOUTES LES ADRESSES EMAILS ET ALIAS /!\ ${CEND}"
echo -e "${CRED}-------------------------------------------------------------------------------${CEND}"
echo ""

read -p "VOULEZ-VOUS VRAIMENT CONTINUER ? [Tapez OUI pour continuer] : " IMA_FIRIN_MAH_LAZOR

if [[ "$IMA_FIRIN_MAH_LAZOR" = "OUI" ]] || [[ "$IMA_FIRIN_MAH_LAZOR" = "oui" ]]; then

    echo ""
    echo -e "${CGREEN}------------------------------------------------------------------${CEND}"
    read -sp "> Veuillez saisir le mot de passe de l'utilisateur root de MySQL : " MYSQLPASSWD
    echo ""
    echo -e "${CGREEN}------------------------------------------------------------------${CEND}"
    echo ""

    SQLQUERY="GRANT USAGE ON *.* TO 'postfix'@'localhost'; \
              DROP USER 'postfix'@'localhost';"

    BDDEXIST=1

    until mysql -uroot -p$MYSQLPASSWD "postfix" -e "$SQLQUERY" &> /tmp/mysql-resp.tmp
    do
        fgrep -q "Unknown database" /tmp/mysql-resp.tmp

        # La base de donnée n'existe pas
        if [ $? -eq 0 ]; then
            BDDEXIST=0
            break
        fi

        # La base de donnée existe donc c'est le mot de passe qui n'est pas bon
        echo -e "${CRED}\n /!\ ERREUR: Mot de passe root incorrect \n ${CEND}" 1>&2
        read -sp "> Veuillez re-saisir le mot de passe : " MYSQLPASSWD
        echo ""
    done

    if [ $BDDEXIST -eq 1 ]; then
        echo ""
        echo -e "${CGREEN}-> Suppression de l'utilisateur Postfix ${CEND}"
        echo -e "${CGREEN}-> Suppression de la base de donnée Postfix ${CEND}"
        mysqladmin -f -uroot -p$MYSQLPASSWD drop postfix &> /dev/null
    else
        echo ""
        echo -e "${CCYAN}-> La base de donnée 'Postfix' n'existe pas, le script ${CEND}"
        echo -e "${CCYAN}-> d'installation n'a probablement pas eu le temps de ${CEND}"
        echo -e "${CCYAN}-> de la créer. ${CEND}"
    fi
https://github.com/hardware/mailserver-autoinstall/blob/master/uninstall.sh

Tu dois avoir un problème avant cette étape, bizard, parce qu'à l'époque le script d'unstall je l'avais utiliser et fonctionnais très bien.
Je venais d'y jeter un coup d'oeil, en effet c'est très bizarre, puisque j'assure que ça n'a pas été le cas.

EDIT : Dans le bénéfice du doute, je vais dire que c'était une erreur de ma part.
Hello,

Est-il possible que l'utilisation de ce script pour l'installation de mon serveur mail bloque la réception de mail depuis startssl.com ?

Je m'explique: j'avais utilisé ce script il y a plusieurs mois sous Debian 7 et j'avais eu aucun soucis, je recevais bien mes mails et surtout ceux de startssl pour valider mon domaine / mes sous-domaines, etc...

J'ai réinstall tout mon serv sous debian 8 il y a quelques semaines et j'ai donc réutiliser ce script pour retrouver mon serveur mail, sauf que je ne reçois plus de mail de startssl.com vers postmaster@mondomaine.tld, alors que si j'envois un mail à postmaster@mondomaine.tld depuis ma boite gmail, je le reçois bien.

PS: j'ai fait un alias de postmaster@mondomaine.tld vers root@mondomaine.tld

Avez-vous une idée ?
Merci beaucoup !
Ton serveur de mail est fonctionnel ? Je veux dire par là, l'as-tu testé avec d'autres adresses en réception ?
Oui oui ça fonctionne niquel sinon.

J'ai une adresse "root@mondomaine.ltd" avec 4 alias (les classics : postmaster / webmaster / etc...)

root@domaine -> adresse@gmail : OK
adresse@gmail -> root@domaine : OK
adresse@gmail -> postmaster@domaine : OK (reçu sur root@domaine puisque Alias)
Mails depuis root@domaine (genre fail2ban / logwatch / etc...) : OK

Y'a-t-il d'autres infos à donner ou d'autres tests pertinents à faire ?

Merci beaucoup !!!

Edit :

WOW je comprends vraiment plus rien je crois...
J'ai repris tout le tuto à la main histoire d'être sûr que je n'étais pas passé à côté de qq chose, j'ai modifié le /etc/default/spamassassin pour CRON= , j'ai enregistré le service sous systemd, j'ai relancé le service, j'ai reboot mon dédié, et là je viens de recevoir genre 20 mails de startssl d'un coup...

Donc à priori plus de soucis, mais juste, si quelqu'un a une idée: POURQUOI ???

Merci encore en tout cas !
bah voila tu as trouvé la raison, les mails passent par un milter, si ce milter n'est pas disponible alors le mail est "deffered" (mis de attente). Quand le milter est de nouveau disponible, les mails sont remis dans la queue de postfix.
Hardware wrote:bah voila tu as trouvé la raison, les mails passent par un milter, si ce milter n'est pas disponible alors le mail est "deffered" (mis de attente). Quand le milter est de nouveau disponible, les mails sont remis dans la queue de postfix.
OK Merci beaucoup !
Y'a-t-il un moyen de tester que toute la config est niquel par hasard ?
Est-ce qu'un 10/10 sur mail-tester valide tout d'un coup ?

Merci encore !
Ouais quasiment tout, après tu peux check les logs aussi pour t'assurer que tout va bien.
Salut à tous,

j'ai des soucis avec le script une fois l'installation terminée.

Déjà quand je fais:
/etc/init.d/postfix restart
j'obtiens:
[ ok ] Stopping Postfix Mail Transport Agent: postfix.
[....] Starting Postfix Mail Transport Agent: postfixpostconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
. ok 
et enfin quand je fais add domain sur rainloop et que je test dans les logs j'ai les erreurs suivantes:
postfix/submission/smtpd[25405]: fatal: open lock file pid/inet.submission: cannot create file exclusively: No such file or directory
postfix/master[5441]: warning: process /usr/lib/postfix/smtpd pid 25405 exit status 1
postfix/master[5441]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling
postfix/postqueue[25591]: warning: Mail system is down -- accessing queue directly
postfix/postdrop[25620]: warning: unable to look up public/pickup: No such file or directory
Est-ce que quelqu'un peut me guider car j'ai passé toute la matinée...

Merci
Voilà c'est corrigé pour les warnings de postconf : commit

Pour les version < 2.10 de postfix la directive smtpd_relay_restrictions n'existe pas donc smtpd_recipient_restrictions prend le relai. Il faut que tu enlèves les lignes suivantes à la fin du fichier /etc/postfix/main.cf :
smtpd_relay_restrictions =
     permit_mynetworks,
     reject_unknown_sender_domain,
     permit_sasl_authenticated,
     reject_unauth_destination
Sinon pour les erreurs :
fatal: open lock file pid/inet.submission: cannot create file exclusively: No such file or directory
warning: unable to look up public/pickup: No such file or directory
Essaye de mettre à jour ton serveur avec :
apt-get update && apt-get upgrade && apt-get dist-upgrade
Puis reboot et réessaye.
Merci beaucoup tout marche parfaitement bien avec tes conseils! Encore chapeau pour ton tuto et continu à nous faire profiter de tes connaissances, j'ai appris plein de truc. (il m'en reste beaucoup à apprendre ).

Dernière petite question, j'ai oublié de renseigner ma clé publique dkim après le lancement du script. Sauf, que j'ai oublié de la noter. Comment je peux faire pour la récupérer?

Merci
C'est bon j'ai trouvé c'était indiqué dans le tuto normal. Il y a un truc que je ne comprend pas par contre. Ma redirection postfxadmin.mondomaine fonctionne mais mon webmail.mondomaine ne marche pas pourtant les vhosts de mon nginx sont identiques.
C'est surement un problème DNS, regarde du coté de ton registrar.
ok merci beaucoup !
6 jours plus tard
Bonjour,
Quand j’envoie un mail depuis l'app Gmail d'android, dans l’entête du message il y a mon ip privée et publique.
Il y a t-il moyen de changer ca ?
PS : Quand je passe par la webmail je vois les ip de celle ci.
Received: from flash.domaine.tld ([5.196.xx.xx]) by BAY004-MC3F46.hotmail.com with Microsoft SMTPSVC(7.5.7601.23008);
	 Sat, 4 Jul 2015 02:55:23 -0700
Received: from [192.168.1.7] (unknown MON_IP_PUBLIQUE])

Merci
Merci, j'ai réussi avec ca (https://major.io/2013/04/14/remove-sensitive-information-from-email-headers-with-postfix/).

Au reboot j'ai ce warning (aucune idée si elle étais la avant la modif):
root@flash:/etc/postfix# service postfix restart
[....] Stopping Postfix Mail Transport Agent: postfix/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
. ok
[....] Starting Postfix Mail Transport Agent: postfixpostconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=permit_mynetworks,     reject_unknown_sender_domain,     permit_sasl_authenticated,     reject_unauth_destination
. ok
Une idée ?