Zoeken op website

Hoe RoundCube Webmail Client met virtuele gebruikers in Postfix te installeren en configureren - Deel 4


In Delen 1 tot en met 3 van deze Postfix-serie hebben we stap voor stap uitgelegd hoe je een e-mailserver met virtuele gebruikers kunt opzetten en configureren. We hebben u ook laten zien hoe u toegang krijgt tot een van die accounts met Thunderbird als e-mailclient.

  1. Postfix Mail Server en Dovecot instellen met MariaDB – Deel 1
  2. Configureer Postfix- en Dovecot virtuele domeingebruikers – Deel 2
  3. Installeer en integreer ClamAV en SpamAssassin in Postfix Mail Server – Deel 3

In dit tijdperk van connectiviteit, waarin je waarschijnlijk overal toegang tot je inbox nodig hebt (en niet alleen vanaf je thuiscomputer), maakt serversoftware, ook wel webmailclients genoemd, het voor je mogelijk om e-mails te lezen en te verzenden via een webinterface.

Roundcube is zo'n programma, en gezien de vele functies (waarover je meer kunt lezen op de website van het project), hebben we ervoor gekozen om dit in deze tutorial te gebruiken.

Installeer Roundcube Webmail voor Postfix

In CentOS 7 en gebaseerde distributies zoals RHEL en Fedora is het installeren van Roundcube net zo eenvoudig als:

yum update && yum install roundcubemail

Opmerking: houd er rekening mee dat Roundcube is opgenomen in de EPEL-repository, die we al moeten hebben ingeschakeld, zoals beschreven in Deel 1.

In Debian 8 en zijn afgeleiden zoals Ubuntu en Mint moet u eerst de Jessie backports (web) inschakelen:

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

Installeer Roundcube vervolgens als volgt:

aptitude update && aptitude install roundcube

Ongeacht de distributie die we gebruiken, moeten we nu een database maken om de interne structuur van Roundcube op te slaan.

In Debian 8 zorgt het installatieproces voor dit:

Kies Ja wanneer u wordt gevraagd of u de Roundcube-database wilt configureren met dbconfig-common:

Kies mysql als databasetype:

Geef het wachtwoord op voor de MariaDB-rootgebruiker:

En kies een wachtwoord voor roundcube om te registreren bij de databaseserver en klik vervolgens op OK:

Bevestig het wachtwoord dat u tijdens de vorige stap hebt ingevoerd:

En binnenkort zul je een database hebben met de naam roundcube en de bijbehorende tabellen die automatisch voor je worden gemaakt:

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

In CentOS 7 moet u de database handmatig aanmaken door u aan te melden bij phpMyAdmin of via de opdrachtregel. Kortheidshalve zullen we hier de tweede voorgestelde methode gebruiken:

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

Sluit vervolgens de MariaDB-prompt af en voer het volgende SQL-script uit:

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

Houd er rekening mee dat u deze stappen in Debian ook handmatig kunt uitvoeren. U kunt dus de naam van uw database wijzigen als u dat wilt, in plaats van dat deze automatisch de naam “roundcube” krijgt, zoals eerder gezien.

Configureer Roundcube voor Postfix

Om te beginnen moet u er rekening mee houden dat vanaf RoundCube v1.0 en later de configuratie-instellingen slechts in één bestand zijn opgenomen, in tegenstelling tot eerdere versies waarin ze over twee bestanden waren verdeeld.

Zoek eerst het volgende bestand en maak een kopie met de naam config.inc.php in dezelfde map. Gebruik de optie -p om de modus, het eigendom en de oorspronkelijke tijdstempel te behouden:

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

Zorg er vervolgens voor dat Roundcube toegang heeft tot de database die we eerder hebben gemaakt. Vervang in db_dsnw gebruiker en wachtwoord door een gebruikersnaam en wachtwoord met machtigingen voor toegang tot de RoundCube_db.

U kunt bijvoorbeeld hetzelfde beheerdersaccount gebruiken dat u heeft gebruikt om in te loggen bij phpMyAdmin in Deel 1, of u kunt gewoon root gebruiken als u dat wilt.

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

De volgende instellingen hebben betrekking op de hostnaam, poorten, authenticatietype, enzovoort (ze spreken voor zich, maar je kunt meer details vinden door de opmerkingen in het configuratiebestand te lezen):

$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';

Deze laatste twee instellingen (product_name en useragent) verwijzen naar de header in de webinterface en naar de e-mailheaders die met de berichten worden verzonden.

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

Om ervoor te zorgen dat Roundcube de virtuele gebruikersauthenticatie voor uitgaande e-mail kan gebruiken, moeten we de plug-in virtuser_query activeren (die te vinden is in /usr/share/roundcubemail/plugins):

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

Merk op hoe de SQL-query hierboven verwijst naar de EmailServer_db database die we in eerste instantie in deel 1 hebben opgezet, waarin de informatie over de virtuele gebruikers wordt opgeslagen.

Laten we tot slot, vergelijkbaar met wat we in Deel 1 hebben gedaan om toegang te krijgen tot de webinterface van phpMyAdmin via een webbrowser, eens kijken naar het Roundcube/Apache-configuratiebestand op:

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

En plaats de volgende regels binnen de aangegeven tags:

Debian 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>

Hoewel dit niet strikt vereist is, is het een goed idee om de alias van de Roundcube-map te wijzigen om uzelf te beschermen tegen bots die zich op /roundcube richten als een bekende deur om in te breken in uw systeem. Voel je vrij om een alias te kiezen die bij je past (we gaan hier voor webmail):

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

Sla de wijzigingen op, sluit het configuratiebestand af en start Apache opnieuw:

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

Nu kunt u een webbrowser openen en deze naar https://mail.uwdomein.com/webmail verwijzen en u zou iets moeten zien dat lijkt op:

U kunt nu inloggen met een van de accounts die we in de vorige artikelen hebben geconfigureerd en overal e-mails verzenden en ontvangen met Roundcube!

Roundcube-webmail aanpassen

Gelukkig is de interface van Roundcube redelijk intuïtief en eenvoudig te configureren. Op dit punt kunt u ongeveer 15-30 minuten besteden aan het configureren van de omgeving en ermee vertrouwd raken. Ga naar Instellingen voor meer details:

Houd er rekening mee dat de bovenstaande afbeelding de e-mails toont die we hebben ontvangen in dit account ([email ).

U kunt op Opstellen klikken en beginnen met het schrijven van een e-mail naar een extern e-mailadres:

Druk vervolgens op Verzenden en controleer de bestemming om te zien of deze correct is aangekomen:

Gefeliciteerd! Je hebt Roundcube succesvol ingesteld om e-mails te verzenden en te ontvangen!

Samenvatting

In dit artikel hebben we uitgelegd hoe je Roundcube als webclient instelt en configureert. Terwijl u de interface van Roundcube verkent, zult u zien hoe gemakkelijk deze te gebruiken is, zoals beschreven in de Webmail-help.

Aarzel echter niet om ons te laten weten als u vragen of opmerkingen heeft. Stuur ons gewoon een bericht via het onderstaande opmerkingenformulier. Wij horen graag van u!