Linux Sunucuda Apache veya Nginx ile Roundcube Webmail

Roundcube, PHP diliyle geliştirilmiş ve IMAP protokolünü destekleyen açık kaynak kodlu bir web e-posta istemcisidir. E-posta iletme, yanıtlama, alma ve gönderme işlemleri basit bir kullanıcı arayüzü ile gerçekleştirilebilir. Bunun yanında, kullanıcılar kişisel adres defteri oluşturabilir ve gruplar tanımlayarak daha düzenli bir iletişim ortamı sağlayabilir.

Webmail Kurulumu Öncesi Teknik Gereksinim

Roundcube kurulumu öncesinde sisteminizin belirli gereksinimleri karşılaması gerekir. Bunlar, uygulamanın uyumlu çalışması, güvenlik açıklarının önlenmesi ve düzgün bir kullanıcı deneyimi açısından gereklidir.

İşletim sistemi olarak Ubuntu 20.04 veya daha yeni bir versiyon tercih edilmelidir. Apache ya da Nginx gibi modern web sunucuları da Roundcube ile uyumlu çalışır, ancak yapılandırma işlemleri farklılık gösterebilir. Özellikle Apache Brotli modülü etkinleştirildiğinde, Roundcube gibi web tabanlı arayüzlerde sayfa yükleme süreleri gözle görülür biçimde iyileştirilebilir.

PHP 7.4 ve üzeri sürüm kullanılmalı; php-imap, php-mbstring, php-intl, php-curl ve php-mysql gibi eklentiler eksiksiz kurulmalıdır. Aksi takdirde Roundcube arayüzünde işlevsel sorunlar yaşanabilir.

Veritabanı tarafında, yapılandırma verilerinin tutulması için MariaDB veya MySQL sistemlerinden biri aktif olarak çalıştırılmalıdır.

Ayrıca, webmail.domain.com şeklinde bir DNS A kaydı tanımlanmalı ve IP yönlendirmesi yapılmalıdır. CentOS 7 Apache Let’s Encrypt yapılandırması ile SSL sertifikası entegre edilerek Roundcube webmail arayüzünün HTTPS üzerinden güvenli şekilde sunulması sağlanmalıdır. Bu sayede hem erişim kolaylaşır hem de kullanıcı güvenliği artırılır.

Roundcube Kurulumu

Sistem Güncellemeleri Yapılması

Öncelikle sistemdeki mevcut yazılım paketlerini en güncel hale getirelim.

PHP ve Bağımlılıkları Kurulumu

Apache ya da Nginx ile uyumlu çalışacak PHP ve gerekli modülleri kuralım.

Composer (bağımlılık yöneticisi) kurulumu:

Apache veya Nginx Kurulumu

Apache Kurulumu;

Nginx Kurulumu;

Roundcube için bir Veritabanı Kurulumu

Roundcube’un çalışabilmesi için kullanıcı bilgilerini ve yapılandırma verilerini saklayabileceği bir veritabanı gereklidir. Bu veritabanı olarak MariaDB ya da MySQL sistemlerinden biri rahatlıkla kullanılabilir.

MariaDB’yi Kuralım

Veritabanı ve kullanıcı tanımlama işlemi için aşağıdaki kod dizilimini uygulayalım.

Roundcube’un En Güncel Sürümünü İndirelim

Apache’yi Roundcube İçin Yapılandıralım

Yeni bir yapılandırma dosyası oluşturup, terminal kodlarını ekleyelim.

Siteyi aktif hale getirelim ve Apache hizmetini yeniden başlatarak değişikliklerin uygulanmasını sağlayalım.

Nginx’i Roundcube İçin Yapılandıralım

Yeni bir yapılandırma doyası oluşturduktan sonra kodları ekleyelim.

Web Arayüzü Üzerinden Roundcube Kurulumunu Tamamlayalım

Web arayüzünden kurulumu başlatmak için http://yourdomain.com/installer adresine gidin. Açılan ekranda sistem gereksinimlerini kontrol edin ve veritabanı ayarlarını girin. Daha önce oluşturduğunuz veritabanı bilgilerini (isim, kullanıcı adı, şifre) kullanarak işlemi tamamlayın. Kurulum sonrası installer klasörünü güvenlik açısından sistemden silmeyi unutmayın.

Webmail arayüzüne erişim sağlanabilmesi için webmail.yourdomain.com adresine ait DNS A kaydı sunucunun IP’sine yönlendirilmiş olmalıdır. Bu işlem kullanıcı deneyimini kolaylaştırır.

HTTPS Güvenliği Ekleyelim

Roundcube erişimini şifreleyerek daha güvenli hale getirmek için Let’s Encrypt üzerinden ücretsiz SSL sertifikası kullanabilirsiniz.

Certbot’u yükleyin:

Apache kullanıyorsanız:

Nginx kullanıyorsanız:

Test ve Doğrulama Araçları

Roundcube yapılandırmanızın sağlıklı çalıştığından emin olmak için aşağıdaki test araçlarını kullanabilirsiniz:

Sık Sorulan Sorular (SSS)

Roundcube kurulu ama gelen e-postalar gözükmüyor, ne yapmalıyım?

Bu sorun çoğunlukla IMAP hizmetinin yapılandırma hatasından kaynaklanır. systemctl status dovecot ile Dovecot’un aktif olup olmadığını kontrol edin. /etc/dovecot/conf.d/10-mail.conf dosyasındaki mail_location ayarının doğru olduğundan emin olun. INBOX klasörünün sistemde oluşup oluşmadığını da kontrol edin.

Roundcube çok yavaş çalışıyor, özellikle büyük posta kutularında neden?

Roundcube’un performansı büyük posta kutularında düşebilir. PHP işlem sınırlarını artırmak (max_execution_time, pm.max_children) ilk adımdır. Ayrıca OPcache, Redis ve Memcached gibi araçlarla önbellekleme yapılmalıdır. IMAP erişimi daha hızlı hale getirmek için e-postalar arşivlenmeli veya klasörlere ayrılmalıdır.

SMTP error (454): Authentication failed hatası alıyorum, neden?

Bu hata, SMTP oturum açma bilgilerinin hatalı olduğunu gösterir. config.inc.php içinde SMTP kullanıcı adı, şifre, port (587 veya 465) ve TLS/SSL gibi tüm yapılandırmaların doğru girildiğinden emin olunmalı Ayrıca Postfix yapılandırmasında SASL kimlik doğrulamasının aktif olduğundan ve sunucuda SMTP portunun açık olduğundan emin olalım.

Güncellemeden sonra Roundcube 500 hatası veriyor, nasıl çözülür?

Yükseltme sonrası sık karşılaşılan bu hata genellikle config uyumsuzlukları veya dosya/dizin izinlerinden kaynaklanır. Apache ya da Nginx loglarına göz atın (/var/log/apache2/error.log veya /var/log/nginx/error.log). chown -R www-data:www-data /var/www/roundcube komutunu çalıştırarak kullanıcı izinlerini düzeltelim. Ayrıca veritabanı bağlantı bilgilerini config.inc.php üzerinden doğrulamamız gerekmektedir.

Roundcube kurulu, ama ek dosya gönderemiyorum. upload_max_filesize hatası olabilir mi?

Evet. Bu genellikle PHP yapılandırma sınırlarından kaynaklanır. /etc/php/7.4/apache2/php.ini ya da php-fpm.ini içinde şu değerleri artırıralım;

Yorum yapın