Cómo instalar Cerb Collaboration and Email Automation en CentOS 8
Cerb es una herramienta de colaboración y automatización gratuita, de código abierto y basada en la web, que se utiliza para enviar grandes volúmenes de correos electrónicos. Está escrito en PHP y utiliza MySQL o MariaDB como base de datos. Viene con una interfaz web sencilla y fácil de usar que puede utilizarse para la supervisión en tiempo real, la gestión de tareas y el seguimiento de objetivos.
En este tutorial, aprenderemos a instalar y configurar Cerb en un servidor CentOS 8.
Requisitos previos
- Un servidor con CentOS 8.
- Un dominio válido apuntado con la IP de tu servidor. En este tutorial, utilizaremos el dominio cerb.ejemplo.com.
- Una contraseña de root configurada el servidor.
Cómo empezar
Antes de empezar, necesitarás instalar EPEL y el repositorio Remi PHP en tu sistema. Puedes instalarlos con el siguiente comando:
dnf install epel-release -y
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
dnf module enable php:remi-7.4
Una vez instalados ambos repositorios, puedes pasar al siguiente paso.
Instalar la pila LAMP
A continuación, tendrás que instalar Apache, MariaDB, PHP y otras extensiones PHP necesarias en tu servidor. Puedes instalarlos todos con el siguiente comando:
dnf install httpd mariadb-server php php-cli php-zip php-curl php-dom php-gd php-imap php-json php-mbstring php-mysqli php-openssl php-pcre php-session php-simplexml php-xml php-spl php-mailparse git unzip wget -y
Una vez instalados todos los paquetes, edita el archivo php.ini y cambia algunos ajustes:
nano /etc/php.ini
Cambia las siguientes líneas con los valores que desees:
memory_limit = 256M upload_max_filesize = 32M post_max_size = 32M date.timezone = Asia/Kolkata
Guarda y cierra el archivo cuando hayas terminado. A continuación, inicia el servicio de Apache y MariaDB y permite que se inicien al reiniciar el sistema con el siguiente comando:
systemctl start httpd
systemctl start mariadb
systemctl enable httpd
systemctl enable mariadb
Una vez que hayas terminado, puedes pasar al siguiente paso.
Configurar el servidor MariaDB
En primer lugar, tendrás que asegurar MariaDB y establecer la contraseña de root de MariaDB. Puedes hacerlo ejecutando el siguiente comando:
mysql_secure_installation
Responde a todas las preguntas como se muestra a continuación:
Enter current password for root (enter for none): Enter Set root password? [Y/n]: Y New password: Re-enter new password: Remove anonymous users? [Y/n]: Y Disallow root login remotely? [Y/n]: Y Remove test database and access to it? [Y/n]: Y Reload privilege tables now? [Y/n]: Y
Una vez que tu instalación de MariaDB esté asegurada, entra en el shell de MariaDB con el siguiente comando:
mysql -u root -p
Proporciona tu contraseña de root de MariaDB cuando se te pida y luego crea una base de datos y un usuario para Cerb con el siguiente comando:
MariaDB [(none)]>CREATE DATABASE cerb;
MariaDB [(none)]>GRANT ALL PRIVILEGES ON cerb.* TO 'cerb'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
A continuación, vacía los privilegios y sal del shell de MariaDB con el siguiente comando:
MariaDB [(none)]>FLUSH PRIVILEGES;
MariaDB [(none)]>EXIT;
Una vez que hayas terminado, puedes pasar al siguiente paso.
Instalar Postfix
A continuación, tendrás que instalar el paquete del servidor de correo Postfix en tu servidor. Puedes instalarlo ejecutando el siguiente comando:
dnf install postfix -y
Una vez instalado Postfix, inicia el servicio Postfix y habilítalo para que se inicie al reiniciar el sistema con el siguiente comando:
systemctl start postfix
systemctl enable postfix
Una vez que hayas terminado, puedes pasar al siguiente paso.
Instalar Composer
Composer es un gestor de dependencias para PHP que se utiliza para instalar las dependencias necesarias para tu proyecto. Puedes descargar el script de instalación de Composer con el siguiente comando:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
A continuación, descarga la firma del último instalador de Composer desde el repositorio de Github de Composer w y guárdala en la variable con el siguiente comando:
HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
A continuación, verifica el script de instalación con el siguiente comando:
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Si todo va bien, deberías ver la siguiente salida:
Installer verified
Por último, instala el Composer con el siguiente comando:
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Deberías obtener la siguiente salida:
All settings correct for using Composer Downloading... Composer (version 2.0.7) successfully installed to: /usr/local/bin/composer Use it: php /usr/local/bin/composer
Puedes verificar la versión de Composer con el siguiente comando:
composer --version
Deberías obtener la siguiente salida:
Composer version 2.0.7 2020-11-13 17:31:06
Una vez que hayas terminado, puedes pasar al siguiente paso.
Descargar Cerb
A continuación, descarga la última versión del Cerb desde el repositorio Git al directorio raíz de Apache utilizando el siguiente comando:
cd /var/www/html
git clone git://github.com/wgm/cerb.git cerb
Una vez finalizada la descarga, cambia el directorio al cerb e instala las dependencias necesarias con el siguiente comando:
cd cerb
composer install
A continuación, establece la propiedad y el permiso del directorio cerb mediante el siguiente comando:
chown -R apache:apache /var/www/html/cerb
chmod -R 755 /var/www/html/cerb
Una vez que hayas terminado, puedes pasar al siguiente paso.
Configurar Apache para Cerb
A continuación, tendrás que crear un archivo de configuración del host virtual de Apache para Cerb. Puedes crearlo con el siguiente comando:
nano /etc/httpd/conf.d/cerb.conf
Añade las siguientes líneas:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "/var/www/html/cerb" ServerName cerb.example.com ErrorLog "/var/log/httpd/cerb-error_log" CustomLog "/var/log/httpd/cerb-access_log" combined </VirtualHost>
Guarda y cierra el archivo cuando hayas terminado. A continuación, reinicia el servicio Apache con el siguiente comando
systemctl restart httpd
Ahora puedes verificar el estado del Apache con el siguiente comando:
systemctl status httpd
Deberías obtener la siguiente salida:
? httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/httpd.service.d ??php-fpm.conf Active: active (running) since Tue 2020-11-17 03:35:53 EST; 7s ago Docs: man:httpd.service(8) Main PID: 5545 (httpd) Status: "Started, listening on: port 80" Tasks: 213 (limit: 25014) Memory: 28.9M CGroup: /system.slice/httpd.service ??5545 /usr/sbin/httpd -DFOREGROUND ??5547 /usr/sbin/httpd -DFOREGROUND ??5548 /usr/sbin/httpd -DFOREGROUND ??5549 /usr/sbin/httpd -DFOREGROUND ??5550 /usr/sbin/httpd -DFOREGROUND Nov 17 03:35:52 centos8 systemd[1]: Stopped The Apache HTTP Server. Nov 17 03:35:52 centos8 systemd[1]: Starting The Apache HTTP Server...
Una vez que hayas terminado, puedes pasar al siguiente paso.
Configurar SELinux y el cortafuegos
Por defecto, SELinux está activado en CentOS 8. Así que tendrás que configurar SELinux para Cerb. Puedes configurarlo con el siguiente comando:
setsebool -P httpd_can_network_connect 1
A continuación, tendrás que permitir los puertos 80 y 443 a través de firewalld. Puedes hacerlo con el siguiente comando
firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-service=https
Recarga el firewalld para aplicar todos los cambios con el siguiente comando:
firewall-cmd --reload
Una vez que hayas terminado, puedes pasar al siguiente paso.
Accede a la interfaz web de Cerb
Ahora, abre tu navegador web y accede a Cerb utilizando la URL http://cerb.example.com. Deberías ver la siguiente página:
Comprueba todas las dependencias y haz clic en el botón Continuar. Deberías ver la siguiente página:
Haz clic en el botón Acepto para aceptar el acuerdo de licencia. Deberías ver la siguiente página:
Proporciona la información de tu base de datos y haz clic en Verificar la conexión a la base de datos. Deberías ver la siguiente página:
Proporciona los datos de tu SMTP y haz clic en Verificar la configuración del correo. Deberías ver la siguiente página:
Proporciona la información de tu cuenta y haz clic en el botón Continuar. Deberías ver la siguiente página:
Elige tu paquete y haz clic en el botón Continuar. Deberías ver la siguiente página:
Haz clic en el botón Continuar. Deberías ver la siguiente página:
A continuación, elimina el directorio de instalación con el siguiente comando:
rm -rf /var/www/html/cerb/install/
Haz clic en el botón Iniciar sesión y comenzar. Deberías ver la siguiente página:
Proporciona tu dirección de correo electrónico y haz clic en el botón Continuar. Deberías ver la siguiente página:
Proporciona tu contraseña y haz clic en el botón Iniciar sesión. Deberías ver el panel de control predeterminado de Cerb en la siguiente página:
Conclusión
Enhorabuena! has instalado y configurado con éxito Cerb con Apache en CentOS 8. Ahora puedes enviar grandes volúmenes de correos electrónicos utilizando el panel de control de Cerb. No dudes en preguntarme si tienes alguna duda.