cristian Lozano

Configuració del client de correu electrònic (squirremail)

Informació important

Abans de fer la tasca a la part d’investigació, hem vist que el nostre sistema Debian 12 no porta incorporat Squirremail, ja que és molt antic i es fan ús d’altres eines més noves. Per això hem hagut de fer ús de PHP 7.4.33 i no del 8.2 (actual). 

Actualitzem repositoris i instal·lem paquets. 

# Actualitzar sistema i afegir repositori de PHP antic
sudo apt update
sudo apt install -y lsb-release ca-certificates curl
sudo curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
sudo apt update

# Instal·lar Apatche, PHP 7.4 i les extensions necessàries
sudo apt install -y apache2 php7.4 php7.4-common php7.4-mbstring php7.4-xml libapache2-mod-php7.4

Per poder fer funcionar el Squirrelmail desactivem la versió PHP actual del nostre sistema i activem la que hem instal·lat, en el nostre cas la versió 7.

# Desactivar la versió 8.2 (si estava activa) i activar la 7.4
sudo a2dismod php8.2
sudo a2enmod php7.4

# Reiniciar Apatche per a aplicar els canvis
sudo systemctl restart apache2

Una vegada preparat això i reiniciat el servei, descarreguem el paquet a la ruta /var/www/html/. El descomprimim i canviem el nom a la carpeta per comoditat tant per l’URL com per accedir a la carpeta. Donem permisos al Apache. 

# Anar al directori web i descarregar el paquet
cd /var/www/html
sudo wget https://sourceforge.net/projects/squirrelmail/files/stable/1.4.22/squirrelmail-webmail-1.4.22.tar.gz

# Descomprimir i canviar de nom la carpeta perquè la URL sigui més curta
sudo tar -xvf squirrelmail-webmail-1.4.22.tar.gz
sudo mv squirrelmail-webmail-1.4.22 squirrelmail

# Assignar permisos perquè Apatche (www-data) pugui llegir els arxius
sudo chown -R www-data:www-data /var/www/html/squirrelmail
sudo chmod -R 755 /var/www/html/squirrelmaily

Ara toca configurar el Squirremail per poder vincular amb IMAP i també configurar-ho amb el nostre domini.

sudo ./configure

Dins del menú, el bàsic és:

Pressiona 2 (Server Settings).

Pressiona 1 (Domain) i escriu el teu domini o “localhost”.

Pressiona A (Update IMAP Settings) i assegura’t que el tipus de servidor sigui dovecot.

Pressiona S per a guardar i Q per a sortir.

SquirrelMail Configuration : Read: config_default.php (1.4.0)
---------------------------------------------------------
Main Menu --
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
7.  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre-defined settings for specific IMAP servers

C   Turn color on
S   Save data
Q   Quit

Command >> Q


Exiting conf.pl.
You might want to test your configuration by browsing to
http://your-squirrelmail-location/src/configtest.php
Happy SquirrelMailing!

Per motius de seguretat creem els directoris fora del nostre directori del Squirremail.

# Crear les carpetes de dades fora de l'abast directe de la web per seguretat
sudo mkdir -p /var/local/squirrelmail/data
sudo mkdir -p /var/local/squirrelmail/attach

# Donar permisos d'escriptura a Apatche
sudo chown -R www-data:www-data /var/local/squirrelmail

Una vegada fet això hauríem de poder accedir amb l’URL amb la IP del servidor. http://10.24.2.196/squirrelmail/src/login.php

Eines o bones pràctiques

Per a comprovar quan no funciona el servei Apache o PHP, per ensortir-nos poden fer ús d’aquestes bones pràctiques com crear un .txt per veure que es mostra o si el Apache funciona i perquè no apunta al directori correcte, o veure si PHP està funcionant i quins errors mostra, a més de revisar els arxius de logs de programes.

# Podem revisar els logs que mostra Apache amb aquesta comanda, on mostrem les últimes 20 líneas de warnings o errors del servei
sudo tail -n 20 /var/log/apache2/error.log

Una altre es crear un .txt a la carpeta /var/www/html/ on posem qualsevol cosa per veure que mostra el missatge al navegador carrega el Apache. 

També és convenient crear un info.php i veure que ens mostra. Això ho podem fer una línea de comanda com aquesta:

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/squirrelmail/info.php

Comprovació funcionament

Com podem observar ja tenim un mailbox en web i no només des de terminal, com es pot veure, el meu company va fer una prova amb Dovecot fa uns dies.