Furkan KAPAN
System Engineer at detera
+1 234 567 890
furkan.kapan@fkteknoloji.com
http://furkankapan.com
Yunus Emre Cd., No: 50
Kurumsal ortamlar veya kendi projeniz için profesyonel bir mail sunucusu kurmak istiyorsanız, CentOS Stream 9 üzerinde Postfix, Dovecot, MariaDB ve Roundcube Webmail bileşenleriyle güçlü, güvenli ve ölçeklenebilir bir yapı kurabilirsiniz.
Bu rehberde sıfırdan adım adım tüm kurulumu anlatıyorum.
| Bileşen | Görevi |
|---|---|
| Postfix | E-posta gönderme servisi (SMTP) |
| Dovecot | E-posta alma servisi (IMAP/POP3) |
| MariaDB | Kullanıcı bilgileri ve yapılandırmaların saklandığı veritabanı |
| Roundcube | Tarayıcı tabanlı webmail arayüzü |
| SpamAssassin & ClamAV | İsteğe bağlı spam/virüs koruması |
İlk olarak sistemimizi güncel hale getirelim ve gerekli depo paketlerini ekleyelim:
sudo dnf update -y
sudo dnf install epel-release -y
Aşağıdaki komut ile mail sunucusu için gereken tüm servisleri kuruyoruz:
sudo dnf install postfix dovecot mariadb-server roundcubemail -yNot: Roundcube paketi varsayılan olarak EPEL deposundan gelir.
MariaDB servisini başlatalım ve ilk güvenlik yapılandırmasını yapalım:
sudo systemctl enable --now mariadb
sudo mysql_secure_installation
Eğer root şifresi belirlemediysen:
sudo mysql -u rootile doğrudan bağlanabilirsin.
Ardından mail sistemi için bir veritabanı ve kullanıcı oluştur:
CREATE DATABASE mailserver;
CREATE USER 'mailuser'@'localhost' IDENTIFIED BY 'StrongPass123!';
GRANT ALL PRIVILEGES ON mailserver.* TO 'mailuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;Postfix’in ana yapılandırma dosyasını aç:
sudo nano /etc/postfix/main.cfmyhostname = mail.furkankapan.com
mydomain = furkankapan.com
myorigin = $mydomain
inet_interfaces = all
inet_protocols = ipv4
mydestination = $myhostname, localhost.$mydomain, localhost
home_mailbox = Maildir/
mynetworks = 127.0.0.0/8
relay_domains =
relayhost =
smtpd_banner = $myhostname ESMTP $mail_name
smtpd_tls_cert_file=/etc/pki/tls/certs/mail.crt
smtpd_tls_key_file=/etc/pki/tls/private/mail.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scachePostfix servisini aktif hale getir:
sudo systemctl enable --now postfixDovecot, kullanıcıların maillerine IMAP/POP3 üzerinden erişmesini sağlar.
Ana konfigürasyon dosyasını düzenleyelim:
sudo nano /etc/dovecot/dovecot.confprotocols = imap pop3 lmtp
listen = *
Mail dizin yapısını belirtelim:sudo nano /etc/dovecot/conf.d/10-mail.confmail_location = maildir:~/MaildirIMAP/POP3 portlarını aktif edelim:
sudo nano /etc/dovecot/conf.d/10-master.confservice imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 993
ssl = yes
}
}
Servisi başlatalım:
sudo systemctl enable --now dovecotRoundcube yapılandırma dosyasını düzenleyelim:
sudo nano /etc/roundcubemail/config.inc.phpAşağıdaki değerleri kontrol et veya ekle:
$config['db_dsnw'] = 'mysql://mailuser:StrongPass123!@localhost/mailserver';
$config['default_host'] = 'ssl://mail.furkankapan.com';
$config['smtp_server'] = 'tls://mail.furkankapan.com';
$config['smtp_port'] = 587;
Ardından Apache web sunucusunu aktif hale getir:
sudo systemctl enable --now httpdRoundcube arayüzüne erişmek için:
http://sunucu_ip/roundcubemail
Sunucunuzu güvenli hale getirmek için ücretsiz SSL sertifikası oluşturabilirsiniz:
sudo dnf install certbot python3-certbot-apache -y
sudo certbot --apache -d mail.furkankapan.com
Ardından Postfix ve Dovecot yapılandırmalarında sertifika yollarını güncelleyin:
# /etc/postfix/main.cf
smtpd_tls_cert_file=/etc/letsencrypt/live/mail.kubrakapan.com/fullchain.pem
smtpd_tls_key_file=/etc/letsencrypt/live/mail.kubrakapan.com/privkey.pem# /etc/dovecot/conf.d/10-ssl.conf
ssl_cert = </etc/letsencrypt/live/mail.kubrakapan.com/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.kubrakapan.com/privkey.pemMail servislerinin çalışabilmesi için ilgili portları açalım:
sudo firewall-cmd --permanent --add-service={smtp,imap,imaps,pop3,pop3s,http,https}
sudo firewall-cmd --reload
Tüm servislerin aktif olup olmadığını doğrulayın:
sudo systemctl status postfix dovecot mariadb httpd
Ayrıca SMTP portunu kontrol edin:
sudo ss -tulpn | grep :25Roundcube üzerinden test mail gönderin veya terminalden şu komutu kullanın:
echo "Test mail from server" | mail -s "Postfix test" user@domain.comFail2ban kullanarak brute-force saldırılarını engelleyin.
SpamAssassin ve ClamAV kurarak spam/virüs koruması ekleyin.
Log’ları düzenli olarak kontrol edin:
sudo tail -f /var/log/maillog
Gerekli Altyapısal kaynak ve sizing belirlenip bu kurulum tamamlandığında:
Kendi alan adınızla profesyonel bir mail sistemi çalışır durumda olur,
Roundcube üzerinden webmail erişimi sağlanır,
TLS desteğiyle güvenli bağlantı kurulur,
Postfix ve Dovecot servisleriyle tam bir e-posta altyapısı elde edersiniz.
Teşekkürler,
E-posta hesabınız yayımlanmayacak. Gerekli alanlar işaretlendi *