Roundcube telepítése

  • Beküldve: 2015. május 18, 16:03
  • Szerző: Bolemányi Attila

Először is készítsünk ennek a webes alkalmazásnak is egy külön felhasználót a Debian rendszerben:

useradd -b /srv/web/www/ -g www-data -m -N -s /bin/false webmail.comega7.local
passwd webmail.comega7.local
rm /srv/web/www/webmail.comega7.local/.*

A weboldal konfigurációs fájlja, a /etc/apache2/sites-available/webmail.comega7.local.conf a következő legyen:

<VirtualHost *:443>
    ServerName          webmail.comega7.local
    ServerAdmin         webmaster@comega7.local
    DocumentRoot        /srv/web/www/webmail.comega7.local/

    <Directory "/srv/web/www/webmail.comega7.local">
        Options +SymLinksIfOwnerMatch
        AllowOverride AuthConfig FileInfo Indexes Limit Options=Indexes,MultiViews
        Require all granted
    </Directory>

    <FilesMatch \.php$>
        SetHandler "proxy:unix:/var/run/webmail.comega7.local.php5-fpm.sock|fcgi://localhost"
    </FilesMatch>

    SSLEngine                   On
    SSLCertificateFile          /etc/apache2/cert/webmail.comega7.local.crt
    SSLCertificateKeyFile       /etc/apache2/cert/webmail.comega7.local.key

    ErrorLog                    /var/log/webmail.comega7.local.error.log
    CustomLog                   /var/log/webmail.comega7.local.access.log combined
</VirtualHost>

Engedélyezzük az új oldalt:

a2ensite webmail.comega7.local

Készítsünk tanúsítványt is az új weboldalnak:

mkdir /etc/apache2/cert
cd /etc/apache2/cert
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout webmail.comega7.local.key -out webmail.comega7.local.crt

A válaszok ismét:

Country Name: HU
State or Province Name: Pest
Locality Name: Budapest
Organization Name: Comega7
Organizational Unit Name: IT
Common Name: webmail.comega7.local
Email Address: bolemanyi.attila@comega7.local

Itt ismét figyelj arra, hogy a Common Name után a weboldal címét írd be, ahogyan az megjelenik a böngésző címsorában. Indítsuk újra az Apache szervert:

service apache2 restart

Készítsük el az oldal PHP konfigurációs fájlját is - /etc/php5/fpm/pool.d/webmail.comega7.local.conf - az alábbi tartalommal:

[webmail.comega7.local]
user = webmail.comega7.local
group = www-data
listen = /var/run/webmail.comega7.local.php5-fpm.sock
listen.owner = webmail.comega7.local
listen.group = www-data
listen.mode = 0660
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
php_flag[display_errors] = off
php_admin_value[error_log] = /var/log/webmail.comega7.local.fpm-php.log
php_admin_flag[log_errors] = on
php_admin_value[memory_limit] = 128M

Indítsuk újra a PHP-FPM szolgáltatást:

service php5-fpm restart

Töltsük le a Roundcube webes levelezőprogramot és tegyük a helyére:

cd /tmp
wget --no-check-certificate https://downloads.sourceforge.net/project/roundcubemail/roundcubemail/1.1.1/roundcubemail-1.1.1-complete.tar.gz
tar -xvzf roundcubemail-1.1.1-complete.tar.gz
cd roundcubemail-1.1.1
cp -a /tmp/roundcubemail-1.1.1/. /srv/web/www/webmail.comega7.local
chown -R webmail.comega7.local:www-data /srv/web/www/webmail.comega7.local

A Roundcube szintén igényel egy MySQL adatbázist, készítsük el:

mysql -u root -p
CREATE DATABASE roundcube CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL ON roundcube.* TO roundcube@localhost IDENTIFIED BY 'Pa$$w0rd';
FLUSH PRIVILEGES;
exit

Készítsük el az adatbázis tábláit:

cd /srv/web/www/webmail.comega7.local
mysql -D roundcube -u roundcube -p <./SQL/mysql.initial.sql

A Roundcube újabb PHP kiegészítőket igényel:

aptitude install php5-mcrypt php5-intl

/etc/php5/fpm/php.ini fájlban állítsuk be az időzónát (keress rá és vedd ki a kommentet, majd egészítsd ki):

date.timezone = Europe/Budapest

A böngészőben látogasd meg a https://webmail.comega7.local/installer oldalt. Ehhez ki kell egészíteni Linux alatt a /etc/hosts fájlt, Windows alatt pedig a C:\Windows\System32\driver\etc\hosts fájlt (az első sor már benne van):

192.168.100.200 postfixadmin.comega7.local
192.168.100.200 webmail.comega7.local

Az első oldalon a konfiguráció ellenőrzése történik meg (Check environment). Az LDAP és a MySQL-en kívüli komponensek nem elérhetőek (NOT AVAILABLE), de a többinek zöld OK állapotban kell lennie. Ha rendben van, jöhet a lap alján a NEXT gomb.

A második oldalon csak a legfontosabb mezőket töltjük most ki, tulajdonképpen csak a Database setup csoport mezőit, ahol meg kell adni:

  • az adatbázis típusát (MySQL),
  • a kiszolgáló nevét (localhost),
  • az adatbázis nevét (roundcube),
  • felhasználóját (roundcube)
  • és a jelszót (Pa$$w0rd).

A lap alján kattints a CREATE CONFIG gombra. Egyelőre semmit sem tesztelünk, jöhet a CONTINUE gomb. A Roundcube program Config nevű mappájában elkészült egy config.inc.php nevű fájl, amely csak a Roundcube adatbázisához tartozó beállításokat tartalmazza. Egészítsük ki a fájlt az alábbi tartalom szerint:

<?php
$config['db_dsnw'] = 'mysql://roundcube:Pa%24%24w0rd@localhost/roundcube';
$config['default_host'] = 'ssl://localhost';
$config['default_port'] = 993;
$config['imap_conn_options'] = array (
    'ssl' => array (
        'verify_peer'           => true,
        'verify_peer_name'      => false,
        'allow_self_signed'     => true,
        ),
    );

$config['smtp_server'] = 'tls://localhost';
$config['smtp_port'] = 587;
$config['smtp_user'] = '%u';
$config['smtp_pass'] = '%p';
$config['smtp_timeout'] = 10;
$config['smtp_conn_options'] = array (
    'ssl' => array (
        'verify_peer'           => true,
        'verify_peer_name'      => false,
        'allow_self_signed'     => true,
        ),
    );

$config['support_url'] = '';
$config['plugins'] = array();
$config['language'] = 'hu_HU';
$config['create_default_folders'] = false;
$config['login_autocomplete'] = 2;

$config['des_key'] = 'EYM+mLQ!4nP&sI5%ZpDisCgC';

$config['log_logins'] = true;
$config['product_name'] = 'Comega7 - Webmail';
$config['preview_pane'] = true;

A fájlban található 'des_key' értéke a Te telepítésedben ne az legyen, mint ami itt szerepel, hanem amit a telepítés közben kapsz a programtól! Az is látható, hogy az IMAP kapcsolódás titkosított csatornán történik (SSL) a 993-as porton keresztül, illetve a levélküldés szintén titkosítva történik (TLS) az 587-es porton keresztül.

A Roundcube mappájából töröld ki az Installer nevű almappát. A Roundcube konfigurációs paraméterei a Config mappa defaults.inc.php fájljában találhatóak. Amelyik paraméter szerepel a config.inc.php fájlban, ott az lesz érvényben, amelyik nem szerepel, annak az értéke a defaults.inc.php fájlból kerül beolvasásra. Ez utóbbi fájl alaposan el van látva magyarázatokkal, így mindenképpen csak ajánlani tudom az áttanulmányozását. Amelyik paraméterét meg akarod változtatni, azt a config.inc.php fájlban tedd meg.

Eljött az idő, hogy meglátogasd a https://webmail.comega7.local oldalt, és bejelentkezz az előző oldalon létrehozott teszt felhasználóval. A jobb felső sarokban találod a Beállítások menüpontot. Jó felfedezést! :-)