Roundcube, PHP ile geliştirilmiş ve IMAP protokolü üzerinden çalışan açık kaynaklı bir web tabanlı e-posta istemcisidir. E-posta gönderme, alma, yanıtlama ve iletme gibi temel işlemleri kolayca gerçekleştirmenizi sağlar. Kullanıcılar, kişisel adres defterlerini oluşturabilir, gruplar tanımlayarak iletişimi daha düzenli hale getirebilir.
Sistem Gereksinimleri
Roundcube Webmail’i sorunsuz bir şekilde kurup kullanabilmek için bazı temel sistem gereksinimlerinin karşılanması gerekir. Bu gereksinimler, hem yazılım uyumluluğu hem de güvenli ve performanslı bir yapı sağlamak açısından kritik öneme sahiptir.
Öncelikle, Ubuntu 20.04 veya daha güncel bir sürüm kullanmanız tavsiye edilir. Bu sürüm, Roundcube’un ihtiyaç duyduğu modern paket desteğini sunar. Web sunucusu olarak Apache ya da Nginx tercih edilebilir; her iki sunucu da Roundcube ile uyumlu çalışır, ancak yapılandırma adımları sunucuya göre değişiklik gösterebilir.
PHP 7.4 veya üzeri sürümlerle birlikte php-imap, php-mbstring, php-intl, php-curl, php-mysql gibi Roundcube’un çalışması için gerekli eklentilerin kurulu olması gerekir. PHP yapılandırması eksik olduğunda arayüzde hatalar veya eksik işlevsellik görülebilir.
Veritabanı tarafında, kullanıcı verileri ve yapılandırma bilgileri için MariaDB veya MySQL kullanılabilir. Bu sistemlerden biri sunucunuza kurulu ve yapılandırılmış olmalıdır.
Son olarak, webmail arayüzüne tarayıcı üzerinden erişebilmek için webmail.domain.com gibi, alan adınıza ait bir DNS A kaydının sunucunuzun IP adresine yönlendirilmiş olması gerekir. Bu, kullanıcıların Roundcube arayüzüne kolayca ulaşabilmesini sağlar ve profesyonel bir görünüm sunar.
Tüm bu bileşenler hazır hale getirildiğinde, Roundcube kurulumu için altyapınız eksiksiz olacaktır.
- Ubuntu 20.04+ sunucu
- Apache veya Nginx web sunucusu
- PHP 7.4+ ve gerekli modüller
- MariaDB ya da MySQL veritabanı
- DNS A kaydı (örneğin:
webmail.domain.com)
Roundcube Kurulumu
Sistem Güncellemeleri Yapılması
Öncelikle sistemdeki mevcut yazılım paketlerini en güncel hale getirelim.
sudo apt update && sudo apt upgrade -y
PHP ve Bağımlılıkları Kurulumu
Apache ya da Nginx ile uyumlu çalışacak PHP ve gerekli modülleri kuralım.
sudo apt install php php-mbstring php-intl php-curl php-xml php-zip php-mysql unzip -y
Composer (bağımlılık yöneticisi) kurulumu:
sudo apt install composer -y
Apache veya Nginx Kurulumu
Apache Kurulumu;
sudo apt install apache2 -y
sudo systemctl enable --now apache2
Nginx Kurulumu;
sudo apt install nginx -y
sudo systemctl enable --now nginx
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
$ sudo apt install mariadb-server -y
Veritabanı ve kullanıcı tanımlama işlemi için aşağıdaki kod dizilimini uygulayalım.
CREATE DATABASE roundcubedb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'roundcubeuser'@'localhost' IDENTIFIED BY 'GucluParola123!';
GRANT ALL PRIVILEGES ON roundcubedb.* TO 'roundcubeuser'@'localhost';
FLUSH PRIVILEGES;
Roundcube’un En Güncel Sürümünü İndirelim
wget https://github.com/roundcube/roundcubemail/releases/download/1.6.9/roundcubemail-1.6.9-complete.tar.gz
tar -xzf roundcubemail-1.6.9-complete.tar.gz
mv roundcubemail-1.6.9 /var/www/roundcube
sudo chown -R www-data:www-data /var/www/roundcube
sudo chmod -R 755 /var/www/roundcube
Apache’yi Roundcube İçin Yapılandıralım
Yeni bir yapılandırma dosyası oluşturup, terminal kodlarını ekleyelim.
ServerName webmail.domain.com DocumentRoot /var/www/roundcube Options FollowSymLinks AllowOverride All Require all granted
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.
server {
listen 80;
server_name webmail.domain.com;
root /var/www/roundcube;
index index.php;
location / {
try_files $uri $uri/ /index.php;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\.ht {
deny all;
}
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:
sudo apt install certbot python3-certbot-apache -y
Apache kullanıyorsanız:
sudo certbot --apache -d yourdomain.com -d webmail.yourdomain.com
Nginx kullanıyorsanız:
sudo apt install python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com -d webmail.yourdomain.com
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:
- mail-tester.com: Gönderdiğiniz e-postaların spam puanını analiz ederek olası sorunları tespit eder.
- mxtoolbox.com: DNS, MX, SPF ve DKIM gibi e-posta yapılandırma kayıtlarınızı kontrol etmenizi sağlar ve olası hataları bildirir.
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;
upload_max_filesize = 25M
post_max_size = 30M
memory_limit = 128M

