Wyszukiwanie w witrynie

Jak zainstalować i skonfigurować klienta poczty internetowej RoundCube z użytkownikami wirtualnymi w Postfixie — część 4


W Częściach 1 do 3 tej serii Postfix wyjaśniliśmy krok po kroku, jak założyć i skonfigurować serwer e-mail z użytkownikami wirtualnymi. Pokazaliśmy również, jak uzyskać dostęp do jednego z tych kont za pomocą Thunderbirda jako klienta poczty e-mail.

  1. Konfigurowanie serwera pocztowego Postfix i Dovecot z MariaDB – część 1
  2. Skonfiguruj użytkowników domeny wirtualnej Postfix i Dovecot – część 2
  3. Zainstaluj i zintegruj ClamAV i SpamAssassin z serwerem pocztowym Postfix – część 3

W dobie łączności, kiedy prawdopodobnie będziesz potrzebować dostępu do swojej skrzynki odbiorczej z dowolnego miejsca (a nie tylko z komputera domowego), oprogramowanie po stronie serwera, zwane klientami poczty internetowej, umożliwia czytanie i wysyłanie wiadomości e-mail za pośrednictwem interfejsu internetowego.

Roundcube jest jednym z takich programów i ze względu na jego liczne funkcje (o których więcej możesz przeczytać na stronie projektu) to właśnie ten program wybraliśmy do wykorzystania w tym samouczku.

Zainstaluj usługę Roundcube Webmail dla Postfix

W CentOS 7 i opartych na nim dystrybucjach, takich jak RHEL i Fedora, instalacja Roundcube jest tak prosta, jak:

yum update && yum install roundcubemail

Uwaga: należy pamiętać, że Roundcube znajduje się w repozytorium EPEL, które musieliśmy już włączyć, jak opisano w Część 1.

W Debianie 8 i jego pochodnych, takich jak Ubuntu i Mint, musisz najpierw włączyć backporty Jessie (sieć):

echo "deb http://http.debian.net/debian jessie-backports main" >> /etc/apt/sources.list

Następnie zainstaluj Roundcube w następujący sposób:

aptitude update && aptitude install roundcube

Niezależnie od dystrybucji, z której korzystamy, musimy teraz utworzyć bazę danych do przechowywania wewnętrznej struktury Roundcube.

W Debianie 8 proces instalacji zajmie się tym:

Wybierz Tak, gdy pojawi się pytanie, czy chcesz skonfigurować bazę danych Roundcube przy użyciu dbconfig-common:

Wybierz mysql jako typ bazy danych:

Podaj hasło użytkownika root MariaDB:

Wybierz hasło do Roundcube, aby zarejestrować się na serwerze bazy danych, a następnie kliknij OK:

Potwierdź hasło wprowadzone w poprzednim kroku:

Wkrótce będziesz mieć bazę danych o nazwie roundcube i odpowiadające jej tabele utworzone automatycznie:

MariaDB [(none)]> USE roundcube;
MariaDB [(none)]> SHOW TABLES;

W CentOS 7 musisz ręcznie utworzyć bazę danych, logując się do phpMyAdmin lub za pomocą wiersza poleceń. Dla zwięzłości użyjemy tutaj drugiej proponowanej metody:

mysql -u root -p
MariaDB [(none)]> CREATE DATABASE RoundCube_db;

Następnie wyjdź z wiersza poleceń MariaDB i uruchom następujący skrypt SQL:

mysql -u root -p RoundCube_db < /usr/share/roundcubemail/SQL/mysql.initial.sql

Pamiętaj, że w Debianie możesz także wykonać te kroki ręcznie. Dzięki temu możesz zmienić nazwę swojej bazy danych, jeśli chcesz, zamiast nadawać jej automatyczną nazwę „roundcube”, jak widzieliśmy wcześniej.

Skonfiguruj Roundcube dla Postfixa

Na początek należy zauważyć, że począwszy od RoundCube v1.0 i nowszych, ustawienia konfiguracyjne są zawarte tylko w jednym pliku, w przeciwieństwie do poprzednich wersji, w których były podzielone pomiędzy dwa pliki.

Najpierw zlokalizuj następujący plik i utwórz kopię o nazwie config.inc.php w tym samym katalogu. Użyj opcji -p, aby zachować tryb, własność i oryginalną sygnaturę czasową:

cp -p /etc/roundcubemail/defaults.inc.php /etc/roundcubemail/config.inc.php

Następnie upewnij się, że Roundcube ma dostęp do utworzonej wcześniej bazy danych. W db_dsnw zastąp użytkownika i hasło nazwą użytkownika i hasłem z uprawnieniami dostępu do RoundCube_db.

Na przykład możesz użyć tego samego konta administracyjnego, którego użyłeś do zalogowania się do phpMyAdmin w Części 1, lub możesz po prostu użyć roota, jeśli chcesz.

$config['db_dsnw'] = 'mysql://user:password@localhost/RoundCube_db';

Poniższe ustawienia odnoszą się do nazwy hosta, portów, typu uwierzytelniania itd. (są oczywiste, ale więcej szczegółów można znaleźć czytając komentarze w pliku konfiguracyjnym):

$config['default_host'] = 'ssl://mail.linuxnewz.com';
$config['default_port'] = 143;
$config['smtp_server'] = 'tls://mail.linuxnewz.com';
$config['smtp_port'] = 587;
$config['smtp_user'] = '%u';
$config['smtp_pass'] = '%p';
$config['smtp_auth_type'] = 'LOGIN';

Te dwa ostatnie ustawienia (product_name i useragent) odnoszą się do nagłówka w interfejsie internetowym oraz do nagłówków e-maili wysyłanych z wiadomościami.

$config['product_name'] = 'Linuxnewz Webmail - Powered by Roundcube';
$config['useragent'] = 'Linuxnewz Webmail';

Aby Roundcube mógł korzystać z uwierzytelniania użytkownika wirtualnego dla poczty wychodzącej, musimy aktywować wtyczkę virtuser_query (którą znajdziesz w /usr/share/roundcubemail/plugins):

$config['plugins'] = array('virtuser_query');
$config['virtuser_query'] = "SELECT Email FROM EmailServer_db.Users_tbl WHERE Email = '%u'";

Zwróć uwagę, że powyższe zapytanie SQL wskazuje na bazę danych EmailServer_db, którą skonfigurowaliśmy początkowo w części 1, w której przechowywane są informacje o użytkownikach wirtualnych.

Na koniec, podobnie jak w Części 1, aby móc uzyskać dostęp do interfejsu internetowego phpMyAdmin za pomocą przeglądarki internetowej, przejdźmy do pliku konfiguracyjnego Roundcube/Apache pod adresem:

vi /etc/httpd/conf.d/roundcubemail.conf # CentOS 7
nano /etc/roundcube/apache.conf # Debian 8

I umieść następujące linie wewnątrz wskazanych tagów:

Debiana 8:

<IfVersion >= 2.3> 
    Require ip AAA.BBB.CCC.DDD 
    Require all granted 
</IfVersion>

CentOS 7:

<IfModule mod_authz_core.c> 
    # Apache 2.4 
    Require ip AAA.BBB.CCC.DDD 
    Require all granted 
</IfModule>

Chociaż nie jest to ściśle wymagane, dobrym pomysłem jest zmiana aliasu katalogu Roundcube, aby chronić się przed botami, które obierają za cel /roundcube jako dobrze znane drzwi do włamania się do twojego systemu. Możesz wybrać alias odpowiadający Twoim potrzebom (tutaj wybierzemy pocztę internetową):

Alias /webmail /usr/share/roundcubemail # CentOS 7
Alias /webmail /var/lib/roundcube # Debian 8

Zapisz zmiany, wyjdź z pliku konfiguracyjnego i uruchom ponownie Apache:

systemctl restart httpd # CentOS 7
systemctl restart apache2 # Debian 8

Teraz możesz otworzyć przeglądarkę internetową i skierować ją na https://mail.yourdomain.com/webmail, a powinieneś zobaczyć coś podobnego do:

Możesz teraz zalogować się na jedno z kont, które skonfigurowaliśmy w poprzednich artykułach i zacząć wysyłać i odbierać e-maile za pomocą Roundcube z dowolnego miejsca!

Dostosowywanie poczty internetowej Roundcube

Na szczęście interfejs Roundcube jest dość intuicyjny i łatwy w konfiguracji. W tym momencie możesz poświęcić 15-30 minut na skonfigurowanie środowiska i zapoznanie się z nim. Aby uzyskać więcej informacji, przejdź do Ustawień:

Pamiętaj, że powyższy obraz przedstawia e-maile, które otrzymaliśmy na tym koncie ([email ).

Możesz kliknąć Utwórz i rozpocząć pisanie wiadomości e-mail na zewnętrzny adres e-mail:

Następnie naciśnij Wyślij i sprawdź miejsce docelowe, aby sprawdzić, czy dotarło prawidłowo:

Gratulacje! Pomyślnie skonfigurowałeś Roundcube do wysyłania i odbierania e-maili!

Streszczenie

W tym artykule wyjaśniliśmy, jak zainstalować i skonfigurować Roundcube jako klienta sieciowego. Eksplorując interfejs Roundcube, przekonasz się, jak łatwo jest go używać, zgodnie z opisem w pomocy poczty internetowej.

Nie wahaj się jednak dać nam znać, jeśli masz jakieś pytania lub wątpliwości – po prostu zostaw nam wiadomość, korzystając z poniższego formularza komentarza. Oczekujemy na kontakt zwrotny!