Linux Sunucuda Apache – Nginx Tabanlı Roundcube Yapılandırma

Roundcube, PHP ile geliştirilmiş, IMAP protokolü desteğine sahip açık kaynak bir webmail istemcisidir. Temel e-posta işlemleri olan gönderme, alma, yanıtlama ve iletme gibi işlevleri rahatlıkla sunar. Kullanıcılar, adres defteri oluşturabilir ve grup yapılarıyla iletişimlerini daha düzenli şekilde sürdürebilir.

Sistem Gereksinimleri

Roundcube‘ u AlmaLinux 8 üzerinde kurmak için sisteminizin bazı temel gereksinimleri karşılıyor olması gerekir. Bu, hem performanslı hem de hatasız bir kurulum için gereklidir.

Önerilen işletim sistemi AlmaLinux 8 veya daha yenisidir. Kurumsal düzeyde kararlılığıyla bilinen bu sistem, Roundcube kurulumu için idealdir. Apache veya Nginx, web sunucusu olarak kullanılabilir; ikisi de desteklenmekte olup yapılandırma adımları farklıdır.

PHP 7.4 veya üzeri bir sürüm yüklenmelidir. php-imap, php-mbstring, php-intl, php-curl, php-mysqlnd gibi eklentiler eksiksiz kurulmalıdır. AlmaLinux üzerinde bu modüller dnf paket yöneticisi ile kolayca kurulabilir. Eksik modüller kullanıcı arayüzünde sorunlara yol açabilir.

Veritabanı olarak MariaDB ya da MySQL tercih edilebilir. Her iki sistem de verileri sağlıklı biçimde saklayabilir.

Webmail arayüzüne erişim için DNS tarafında bir A kaydı tanımlanmalı ve bu kayıt sunucunun IP adresine yönlendirilmelidir. Bu işlem, kullanıcı deneyimi ve erişim açısından önemlidir.

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

Tarayıcınızı açarak http://yourdomain.com/installer adresine gidin.
Açılan ekrandaki adımları izleyerek sistem gereksinimlerini doğrulayın ve veritabanı yapılandırmasını gerçekleştirin.
Daha önce oluşturduğunuz veritabanı adı, kullanıcı adı ve şifresini girerek kurulumu tamamlayın.
Güvenlik nedeniyle kurulum tamamlandıktan sonra installer dizinini silmeyi unutmayın.

Roundcube arayüzüne erişebilmek için, webmail.yourdomain.com adresinin sunucunuzun IP adresine işaret etmesini sağlayacak bir DNS A kaydı oluşturmanız gerekir. Bu kayıt, kullanıcıların tarayıcı üzerinden kolayca webmail arayüzüne ulaşmasını sağlar.

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 genellikle IMAP sunucusu ile bağlantının kurulamaması ya da maildir dizininin yanlış ayarlanmasından kaynaklanır. Dovecot servisini kontrol etmeyi deneyelim. (systemctl status dovecot) ve mail_location direktifinin doğru ayarlandığından emin olunmalı. Ayrıca INBOX klasörünün otomatik olarak oluşturulup oluşturulmadığını kontrol edelim.

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

Büyük IMAP kutularında (örneğin 10.000+ e-posta) listeleme ve arama işlemleri ciddi yavaşlama yaratır. PHP-FPM için pm.max_children, max_execution_time gibi değerler artırılmalıdır. Ayrıca OPcache etkinleştirin ve memcached ya da redis gibi önbellekleme çözümleri kullanalım. Gerekirse gelen kutusunu klasörlere ayırın veya e-posta arşivleme çözümü entegre edelim.

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