Home / Community / Blog / Roundcubemail - webmail na CentOS

Roundcubemail - webmail na CentOS

W CentOS z EPEL (u mnie epel-release-6-8) instalacja jest prosta:

yum install roundcubemail

i już.

Teraz trzeba przygotować bazę. Tu nie ma filozofii tak jak każe plik INSTALL. Zmieniłem nazwę bazy i użytkownika: rcm, to skrót od RoundCubeMail:

create database rcm character set utf8;
create user 'rcmuser'@'localhost' identified by 'tajnehaslo';
grant all privileges on rcm.* to 'rcmuser'@'localhost';

Jak widać hasło jest tajne ;-) Teraz trzeba te same nazwy ustawić w pliku:

/etc/roundcubemail/db.inc.php

w linii

$rcmail_config['db_dsnw'] = 'mysql://rcmuser:tajnehaslo@localhost/rcm';

a następnie zainicjować bazę poleceniem

mysql -u rcmuser -p rcm < /usr/share/doc/roundcubemail-0.8.5/SQL/mysql.initial.sql

wystarczy podać hasło i chwilę poczekać.

Dodatkowo w pliku

/etc/httpd/conf.d/roundcubemail.conf

trzeba dodać uprawnienia dla własnego komputera (jeżeli nie instalujemy lokalnie). W oryginale było:

Alias /roundcubemail /usr/share/roundcubemail

<Directory /usr/share/roundcubemail/>
    <IfModule mod_authz_core.c>
        # Apache 2.4
        Require local
    </IfModule>
    <IfModule !mod_authz_core.c>
        # Apache 2.2
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1
        Allow from ::1
    </IfModule>
</Directory>

ja zmieniłem na:

Alias /roundcubemail /usr/share/roundcubemail

<Directory /usr/share/roundcubemail/>
    <IfModule mod_authz_core.c>
        # Apache 2.4
        Require local
    </IfModule>
    <IfModule !mod_authz_core.c>
        # Apache 2.2
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1
        Allow from 1.2.3.4
        Allow from ::1
    </IfModule>
</Directory>

gdzie 1.2.3.4 to zewnętrzny adres IP z którego konfigurowałem zdalnie serwer.

Teraz już można się zalogować na serwer (gdy IP jest 4.3.2.1):

http://4.3.2.1/roundcubemail/

i używać podając wszystkie dane konta. W teorii za pomocą tak postawionego serwera można sprawdzać pocztę na dowolnym innym.

W przypadku CentOS 6.4 można zamiast wiadomości dostać komunikat: Service Unavailable Error 500, a w pliku logu

tail /var/log/roundcubemail/errors

miałem:

PHP Error: Could not perform encryption; make sure Mcrypt is installed or lib/des.inc is available in /usr/share/roundcubemail/program/include/rcmail.php on line 1474 (POST /roundcubemail/?_task=login&_action=login)

rozwiązaniem jest zamiana w pliku

/etc/php.d/mcrypt.ini

lini

extension=module.so

na

extension=mcrypt.so

i restart serwera.

Ponieważ RoundCubeMail ma aspiracje bycia aplikacją, więc trzeba podać również nazwę serwera. Tutaj zakładam, że serwer powinien być jeden (co najwyżej kilka do wyboru z listy), bo po co obcy ludzie mają mi zapychać łącze.

Podstawową modyfikacją jest ustawienie wartości $rcmail_config['default_host'] na coś sensownego. Ja mam:

$rcmail_config['default_host']='ssl://localhost:993';

oczywiście przy połączeniu lokalnym można nie używać szyfrowania, ale to następnym razem...

Comments

Log in or create a user account to comment.

Just my blog...

Mon Tue Wed Thu Fri Sat Sun
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31