Envío de correos desde una aplicación web

Índice

En un servidor web Rocky Linux 9 con una aplicación WordPress se configura la aplicación para que envíe correos a través del servidor de correos “oficial” de la red. Este servidor de correo está en otra máquina de la red.

Para enviar correos desde WordPress se instala en la aplicación un plugin que permita enviar correos desde la aplicación, en este caso se usa WP Mail SMTP.

La configuración del plugin es sencilla e interactiva. En el correo del remitente se indica el correo de un usuario del servidor de correos, como, en este caso, usuario@javi.gonzalonazareno.org. Como servicio de envío se elige la opción otro SMTP y en el campo del servidor SMTP se indica el nombre del servidor de correos de la red, en este caso, sanji.javi.gonzalonazareno.org y se configura el envío de correos por el puerto 25.

Con estos ajustes, el servidor ya puede enviar correos desde la aplicación. Sin embargo, el servidor Rocky cuenta con el sistema de seguridad SELinux habilitado por defecto. Para mantener esta configuración de seguridad reforzada en el servidor pero poder enviar correos hay que configurar SELinux.

Esto se puede hacer con la herramienta sealert.

sealert -a /var/log/audit/audit.log

Esta herramienta analiza los logs de SELinux y recomienda diferentes medidas que se pueden tomar para permitir el tráfico que este sistema de seguridad está bloqueando. En este caso, las acciones recomendadas consisten en permitir al servidor web enviar correos y activar el módulo de SELinux para el servidor de aplicaciones PHP php-fpm.

sudo setsebool -P httpd_can_network_connect 1
sudo setsebool -P httpd_can_sendmail 1
sudo setsebool -P nis_enabled 1
sudo ausearch -c 'php-fpm' --raw | audit2allow -M my-phpfpm
sudo semodule -i my-phpfpm.pp

Tras configurar correctamente SELinux, la aplicación ya puede enviar correos electrónicos a través del servidor configurado en la red.

comments powered by Disqus

Relacionados

Configuración de un proxy inverso en Apache2 y Nginx

En este post se muestran diferentes ejemplos de configuración de los servidores web Apache2 y Nginx como proxy inverso.

Leer

Cómo simular un servidor web en GNS3

Existen varias formas de crear un servidor web en un escenario de GNS3. En este post se optará por añadir una máquina Linux con Debian 11 en la que se instalará el servidor Nginx para que pueda actuar a forma de servidor web en el escenario.

Leer

Instalación de Docker

Existen dos opciones para instalar Docker en Debian: usando la distribución de Docker Community Edition o usando los repositorios oficiales de Debian. En este post se muestra un ejemplo de cada caso

Leer