Roundcube, en populär webbaserad e-postklient, utmärker sig genom sitt användarvänliga gränssnitt och en bred funktionalitet. Som ett öppen källkodsprojekt, licensierat under GNU General Public License, ger Roundcube flexibilitet genom att fungera med vilken IMAP/SMTP-server som helst, vilket gör den till en anpassningsbar lösning för e-posthantering.
Denna handledning beskriver de steg som krävs för att förstärka säkerheten i din Roundcube-installation på en Ubuntu 16.04-server. Vi kommer att gå igenom följande områden:
- Installationsprocessen för Roundcube på Ubuntu 16.04
- Grundläggande konfiguration av Roundcube
- Aktivering av TLS/SSL-kryptering
- Implementering av tvåfaktorsautentisering
- Avaktivering av osäkra protokoll
- Övervakning av Roundcube-systemet
Innan vi börjar
Följande förutsättningar krävs:
- En Ubuntu 16.04-server med tillgång till en sudo-användare.
- En installerad LAMP-stack (Linux, Apache, MySQL, PHP).
- Ett domännamn eller underdomän som är riktad mot serverns IP-adress.
Steg 1: Installation av Roundcube
Börja med att uppdatera systemets paket:
sudo apt update
Installera sedan Roundcube och de nödvändiga beroendena:
sudo apt install roundcube roundcube-core roundcube-mysql roundcube-plugins
Steg 2: Konfigurera Roundcube
Kopiera Roundcubes konfigurationsfil till rätt plats:
sudo cp /etc/roundcube/default.inc.php /etc/roundcube/config.inc.php
Öppna konfigurationsfilen i en textredigerare:
sudo nano /etc/roundcube/config.inc.php
Gör följande justeringar i filen:
// Databasanslutning
$rcmail_config['db_dsnw'] = 'mysql://roundcube:DITT_LÖSENORD@localhost/roundcube';
// SMTP-server och port
$rcmail_config['smtp_server'] = 'localhost';
$rcmail_config['smtp_port'] = 587;
// Aktivera TLS/SSL-kryptering
$rcmail_config['smtp_secure'] = 'tls';
// Lägg till ditt domännamn
$rcmail_config['default_host'] = 'exempel.se';
Steg 3: Aktivera TLS/SSL-kryptering
TLS/SSL-kryptering är avgörande för att skydda e-postkommunikationen från avlyssning eller manipulation.
Generera ett SSL-certifikat med OpenSSL:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/roundcube.key -out /etc/ssl/certs/roundcube.crt
Konfigurera Apache för att använda det skapade SSL-certifikatet:
sudo nano /etc/apache2/sites-enabled/000-default.conf
Lägg till följande konfiguration i filen:
<VirtualHost *:443>
ServerName exempel.se
ServerAlias www.exempel.se
DocumentRoot /var/www/roundcube
SSLEngine on
SSLCertificateFile /etc/ssl/certs/roundcube.crt
SSLCertificateKeyFile /etc/ssl/private/roundcube.key
</VirtualHost>
<VirtualHost *:80>
ServerName exempel.se
ServerAlias www.exempel.se
DocumentRoot /var/www/roundcube
Redirect permanent / https://exempel.se/
</VirtualHost>
Starta om Apache för att aktivera ändringarna:
sudo systemctl restart apache2
Steg 4: Implementera tvåfaktorsautentisering
Tvåfaktorsautentisering (2FA) ger ett extra lager av säkerhet genom att kräva en andra verifieringsmetod vid inloggning.
Installera Roundcube 2FA-plugin:
cd /usr/share/roundcube/plugins/
sudo git clone https://github.com/roundcube/twofactor.git
Aktivera plugin i Roundcubes konfigurationsfil:
sudo nano /etc/roundcube/config.inc.php
Lägg till följande rad:
$rcmail_config['plugins']['twofactor'] = true;
Skapa en kryptografisk nyckel för 2FA:
sudo openssl genrsa -out /etc/roundcube/twofactor.key 1024
Starta om Roundcube-tjänsten:
sudo systemctl restart roundcube
Steg 5: Inaktivera osäkra protokoll
Osäkra protokoll som POP3 och IMAP bör avaktiveras för att minimera risken för attacker.
Redigera filen /etc/dovecot/conf.d/10-ssl.conf:
sudo nano /etc/dovecot/conf.d/10-ssl.conf
Kommentera eller ta bort följande rad:
#listen = *, ::
listen = *
Redigera sedan filen /etc/dovecot/conf.d/10-mail.conf:
sudo nano /etc/dovecot/conf.d/10-mail.conf
Kommentera eller ta bort följande rader:
#listen = *, ::
disable_plaintext_auth = yes
Starta om Dovecot för att tillämpa inställningarna:
sudo systemctl restart dovecot
Steg 6: Övervakning av Roundcube
Övervaka Roundcubes loggfiler regelbundet för eventuella säkerhetsincidenter:
sudo tail -f /var/log/roundcube/errors
Använd ett säkerhetsövervakningsverktyg som Fail2ban för att automatiskt blockera angripare:
sudo apt install fail2ban
Konfigurera Fail2ban för Roundcube:
sudo nano /etc/fail2ban/jail.local
Lägg till följande sektion i filen:
[roundcube]
enabled = true
port = 443, 80
filter = roundcube
maxretry = 3
bantime = 600
Sammanfattning
Genom att följa dessa steg kan du öka säkerheten för din Roundcube-installation på Ubuntu 16.04 markant. TLS/SSL-kryptering, tvåfaktorsautentisering, avaktivering av osäkra protokoll och kontinuerlig övervakning hjälper till att skydda din e-postserver mot attacker och obehörig åtkomst.
Kom ihåg att säkerhet är en ständigt pågående process. Håll din server uppdaterad, övervaka loggar regelbundet och anpassa dina säkerhetsåtgärder när nya hot uppstår.
Vanliga Frågor (FAQ)
1. Hur återställer jag ett bortglömt Roundcube-lösenord?
Om du glömt ditt lösenord kan du använda kommandot ’roundcubepasswd’ för att återställa det:
sudo roundcubepasswd
2. Hur aktiverar jag POP3/IMAP i Roundcube?
Du aktiverar POP3/IMAP genom att justera konfigurationsfilen (/etc/roundcube/config.inc.php):
$rcmail_config['pop3_server'] = 'localhost';
$rcmail_config['imap_server'] = 'localhost';
3. Hur ändrar jag standarddomänen för Roundcube?
Ändra standarddomänen direkt i Roundcube-konfigurationen (/etc/roundcube/config.inc.php):
$rcmail_config['default_host'] = 'ny_domän.se';
4. Hur felsöker jag problem med Roundcube?
Granska Roundcubes felloggar (/var/log/roundcube/errors) för att identifiera potentiella problem. Du kan också aktivera debug-läge genom att lägga till följande rad i konfigurationsfilen:
$rcmail_config['debug'] = true;
5. Hur anpassar jag Roundcube-gränssnittet?
Du kan anpassa utseendet på Roundcube genom att installera teman och plugins som finns tillgängliga på Roundcubes webbplats.
6. Hur hanterar jag användarkonton i Roundcube?
Användarkonton administreras via MySQL-databasen (roundcube) eller genom det inbyggda administrationsgränssnittet i Roundcube.
7. Hur skyddar jag Roundcube mot spam?
Implementera spamfilter som SpamAssassin eller andra liknande lösningar för att minska spam i Roundcube.
8. Hur säkerställer jag Roundcubes tillgänglighet?
Använd en lastbalanserare för att distribuera trafiken och öka tillgängligheten för Roundcube.