E-mail Linux amb Postfix
Contingut
Intro
Postfix és un servei de correu electrònic de codi obert força estàndard en servidors i hostings. Correspon a la part del MTA del Sistema de correu electrònic, pel que s'ocupa d'enviar emails a altres servidors, i guardar els missatges entrants en les carpetes dels usuaris pertinents.
Postfix NO gestiona les connexions de bústia de correu POP3 o IMAP (necessàries per poder accedir des dels clients Thunderbird, Outlook o des de dispositius mòbils). D'això se n'ocupen els mòduls fetchmail del sistema de correu, i en Linux es sol implementar amb els paquets Dovecot o Courier.
La configuració del sistema de correu es pot fer bàsicament de dues maneres:
- Mailbox: un arxiu per usuari, típicament anomenat mbox i que sol estar al home directory de cada usuari. És el sistema per defecte.
- Maildirs: enlloc d'un arxiu es guarden tots els emails de cada usuari en la carpeta Mailbox dins de cada home directory, i dins d'aquesta hi ha les possibles subcarpetes per organitzar el correu. És imprescindible si volem utilitzar el servei IMAP.
Algunes referències:
- Podeu seguir aquesta documentació d'Ubuntu: https://help.ubuntu.com/community/PostfixBasicSetupHowto
- Us permetrà configurar el POP3 i el IMAP, i connectar-vos amb el Thunderbird
- Un tutorial molt clar de DigitalOcean.
- Per accedir externament des d'un client de correu cal utilitzar Courier (explicat al link anterior).
- Configurar Courier amb SSL.
Configuració Lloc d'Internet
És la més senzilla de realitzar. Només podem utilitzar aquesta configuració si tenim una IP fixa (no dinàmica) per part del nostre ISP. Si tenim una IP dinàmica els servidors d'Internet ens refusaran com a remitent, ja que solen ser spammers.
Quan s'instal·la Postfix només cal tirar aquesta opció "Lloc d'Internet", introduir el domini en el què estem (indicarà el remitent) i ja podem enviar missatges.
Si en algun moment volem reconfigurar-ho sempre es pot fer:
# dpkg-reconfigure postfix
Enviament amb la comanda mail
Podem enviar emails des de la shell amb la comanda mail. Cal que instal·lem el paquet mailutils.
# apt-get install mailutils
Podem comprovar si s'envien exitosament fent:
$ mail [email protected] Cc: <Enter> Subject: prova 1 <Enter> aquest es el cos del missatge Atentament Enric <Ctrl+D>
...i mirem la nostra bústia aviam si ens ha arribat. Pot trigar alguns minuts depenent de la configuració del sistema (el correu no sempre s'envia immediatament).
Si posem la comanda mail sense destinatari entrarem en un programa interactiu per llegir els missatges entrants.
Comprovació de la cua de missatges pendents d'enviar
Si experimentem problemes en l'enviament d'emails podem chequejar-ho al logfile corresponent:
$ tail -f /var/log/mail.log
Enviament erroni
Si trobem una sortida d'aquest tipus és que el servidor destinatari ens està ignorant. status=deferred indica que s'abandona l'enviament d'aquest missatge.
Nov 12 15:38:10 xinxan postfix/smtp[3941]: connect to ALT2.ASPMX.L.GOOGLE.COM[74.125.68.26]:25: Connection timed out Nov 12 15:38:10 xinxan postfix/smtp[3941]: connect to ALT1.ASPMX.L.GOOGLE.COM[2a00:1450:4010:c07::1a]:25: Network is unreachable Nov 12 15:38:10 xinxan postfix/smtp[3941]: E7FC2201589: to=<[email protected]>, relay=none, delay=61, delays=0.18/0.03/61/0, dsn=4.4.1, status=deferred (connect to ALT1.ASPMX.L.GOOGLE.COM[2a00:1450:4010:c07::1a]:25: Network is unreachable)
Això sol indicar que tenim una IP dinàmica i que ens ignora expressament tal i com hem indicat abans. Si volem poder enviar correus des d'aquesta ubicació, haurem de configurar Postfix per utilitzar un smarthost o accedint a un compte remot.
Enviament exitós
En canvi, si tot ha anat bé, trobarem aquest registre. status=sent indica que el missatge s'ha enviat correctament (i per tant després apareix "removed" de la cua d'enviament):
Nov 12 15:43:58 beach postfix/smtp[25869]: Host offered STARTTLS: [ASPMX.L.GOOGLE.COM] Nov 12 15:43:58 beach postfix/smtp[25869]: 27179BC006F: to=<[email protected]>, relay=ASPMX.L.GOOGLE.COM[74.125.133.26]:25, delay=1.4, delays=0.52/0.02/0.66/0.23, dsn=2.0.0, status=sent (250 2.0.0 OK 1447339415 u8si18997094wja.11 - gsmtp) Nov 12 15:43:58 beach postfix/qmgr[1272]: 27179BC006F: removed
Client en línia de comandes Alpine
Instal·leu el client de correu electrònic alpine per fer una gestió més còmoda dels correus des de la shell.
# apt-get install alpine
Configuració en Maildirs enlloc de Mailboxes
Podeu seguir els passos d'aquest tutorial, però hi ha algunes coses que no son del tot correctes:
- Cal crear la carpeta
~/Mailbox/
en cada usuari manualment amb els subdirectoriscur , new , tmp
a dintre.- OJU amb els permisos! L'usuari ha de ser el propietari de les carpetes indicades.
- ...