Cerb è uno strumento di collaborazione e automazione gratuito, open source e basato sul Web utilizzato per l'invio di elevati volumi di e-mail. È scritto in PHP e utilizza MySQL o MariaDB come database back-end. Viene fornito con un'interfaccia Web semplice e facile da usare che può essere utilizzata per il monitoraggio in tempo reale, la gestione delle attività e il monitoraggio degli obiettivi.
In questo tutorial impareremo come installare e configurare Cerb sul server CentOS 8.
Prerequisiti
- Un server che esegue CentOS 8.
- Un dominio valido puntato con l'IP del tuo server. In questo tutorial utilizzeremo il dominio cerb.example.com.
- Una password di root è configurata sul server.
Per iniziare
Prima di iniziare, dovrai installare il repository EPEL e Remi PHP nel tuo sistema. Puoi installarli con il seguente 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 volta installati entrambi i repository, puoi procedere al passaggio successivo.
Installa lo stack LAMP
Successivamente, dovrai installare Apache, MariaDB, PHP e altre estensioni PHP richieste nel tuo server. Puoi installarli tutti con il seguente 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 volta installati tutti i pacchetti, modifica il file php.ini e cambia alcune impostazioni:
nano /etc/php.ini
Modifica le seguenti righe con i valori desiderati:
memory_limit = 256M upload_max_filesize = 32M post_max_size = 32M date.timezone = Asia/Kolkata
Salva e chiudi il file quando hai finito. Quindi, avvia il servizio Apache e MariaDB e abilita l'avvio al riavvio del sistema con il seguente comando:
systemctl start httpd
systemctl start mariadb
systemctl enable httpd
systemctl enable mariadb
Una volta terminato, puoi procedere al passaggio successivo.
Configura il server MariaDB
Innanzitutto, dovrai proteggere MariaDB e impostare la password di root di MariaDB. Puoi farlo eseguendo il seguente comando:
mysql_secure_installation
Rispondi a tutte le domande come mostrato di seguito:
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 volta che l'installazione di MariaDB è protetta, accedi alla shell di MariaDB con il seguente comando:
mysql -u root -p
Fornisci la tua password di root MariaDB quando richiesto, quindi crea un database e un utente per Cerb con il seguente comando:
MariaDB [(none)]>CREATE DATABASE cerb;
MariaDB [(none)]>GRANT ALL PRIVILEGES ON cerb.* TO 'cerb'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
Quindi, svuota i privilegi ed esci dalla shell MariaDB con il seguente comando:
MariaDB [(none)]>FLUSH PRIVILEGES;
MariaDB [(none)]>EXIT;
Una volta terminato, puoi procedere al passaggio successivo.
Installa Postfix
Successivamente, dovrai installare il pacchetto del server di posta Postfix nel tuo server. Puoi installarlo eseguendo il seguente comando:
dnf install postfix -y
Una volta installato Postfix, avvia il servizio Postfix e abilitalo all'avvio al riavvio del sistema con il seguente comando:
systemctl start postfix
systemctl enable postfix
Una volta terminato, puoi procedere al passaggio successivo.
Installa Composer
Il Composer è un gestore delle dipendenze per PHP utilizzato per installare le dipendenze richieste per il tuo progetto. Puoi scaricare lo script di installazione di Composer con il seguente comando:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Quindi, scarica la firma dell'ultimo programma di installazione di Composer dal repository Github di Composer w e salvala nella variabile con il seguente comando:
HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
Quindi, verifica lo script del programma di installazione con il seguente 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;"
Se tutto andrà bene, dovresti vedere il seguente output:
Installer verified
Infine, installa Composer con il seguente comando:
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Dovresti ottenere il seguente output:
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
Puoi verificare la versione di Composer con il seguente comando:
composer --version
Dovresti ottenere il seguente output:
Composer version 2.0.7 2020-11-13 17:31:06
Una volta terminato, puoi procedere al passaggio successivo.
Scarica Cerb
Quindi, scarica l'ultima versione di Cerb dal repository Git nella directory principale di Apache utilizzando il seguente comando:
cd /var/www/html
git clone git://github.com/wgm/cerb.git cerb
Una volta completato il download, cambia la directory in cerb e installa le dipendenze richieste con il seguente comando:
cd cerb
composer install
Quindi, imposta la proprietà e l'autorizzazione della directory cerb utilizzando il comando seguente:
chown -R apache:apache /var/www/html/cerb
chmod -R 755 /var/www/html/cerb
Una volta terminato, puoi procedere al passaggio successivo.
Configura Apache per Cerb
Successivamente, dovrai creare un file di configurazione dell'host virtuale Apache per Cerb. Puoi crearlo con il seguente comando:
nano /etc/httpd/conf.d/cerb.conf
Aggiungi le seguenti righe:
<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>
Salva e chiudi il file quando hai finito. Quindi, riavvia il servizio Apache con il seguente comando:
systemctl restart httpd
Ora puoi verificare lo stato dell'Apache usando il seguente comando:
systemctl status httpd
Dovresti ottenere il seguente output:
? 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 volta terminato, puoi procedere al passaggio successivo.
Configura SELinux e Firewall
Per impostazione predefinita, SELinux è abilitato in CentOS 8. Quindi dovrai configurare SELinux per Cerb. Puoi configurarlo con il seguente comando:
setsebool -P httpd_can_network_connect 1
Successivamente, dovrai consentire le porte 80 e 443 tramite firewalld. Puoi farlo con il seguente comando:
firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-service=https
Ricarica il firewalld per applicare tutte le modifiche con il seguente comando:
firewall-cmd --reload
Una volta terminato, puoi procedere al passaggio successivo.
Accedi all'interfaccia utente Web di Cerb
Ora apri il tuo browser web e accedi a Cerb utilizzando l'URL http://cerb.example.com . Dovresti vedere la seguente pagina:
Controlla tutte le dipendenze e fai clic su Continua pulsante. Dovresti vedere la seguente pagina:
Fare clic su Accetto per accettare il contratto di licenza. Dovresti vedere la seguente pagina:
Fornisci le informazioni del tuo database e fai clic su Verifica database connessione . Dovresti vedere la seguente pagina:
Fornisci i tuoi dettagli SMTP e fai clic su Verifica posta impostazioni . Dovresti vedere la seguente pagina:
Fornisci le informazioni sul tuo account e fai clic su Continua pulsante. Dovresti vedere la seguente pagina:
Scegli il tuo pacchetto e fai clic su Continua pulsante. Dovresti vedere la seguente pagina:
Fai clic su Continua pulsante. Dovresti vedere la seguente pagina:
Quindi, rimuovi la directory di installazione con il seguente comando:
rm -rf /var/www/html/cerb/install/
Fai clic su Accedi e inizia pulsante. Dovresti vedere la seguente pagina:
Fornisci il tuo indirizzo email e fai clic su Continua pulsante. Dovresti vedere la seguente pagina:
Fornisci la tua password e fai clic su Accedi pulsante. Dovresti vedere la dashboard predefinita di Cerb nella pagina seguente:
Conclusione
Congratulazioni! hai installato e configurato correttamente Cerb con Apache su CentOS 8. Ora puoi inviare elevati volumi di e-mail utilizzando il dashboard di Cerb. Sentiti libero di chiedermi se hai domande.