GNU/Linux >> Linux Esercitazione >  >> Debian

Installazione webmail RoundCube su Debian 8 (Jessie)

Questo tutorial mostra l'installazione dell'ultima webmail RoundCube su Debian 8. Roundcube è un client webmail facile da usare con supporto IMAP e SMTP che può essere esteso con plugin. Su Debian 7, RoundCube era disponibile come pacchetto .deb, non era l'ultima versione ma almeno era facile da installare con apt. Per l'attuale versione Debian, non è più disponibile il pacchetto RoundCube, quindi descriverò l'installazione dal sorgente qui. Questo tutorial contiene un capitolo opzionale che descrive i passaggi per connettere RoundCube con il pannello di controllo dell'hosting ISPConfig 3.

Prerequisiti

  • Sistema operativo Debian 8.
  • Server web Apache con mod_php installato. Se non è ancora installato Apache, dai un'occhiata alla nostra guida LAMP o alla configurazione di Perfect Server per installare un ambiente adatto.
  • Un server di posta elettronica (SMTP + IMAP) a cui Roundcube si collegherà. Può essere il server locale (ad es. quando utilizzi una delle configurazioni server perfette) o un server remoto.
  • Il nome host del server che userò in questo tutorial è server1.example.com con l'indirizzo IP 192.168.1.100. Sostituiscilo con l'IP e il nome host del tuo server.

Installazione RoundCube

Installerò RoundCube nella directory /opt/roundcube per assicurarmi che questa installazione non entri in conflitto con nessun pacchetto di sistema Debian. Il primo passo è installare wget, creare la directory /opt/roundcube e scaricare l'ultima versione di RoundCube con wget in questa directory. L'attuale versione di RoundCube è la 1.1.3 nel momento in cui scrivo questo tutorial, dai un'occhiata al sito Web di RoundCube per verificare se esiste una versione successiva che puoi utilizzare.

Accedi come utente root sulla shell del tuo server, quindi installa wget e l'editor nano:

apt-get install wget nano

Crea la directory e inseriscila con il comando "cd":

mkdir /opt/roundcube
cd /opt/roundcube

Scarica il file RoundCube tar.gz e decomprimilo:

wget https://downloads.sourceforge.net/project/roundcubemail/roundcubemail/1.1.3/roundcubemail-1.1.3-complete.tar.gz
tar xfz roundcubemail-1.1.3-complete.tar.gz

I file RoundCube si trovano ora nella cartella /opt/roundcube/roundcubemail-1.1.3. Il passaggio successivo è spostarli di una directory in /opt/roundcube.

mv roundcubemail-1.1.3/* .
mv roundcubemail-1.1.3/.htaccess .

Il punto alla fine dei due comandi è obbligatorio e fa parte del comando, da non perdere! Elimina la directory vuota e il file tar.gz.

rmdir roundcubemail-1.1.3
rm roundcubemail-1.1.3-complete.tar.gz

E cambia il proprietario di tutti i file con l'utente con cui è in esecuzione il server Apache.

chown -R www-data:www-data /opt/roundcube

Installa il database RoundCube

Roundcube richiede un database per memorizzare le impostazioni della casella di posta, i contatti, ecc. Userò MySQL (o MariaDB) qui come backend del database. Creeremo ora un database con il nome "roundcubemail" e un utente con il nome "roundcube" in MySQL.

Accedi al server MySQL con il seguente comando:

mysql --defaults-file=/etc/mysql/debian.cnf

Quindi eseguire i seguenti comandi sulla shell del database MySQl per creare il database e l'utente del database. Sostituisci la parola "password segreta" nei comandi seguenti con una password a tua scelta.

CREATE DATABASE roundcubemail;
GRANT ALL PRIVILEGES ON roundcubemail.* TO [email protected] IDENTIFIED BY 'secretpassword';
flush privileges;
quit

Ora importeremo le tabelle RoundCube dal file mysql.initial.sql nel nostro nuovo database.

Esegui il seguente comando sulla shell Linux:

mysql --defaults-file=/etc/mysql/debian.cnf roundcubemail < /opt/roundcube/SQL/mysql.initial.sql

Configura RoundCube e Apache

In questo passaggio, configureremo i dettagli del database in RoundCube e aggiungeremo un file di configurazione RoundCube in Apache.

Inizierò con la configurazione del database in RoundCube. Esegui i seguenti comandi per creare un nuovo file config.inc.php basato sul file di configurazione di esempio e aprilo nell'editor nano.

cd /opt/roundcube/config
cp -pf config.inc.php.sample config.inc.php
nano config.inc.php

Trova la riga di configurazione del database che inizia con $config['db_dsnw'] e sostituiscila con la seguente riga:

$config['db_dsnw'] = 'mysql://roundcube:[email protected]/roundcubemail';

La parola "password segreta" deve essere sostituita con la password che hai scelto per il database.

Quindi cerca la riga "smtp_server" e imposta qui il nome host del tuo server SMTP. Nel mio caso, il server di posta è il server locale, quindi imposterò il server su "localhost".

$config['smtp_server'] = 'localhost';

Ora è il momento di configurare Apache. Creerò un nuovo file di configurazione roundcube.conf nella cartella /etc/apache2/conf-available/.

nano /etc/apache2/conf-available/roundcube.conf

Aggiungi le seguenti righe a quel file e salvalo.

Alias /roundcube /opt/roundcube
Alias /webmail /opt/roundcube

<Directory /opt/roundcube>
Options +FollowSymLinks
# AddDefaultCharset UTF-8
AddType text/x-component .htc

<IfModule mod_php5.c>
AddType application/x-httpd-php .php
php_flag display_errors Off
php_flag log_errors On
# php_value error_log logs/errors
php_value upload_max_filesize 10M
php_value post_max_size 12M
php_value memory_limit 64M
php_flag zlib.output_compression Off
php_flag magic_quotes_gpc Off
php_flag magic_quotes_runtime Off
php_flag zend.ze1_compatibility_mode Off
php_flag suhosin.session.encrypt Off
#php_value session.cookie_path /
php_flag session.auto_start Off
php_value session.gc_maxlifetime 21600
php_value session.gc_divisor 500
php_value session.gc_probability 1
</IfModule>

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^favicon\.ico$ skins/larry/images/favicon.ico
# security rules:
# - deny access to files not containing a dot or starting with a dot
# in all locations except installer directory
RewriteRule ^(?!installer)(\.?[^\.]+)$ - [F]
# - deny access to some locations
RewriteRule ^/?(\.git|\.tx|SQL|bin|config|logs|temp|tests|program\/(include|lib|localization|steps)) - [F]
# - deny access to some documentation files
RewriteRule /?(README\.md|composer\.json-dist|composer\.json|package\.xml)$ - [F]
</IfModule>

<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
</IfModule>

<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 month"
</IfModule>

FileETag MTime Size

<IfModule mod_autoindex.c>
Options -Indexes
</ifModule>

AllowOverride None
Require all granted
</Directory>

<Directory /opt/roundcube/plugins/enigma/home>
Options -FollowSymLinks
AllowOverride None
Require all denied
</Directory>

<Directory /opt/roundcube/config>
Options -FollowSymLinks
AllowOverride None
Require all denied
</Directory>

<Directory /opt/roundcube/temp>
Options -FollowSymLinks
AllowOverride None
Require all denied
</Directory>

<Directory /opt/roundcube/logs>
Options -FollowSymLinks
AllowOverride None
Require all denied
</Directory>

Le 2 righe Alias ​​nelle prime due righe rendono RoundCube disponibile come /roundcube e /webmail sul tuo server.

Abilita la configurazione e ricarica Apache:

a2enconf roundcube
service apache2 reload

Questo è tutto, RoundCube è ora completamente installato sul tuo server e puoi raggiungerlo sull'IP del server e sul nome host tramite gli alias /roundcube e /webmail. L'IP del mio server è 192.168.1.100; per questo posso aprire RoundCube con http://192.168.1.100/webmail

Installazione del plug-in ISPConfig RoundCube (opzionale)

Quando sul tuo server è installato iSPConfig 3, si consiglia vivamente di installare il plug-in ISPConfig RoundCube. Ciò consente ai tuoi utenti di posta elettronica di gestire i loro autorisponditori, filtri e-mail e altre impostazioni della casella di posta dall'interno di RoundCube.

Il plug-in ISPConfig 3 RoundCube è connesso a ISPConfig 3 con l'API remota ISPConfig. Per utilizzare questa API, abbiamo bisogno di un utente remoto.

Accedi a ISPConfig come utente "admin".

Per creare un tale utente, vai su Sistema> Gestione utenti> Utenti remoti e fai clic sul pulsante Aggiungi nuovo utente:

Immettere un nome utente e una password per il nuovo utente remoto. Sceglierò il nome utente "roundcube" e la password "!fdWEacBOG1d".

La configurazione dell'utente remoto consente un controllo dell'accesso a grana fine; devono essere abilitate le seguenti funzioni:

  • Funzioni del server
  • Funzioni client
  • Funzioni utente di posta
  • Funzioni di alias di posta
  • Funzioni utente del filtro antispam della posta
  • Funzioni dei criteri di filtro antispam della posta
  • Funzioni di recupero della posta
  • Funzioni della whitelist del filtro antispam della posta
  • Funzioni della lista nera del filtro antispam della posta
  • Funzioni di filtro degli utenti di posta

Infine clicca su Salva.

I passaggi successivi sono stati eseguiti sulla shell del server. Accedi come utente root.

Installeremo ora il certificato SSL ISPConfig nell'archivio certificati SSL da Debian.

cp /usr/local/ispconfig/interface/ssl/ispserver.crt /usr/local/share/ca-certificates/
update-ca-certificates

Apri il file /etc/php5/cgi/php.ini

nano /etc/php5/apache2/php.ini

Scorri verso il basso fino a visualizzare la sezione [openssl] del file e lì aggiungi la seguente riga:

openssl.cafile=/etc/ssl/certs/ca-certificates.crt

Quindi riavvia Apache.

service apache2 restart

Per scaricare l'addon, installa prima il client Git.

apt-get install git

Ottieni l'ultima versione del plug-in RoundCube ISPConfig:

cd /tmp
git clone https://github.com/w2c/ispconfig3_roundcube.git
cd /tmp/ispconfig3_roundcube/

E sposta il plug-in nella directory dei plug-in roundcube.

mv ispconfig3_* /opt/roundcube/plugins
cd /opt/roundcube/plugins

Crea un nuovo file config.inc.php per il plugin in base alla configurazione di esempio e apri il file nell'editor nano.

mv ispconfig3_account/config/config.inc.php.dist ispconfig3_account/config/config.inc.php
nano ispconfig3_account/config/config.inc.php

Inserisci i dettagli dell'utente remoto e salva il file.

<?php
$rcmail_config['identity_limit'] = false;
$rcmail_config['remote_soap_user'] = 'roundcube';
$rcmail_config['remote_soap_pass'] = '!fdWEacBOG1d';
$rcmail_config['soap_url'] = 'https://server1.example.com:8080/remote/';
?>

Sostituisci server1.example.com con il nome host del server. Quando si utilizza SSL (HTTPS) per la connessione API remota, è importante che il nome host nella configurazione di RoundCube corrisponda al nome host del certificato SSL dell'interfaccia ISPConfig. Puoi controllare il nome host del certificato SSL ISPConfig con il comando:

openssl x509 -in /usr/local/share/ca-certificates/ispserver.crt -text -noout | grep Subject:

Il risultato è nel mio caso:

Subject: C=DE, ST=Niedersachsen, L=Lueneburg, O=ISPConfig UG, OU=IT, CN=server1.example.com/[email protected]

Quindi il nome host "server1.example.com" nel file di configurazione del plug-in corrisponde al nome host nel certificato SSL.

Ora attiveremo i nuovi plugin in RoundCube. Apri il file di configurazione in un editor:

nano /opt/roundcube/config/config.inc.php

e aggiungi la seguente riga alla fine del file:

$rcmail_config['plugins'] = array("jqueryui", "ispconfig3_account", "ispconfig3_autoreply", "ispconfig3_pass", "ispconfig3_spam", "ispconfig3_fetchmail", "ispconfig3_filter");

Ora puoi accedere a RoundCube, le nuove opzioni sono disponibili in Impostazioni> Account .

Conto generale.

Configurazione filtro posta.

Configurazione di Fetchmail.

  • Debian
  • Cubo rotondo
  • Plugin Roundcube ISPConfig

Debian
  1. Come aggiornare Debian 8 Jessie a Debian 9 Stretch

  2. Installa Horde 5 Webmail per ISPConfig su Debian Jessie tramite PEAR

  3. Rilascio di Debian 8 Jessie – Cosa c'è di nuovo?

  4. Debian – Non è possibile avviare l'installazione di Devuan/debian?

  5. Come installare RoundCube Webmail su Debian 9

Come installare Anaconda su Debian 10

Installazione e configurazione PSAD su Debian 8 (Jessie)

Utilizzo di RoundCube Webmail con ISPConfig 3 su Debian Wheezy (Apache2)

Installazione del server Samba su Debian 8 (Jessie)

Come installare Drupal su Debian 10

Come installare XAMPP su Debian 10