Servidor SMTP exim4 =================== .. image:: _images/eximlogo.png :align: right Para que nuestra pequeña Raspberry Pi sea capaz de enviar emails, una de las formas más fáciles y rápidas de configurarlo es a través de nuestra cuenta de Gmail ya que nos ofrece servicio smtp de forma gratuita, para ello podemos configurar nuestra Raspi mediante el uso de MTA (Message Transfer Agent). Instalar el programa exim4 -------------------------- .. code:: shell sudo apt-get install exim4 Una vez instalado, necesitamos configurarlo .. code:: shell sudo dpkg-reconfigure exim4-config Se iniciará el configurador en el que tenemos que responder las siguientes preguntas: #. Tipo de configuración general del correo: Selecciona la segunda opción: *el correo se envia mediante un "smarthost"; se recibe a través de SMTP o fetchmail* .. image:: _images/exim1.png :align: center Nombre para el servidor de correo: Por defecto pone el nombre del hostname, en mi caso "rbpidespacho" .. image:: _images/exim2.png :align: center Nos pide que IPs tiene permiso para usar el servidor de correo: Déjalo por defecto: (127.0.0.1 ; ::1) .. image:: _images/exim3.png :align: center .. image:: _images/exim4.png :align: center Otros destinos para los que se acepta el correo: Déjalo por defecto: *raspberrypi*. En mi caso lo cambio a ``rbpidespacho`` .. image:: _images/exim5.png :align: center Máquinas para las cuales reenviar correo: Déjalo en blanco. .. image:: _images/exim6.png :align: center Dirección IP o nombre de equipo para el «smarthost» saliente: Introduce el servidor smtp de gmail: ``smtp.gmail.com::587`` .. image:: _images/exim7.png :align: center ¿Desea ocultar el nombre de correo local en los mensajes salientes? Selecciona: No .. image:: _images/exim8.png :align: center Limitar el número de consultas DNS: .. image:: _images/exim9.png :align: center Selecciona: No .. image:: _images/exim10.png :align: center Mecanismo de entrega para el correo local: Selecciona: “Formato en el directorio personal” .. image:: _images/exim11.png :align: center ¿Dividir la configuración en pequeños ficheros?: Selecciona: No .. image:: _images/exim13.png :align: center Root and postmaster mail recipient: Introduzca: *pi* Después de responder a las preguntas exim se reiniciará .. image:: _images/exim14.png :align: center Como usuario root edita el fichero ``/etc/exim4/passwd.client`` y añade las siguientes lineas al final del fichero poniendo en los campos correspondientes con tu e-mail y tu password: .. code-block:: shell gmail-smtp.l.google.com:YOU@gmail.com:PASSWORD *.google.com:YOU@gmail.com:PASSWORD smtp.gmail.com:YOU@gmail.com:PASSWORD Ahora sólo nos queda cargar la configuración en exim y reiniciar el servicio .. code-block:: shell sudo update-exim4.conf sudo /etc/init.d/exim4 restart Opcional -------- Algunos procesos, pueden enviar correos al usuario root u a otros usuarios del sistema, si quieres ser informado de todo lo que ocurre en tu pequeña máquina puedes configurar el fichero aliases de la siguiente manera Edita como root el fichero ``/etc/aliases`` y déjalo como se muestra a continuación. .. code-block:: shell # /etc/aliases mailer-daemon: postmaster postmaster: root nobody: root hostmaster: root usenet: root news: root webmaster: root www: root ftp: root abuse: root noc: root security: root root: pi pi: tucorreo@gmail.com Con esta configuración todos los mails que se envían al usuario **root** serán reenviados también al usuario **pi**, el cual tiene establecida una dirección de correo la cual será el mail que tu indiques. Ejemplo de uso -------------- Para probar que todo funciona ejecutamos el siguiente comando, el primero nos mandara un mail a la cuenta de correo que indiquemos y el segundo nos enviara un mail haciendo uso de los aliases del sistema. .. code:: shell mail -s "This is the subject line" tu_email@loquesea.com .. code:: shell mail -s "This is the subject line" root@localhost Cuando escribamos cada una de estas sentencias nos pedirá el cuerpo del mensaje, debemos escribir lo que queramos y finalizaremos la introducción de texto poniendo un punto en una nueva línea y pulsando ENTER. Posible problema: ----------------- .. code-block:: shell pi@rbpidespacho /etc/exim4 $ sudo /etc/init.d/exim4 restart [ ok ] Stopping MTA for restart:. [ ok ] Restarting MTA: exim4. ALERT: exim paniclog /var/log/exim4/paniclog has non-zero size, mail system possibly broken Solución: +++++++++ .. code-block:: shell pi@rbpidespacho /etc/exim4 $ tail /var/log/exim4/paniclog 2015-09-13 21:09:30 IPv6 socket creation failed: Address family not supported by protocol 2015-09-13 21:10:21 IPv6 socket creation failed: Address family not supported by protocol 2015-09-13 21:13:44 IPv6 socket creation failed: Address family not supported by protocol .. code:: shell pi@rbpidespacho /etc/exim4 $ sudo rm /var/log/exim4/paniclog .. code:: shell pi@rbpidespacho /etc/exim4 $ sudo /etc/init.d/exim4 restart [ ok ] Stopping MTA for restart: exim4_listener. [ ok ] Restarting MTA: exim4. SOLUCIONADO!!!