Come installare Roundcube su Ubuntu

Roundcube è un client di posta elettronica IMAP multilingue, open source e basato sul web, scritto in PHP. Fornisce tutte le funzionalità che ci si aspetta da un client di posta elettronica, tra cui supporto MIME, rubrica, manipolazione delle cartelle, ricerca dei messaggi e controllo ortografico.

Questo tutorial ti mostrerà come installare la webmail Roundcube su Ubuntu 22.04 con il server web Nginx e il server del database MySQL.

Passaggio 1: aggiornare il sistema operativo

Prima di procedere con l’installazione e la configurazione della webmail Roundcube su Ubuntu 22.04, aggiorna e potenzia i pacchetti di sistema all’ultima versione con il seguente comando:

# apt update && sudo apt upgrade -y

Passaggio 2: installare il server Web Nginx

In questo tutorial, useremo Nginx. Se preferisci Apache o un altro server web, puoi usarlo al posto di Nginx.

È possibile installare Nginx tramite apt il gestore pacchetti eseguendo il seguente comando.

# apt install nginx

È possibile avviare il servizio Nginx e configurarlo per l’esecuzione all’avvio immettendo i seguenti comandi:

# systemctl start nginx
# systemctl enable nginx

Verificare lo stato del  Nginx servizio utilizzando  systemctl status il comando:

# systemctl status nginx

Produzione:

● nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running)
       Docs: man:nginx(8)
   Main PID: 5317 (nginx)
      Tasks: 2 (limit: 2196)
     Memory: 2.6M
        CPU: 31ms
     CGroup: /system.slice/nginx.service
             ├─5317 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;"
             └─5318 "nginx: worker process

Passaggio 3: installare PHP e le estensioni PHP richieste per Roundcube

Esegui il seguente comando per installare le estensioni PHP richieste. PHP8.1 è completamente supportato nella versione 1.6.

# apt install php php-fpm php-gd php-common php-json php-imagick php-imap php-xml php-mbstring php-curl php-zip php-bz2 php-intl php-ldap

Verificare se PHP è installato.

# php -v
Output:
PHP 8.1.2-1ubuntu2.9 (cli) (built: Oct 19 2022 14:58:09) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.2-1ubuntu2.9, Copyright (c), by Zend Technologies

Passaggio 4: installare MySQL e creare un database

È possibile installare il server MySQL con il seguente comando:

# apt install mysql-server

Avviare il demone del server del database e abilitarne l’avvio automatico al successivo avvio con i seguenti comandi:

# systemctl start mysql
# systemctl enable mysql

Verificare lo stato del  MySQL servizio utilizzando  systemctl status il comando:

# systemctl status mysql

Produzione:

● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running)
   Main PID: 1083 (mysqld)
     Status: "Server is operational"
      Tasks: 41 (limit: 2797)
     Memory: 434.0M
        CPU: 1min 57.932s
     CGroup: /system.slice/mysql.service
             └─1083 /usr/sbin/mysqld

Di default, MySQL non è indurito. Puoi proteggere MySQL usando lo mysql_secure_installation script.

# mysql_secure_installation

Configuralo in questo modo:

- Set root password? [Y/n] Y
- 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

Ora esegui il comando seguente per accedere alla shell MySQL.

# mysql -u root -p

Dopo aver effettuato l’accesso al server del database, è necessario creare un database per l’installazione di Roundcube:

mysql> CREATE DATABASE roundcubemail;
mysql> CREATE USER 'roundcube'@'localhost' IDENTIFIED BY 'Strong-Password';
mysql> GRANT ALL PRIVILEGES ON roundcubemail . * TO 'roundcube'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> exit;

Passaggio 5: Scarica Roundcube

Roundcube è disponibile nei repository predefiniti di Ubuntu. Tuttavia, i repository di solito non forniscono una versione aggiornata.

L’ultima versione stabile di Roundcube può essere installata scaricando il codice sorgente dalla pagina dei download di Roundcube.

Utilizzando l’indirizzo con wget, scarica il  tarball di Roundcube  sul server:

# wget https://github.com/roundcube/roundcubemail/releases/download/1.6.0/roundcubemail-1.6.0-complete.tar.gz

Crea una roundcubedirectory:

# mkdir /var/www/roundcube/

Dopodiché sarà necessario decomprimere l’archivio Roundcube:

# tar -xvzf roundcubemail-1.6.0-complete.tar.gz -C /var/www/roundcube/ --strip-components 1

Rendere Nginx proprietario della roundcube cartella e concedergli autorizzazioni sufficienti.

# chown -R www-data:www-data /var/www/roundcube
# chmod 755 -R /var/www/roundcube

Ora avvia il database di esempio incluso nel file scaricato.

# mysql -u roundcube -p roundcube < /var/www/roundcube/SQL/mysql.initial.sql

Passaggio 6: configurare Nginx per Roundcube

Quindi, crea un file di configurazione dell’host virtuale per ospitare Roundcube:

# nano /etc/nginx/conf.d/roundcube.conf

Nginx ignora i file Apache di Roundcube .htaccess, quindi stiamo dicendo a Nginx di ignorare alcune directory sensibili:

server {
        listen 80;

        server_name webmail.your-domain.com;
        root /var/www/roundcube;

        index index.php index.html index.htm;

        error_log /var/log/nginx/roundcube.error;
        access_log /var/log/nginx/roundcube.access;


        location ~ ^/(README.md|INSTALL|LICENSE|CHANGELOG|UPGRADING)$ {
            deny all;
        }

        location ~ ^/(config|temp|logs)/ {
            deny all;
        }

        location ~ /\. {
            deny all;
        }

        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/run/php/php8.1-fpm.sock;
        }
}

Ricordati di sostituire  your-domain.com con il nome di dominio del tuo server.

Salvare e uscire dal file di configurazione.

Controlla la sintassi di Nginx:

# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Per implementare le modifiche, riavviare il webserver Nginx:

# systemctl restart nginx

Fase 7: Configurazione e installazione di Roundcube

Ora apri il tuo browser web e vai su http://webmail.your-domain.com/installere vedrai la seguente schermata:

Se tutti i moduli e le estensioni richiesti sono installati, premere  AVANTI e passare  al passaggio successivo.

Nella pagina successiva, vai alle impostazioni di configurazione del database e inserisci il nome del database, l’utente e la password creati in precedenza.

Nelle impostazioni SMTP, seleziona la casella “Utilizza il nome utente e la password IMAP correnti per l’autenticazione SMTP “:

Dopo aver completato la configurazione, premi CREATE CONFIG per terminare l’installazione. Verrai quindi avvisato che la configurazione è stata creata correttamente.

Una volta che tutto è configurato e funzionante, apri il terminale e rimuovi la directory di installazione con il seguente comando:

# rm -rf /var/www/roundcube/install/

E ora vai su  http://webmail.your-domain.com così puoi effettuare il login.

Autore

Classe Novanta3, Fondatore di TrgtKLS. Appassionato in Sec IT & Tech. Expert per l'amministrazione web server e supporto in Back-&, ottimizzazione e manutenzione di esso. • Metà Free e Metà Freelancer • mail@trgtkls.org

Articoli correlati

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

close