Bloğa geri dön

Posta Sunucusu Yapılandırma Eğitimi: Postfix, Dovecot, MySQL ve SpamAssassin Nasıl Kullanılır

Posta Sunucusu Yapılandırma Eğitimi: Postfix, Dovecot, MySQL ve SpamAssassin Nasıl Kullanılır

Giriş

On Ubuntu 20.04 üzerinde, Postfix, Dovecot, MySQL ve SpamAssassin gibi araçları bir posta sunucusu yapılandırmak için kullanabilirsiniz. Bu işlem, ilk kez deneyen biri için kafa karıştırıcı olabilir. Bu kılavuz, ayrıntılı adımlarla posta sunucusu yapılandırma sürecini sizin için basitleştirmeyi amaçlamaktadır. Bu kılavuzun sonunda sanal alan adları, kullanıcılar ve takma adlar eklemeyi öğreneceksiniz. Sonuç olarak, sanal sunucunuzu spam merkezlerine karşı daha güvenli hale getireceksiniz.

Gereksinimler

Posta sunucusu yapılandırmasına başlamadan önce, yerine getirilmesi gereken bazı gereksinimler vardır. İlk olarak, sanal özel sunucunuzun sunucunuza yönlendirilen bir alan adına sahip olduğundan emin olun. Ayrıca şunları da yapmanız gerekir: MySQL'i kurmak ve yapılandırmak. Ek olarak, şuna sahip olmalısınız: root yetkilerine sahip bir kullanıcı ve bir SSL sertifikası yüklemek. Son olarak, FQDN tanımlanmış ve yapılandırılmış olduğundan emin olun.

Paketlerinizi root kullanıcısı olarak yüklerseniz, tüm yetkilere sahip olursunuz. Bu yüzden bunu öneriyoruz:

Kullanıcı şifrenizi girin. Bu noktada, $ sembolünün # sembolüne dönüştüğünü göreceksiniz. Ardından, yapılandırmanın farklı yönlerini tek tek inceleyelim.

Adım 1: Paketlerin Kurulması

Paketleri nasıl kuracağımızı öğrenerek başlayacağız:

Postfix yapılandırması açıldığında, Internet Site:

Mail Server postfix config

seçeneğini seçin. Size System mail adı sorulacaktır. Burada, FQDN veya ana alan adını kullanabilirsiniz:

postfix configuration 2

Adım 2: MySQL Veritabanı, Sanal Alan Adları, Kullanıcılar ve Takma Adlar Oluşturma

Ardından, tüm paketler kurulduktan sonra yapılandırmaya geçeceğiz. Amacımız üç tablo yapılandırmaktır. Biri alan adları, biri kullanıcılar ve diğeri takma adlar için olacaktır. Bunlar, oluşturacağımız bir MySQL veritabanında barındırılacaktır.

Veritabanımıza servermail adını vermek istediğimizi varsayalım. İstediğiniz adı kullanmakta özgürsünüz. İşte bunu nasıl oluşturacağımız:

MySQL root kullanıcısı olarak giriş yapmalısınız:

Ardından şifrenizi girin. Başarılı bir deneme sonuç olarak bunu gösterecektir:

Ardından, özellikle posta kimlik doğrulaması için yeni bir kullanıcı oluşturacağız. SELECT iznini şu şekilde verin:

Bundan sonra, izinleri başarıyla uygulamak için MySQL yetkilerinizi yeniden yükleyin:

Ardından, tabloları oluşturmak ve verileri girmek için veritabanımızı kullanacağız:

Yetkili alan adları olarak kabul edilen belirli alan adları için ayrı tablolar oluşturacağız:

Amaç, kullanıcıları tabloya tanıtmaktır. Bu nedenle, ilgili e-posta adresini ve şifreyi ekleyeceğiz. Her kullanıcıyı bir alan adıyla ilişkilendirmeniz gerektiğini unutmayın:

Ardından, diğer e-postaya yönlendireceğimiz tüm e-postaları belirtmek için tüm sanal takma adlarımız için bir tablo oluşturacağız:

Bu işlemin sonunda başarıyla üç tablo oluşturmuş olacaksınız. Sırada verileri girmek var.

  • Virtual Domains

Bu bölümde, alan adlarını virtual_domains tablosuna eklemeyi öğreneceğiz. Özellikle, odaklanacağımız birincil alan adı (example.com) ve FQDN (hostname.example.com):

  • Virtual Emails

Ardından, alan adlarının her biri için e-posta adresini ve ilişkili şifreleri girin. Tüm bilgilerin kendi özel bilgilerinizle değiştirildiğinden emin olun:

  • Virtual Aliases

Şimdi diğer e-posta adresini yönlendireceğiniz e-posta adresini ekleyebilirsiniz. İlki kaynak, ikincisi ise hedeftir:

Ardından, MySQL'den çıkabilirsiniz:

Step 3: Configuring Postfix

Postfix'i SMTP bağlantılarını yönetebilecek şekilde yapılandırmak önemlidir. Ayrıca MySQL veritabanına girilen tüm kullanıcılar için mesajları gönderebilmelidir. Varsayılan dosyanın bir kopyasını oluşturarak başlayalım. Bu, gerektiğinde varsayılan yapılandırmaya kolayca geri dönebilmeniz içindir:

Şimdi main.cf dosyasını düzenlemek için açın:

TLS parametrelerini yorum satırı yaparak başlayın ve ardından diğer parametreleri ekleyin. Örneğimizde Ücretsiz SSL sertifikalarını kullanıyoruz. Elbette yapılandırmayı gereksinimlerinize göre değiştirebilirsiniz:

Ardından, bu parametreleri TLS ayarlarının altına ekleyeceksiniz:

Bundan sonra, mydestination varsayılan ayarlarını yorum satırı yapmalıyız. Ardından, bunu localhost ile değiştireceğiz. Bu değişiklikle birlikte VPS, MySQL tablosundaki sanal alan adlarını kullanabilecektir:

Şimdi, myhostname parametresinin FQDN'inizde ayarlandığını doğrulamak için bu komutu kullanın:

Ek olarak, tabloda listelenen tüm sanal alan adlarına yerel e-posta teslimatını etkinleştirmek için bu satırı ekleyin:

Son olarak, Postfix'e sanal alan adlarını, kullanıcıları ve takma adları yapılandırmasını söylemek için aşağıdaki parametreleri ekleyeceğiz:

Hata olmadığından emin olmak için bu değişiklikleri aşağıdaki dosya ile karşılaştırın:

https://www.dropbox.com/s/x9fpm9v1dr86gkw/etc-postfix-main.cf.txt

Tüm bunlar kontrol edildikten sonra, main.cf dosyasına eklemek üzere üç dosya oluşturacaksınız. Buradaki amaç, Postfix'e MySQL ile nasıl bağlantı kuracağına dair talimatlar vermektir. Bunu yapmak için önce mysql-virtual-mailbox-domains.cf dosyasını oluşturarak başlayacağız. Elbette kendi dosyanızda kişisel yapılandırmanıza göre değişiklikler yapacaksınız:

Ardından, Postfix'i yeniden başlatın:

Postfix'in alan adınızı bulabildiğinden emin olmalısınız. Bunu test etmek için bu komutu kullanın:

Komut başarılı olursa 1 değerini döndürecektir. Bu durumda, mysql-virtual-mailbox-maps.cf dosyasını oluşturarak devam edebilirsiniz:

Postfix'i bir kez daha yeniden başlatın:

Yine, Postfix'in ilk e-posta adresini bulabildiğinden emin olacağız. Bunu test etmek için aşağıdaki komutu kullanın:

Başarılı olursa, karşılığında 1 çıktısı alırsınız. Bu doğrultuda, son dosyayı oluşturmaya geçeceğiz:

Bu, Postfix ve MySQL arasındaki yapılandırmayı tamamlar. Uygulamak için Postfix'i yeniden başlatın:

Postfix'in takma adlarınızı gerçekten bulduğunu doğrulamak için şu komutu kullanın:

İdeal olarak, çıktı olarak takma ada yönlendirilen e-postayı almalısınız. Ayrıca /etc/postfix/master.cf dosyasını, eğer portuna587 e-posta istemcileriyle güvenli bir şekilde bağlanmak istiyorsanız şu şekilde değiştirebilirsiniz:

Bazı satırların yorumunu kaldırma ve parametreleri ekleme yöntemi aşağıdadır:

Bazen, portun açık olduğunu doğrulamak için Postfix'i yeniden başlatmanız gerekebilir:

Bu araç alan adı portlarını taramak için de kullanılabilir. Bunu, portlarının25 and 587 açık olduğunu doğrulamak için kullanabilirsiniz.

Adım 4: Dovecot'u Yapılandırma

Şimdi Dovecot'u yapılandırma zamanı. Bu bölüm için, değiştirmek istediğiniz 7 dosyayı kopyalamamız gerekecek. Bu, gerektiğinde geri dönebilmenizi sağlamak içindir. Bu komutları tek tek girin:

Dovecot'un yapılandırma dosyasını düzenlemeniz gerekir:

Şu seçeneğin yorumunun kaldırıldığından emin olun:

Ardından, !include_try /usr/share/dovecot/protocols.d/*.protocol satırının altındaki protokolleri etkinleştireceğiz. İsterseniz pop3:

Hata olmadığından emin olmak için bu dosyayla karşılaştırın:

https://www.dropbox.com/s/wmbe3bwy0vcficj/etc-dovecot-dovecot.conf.txt

Ardından, e-posta yapılandırma dosyasını düzenleyin:

Locate the mail_location satırını bulun. Yorumunu kaldırmanız ve şu parametreyi eklemeniz gerekir:

Bundan sonra, mail_privileged_group satırını bulun. Yine yorumunu kaldırın ve mail parametresini ekleyin:

Hata olasılığını ortadan kaldırmak için bu dosyayla karşılaştırın:

https://www.dropbox.com/s/hnfeieuy77m5b0a/etc.dovecot.conf.d-10-mail.conf.txt

  • İzinleri Doğrulama

İzinleri doğrulamak için şu komutu kullanın:

İzinlerinizin aşağıdaki gibi göründüğünden emin olun:

Her alan adı için bir klasör oluşturabilirsiniz. Bu klasörlerin tümü MySQL tablosuna kaydedilecektir:

Şu ID'yi kullanarak bir vmail kullanıcısı ve grubu oluşturun: 5000:

Ardından, şu dizinin sahibini değiştirmelisiniz: /var/mail klasörünü vmail kullanıcısı olarak değiştirin:

Şimdi şu dosyayı düzenleyin: /etc/dovecot/conf.d/10-auth.conf dosyası:

Düz metin kimlik doğrulamasının yorum satırını kaldırdıktan sonra aşağıdaki satırı ekleyin:

Şu parametreyi değiştirmek için bunu kullanın: auth_mechanisms parametresi:

Şimdi bu satırı yorum satırı yapın:

MySQL yetkilendirmesini etkinleştirmek için aşağıdaki satırın yorumunu kaldırmalısınız:

Hataları tespit etmek ve düzenlemek için aşağıdaki dosyayı kullanın:

https://www.dropbox.com/s/4h472nqrj700pqk/etc.dovecot.conf.d.10-auth.conf.txt

Bilgilerinizle bir /etc/dovecot/dovecot-sql.conf.ext dosyası oluşturmak, kimlik doğrulaması yapmanızı sağlayacaktır:

Dosyaya bu kodu girin:

Şu dosyayı değiştirmek için özel MySQL bilgilerimizi kullanacağız: /etc/dovecot/dovecot-sql.conf.ext dosyası:

Sürücü (driver) parametresinin yorumunu kaldırdıktan sonra MySQL'i şu şekilde parametre olarak ayarlayın:

Şu satırın yorumunu kaldırarak MySQL'e özel bilgilerinizi girebilirsiniz: connect satırı:

Şu satırın yorumunu kaldırmalı default_pass_scheme ve bunu şu şekilde değiştirmelisiniz: SHA-512:

Şu satırın yorumunu kaldırdıktan sonra aşağıdaki bilgileri ekleyin: password_query:

Hataları tespit etmek için karşılaştırmak üzere bu dosyayı kullanın:

https://www.dropbox.com/s/48a5r0mtgdz25cz/etc.dovecot.dovecot-sql.conf.ext.txt

Ardından, dovecot klasörünün sahibini ve grubunu vmail kullanıcısı olarak değiştirebilirsiniz:

Bir sonraki adım, şu dosyayı değiştirmektir: /etc/dovecot/conf.d/10-master.conf dosyası. Farklı parametreler değiştirileceği için burada ekstra dikkatli olmalısınız:

Şu parametreyi değiştirmek için aşağıdaki kodu kullanın: unix_listener parametresini şununla değiştirin: service_auth:

Ardından, şunu düzenlemelisiniz: service auth-worker şu şekilde:

Bu dosya ile karşılaştırarak hataları tespit edin:

https://www.dropbox.com/s/g0vnt233obh6v2h/etc.dovecot.conf.d.10-master.conf.txt

Bir sonraki adım, Dovecot'un SSL yapılandırma dosyasını düzenlemektir. Varsayılan yapılandırmayı kullanmayı planlıyorsanız, bu adımı atlayıp bir sonraki bölüme geçebilirsiniz:

Ardından, ssl parametresini şu şekilde required olarak değiştirin:

Ayrıca her ikisi için de yolu değiştireceğiz: ssl_cert ve ssl_key:

Dovecot'u yeniden başlatın:

Make sure to check that port 993 portunun açık olduğundan emin olun. Eğer pop3 etkinleştirdiyseniz, şu portu da kontrol edin: 995:

Buraya kadar olan adımları tamamladıysanız, tebrikler! E-posta sunucunuzu başarıyla yapılandırdınız. Tüm adımları doğru yaptığınızdan emin olmak için hesabınızı bir e-posta istemcisi yardımıyla şu şekilde test edebilirsiniz:

Güvenli IMAP için 993 portu, SMTP için ise 587/ 25 portu kullanılır.

Adım 5: SpamAssassin Yapılandırması

Sonunda SpamAssassin'i yapılandıracağımız kılavuzun son bölümüne geldik. SpamAssassin'i kurarak başlayacağız:

SpamAssassin için şu şekilde bir kullanıcı oluşturun:

SpamAssassin'i yapılandırabilmek için yapılandırma ayarlarını açmalı ve değiştirmelisiniz:

Buraya geldiğinize göre, SpamAssassin arka plan programını etkinleştirmek için ENABLED parametresini değiştirmelisiniz:

Home ve options parametrelerini bu kodla değiştirin:

Şu satırı kullanarak PID_File parametresini belirtebilirsiniz:

Ardından, SpamAssassin kurallarının otomatik olarak güncelleneceğini belirtmek için bu komutu kullanın:

Aşağıdaki belgeyle karşılaştırarak hataları kontrol edin:

https://www.dropbox.com/s/ndvpgc2jipdd4bk/etc.default.spamassassin.txt

Spam önleme kurallarını ayarlamak istiyorsanız, /etc/spamassassin/local.cf dosyasını tekrar açmalısınız:

SpamAssassin'in çalışma şekli, kullanıcının aldığı her e-postayı puanlamasıdır. E-postaların puanlarını değerlendirir ve spam kontrolünde 5.0'dan büyükse, e-posta spam olarak işaretlenir. Bu spam önleme kurallarını yapılandırmak için kullanabileceğiniz parametreler şunlardır:

Spam önleme kuralları belirlendikten sonra, Postfix'e her e-postanın SpamAssassin ile kontrol edilmesi gerektiğini bildirmeniz gerekir. Bu amaçla, /etc/postfix/master.cf dosyasını düzenlememiz gerekir:

Aşağıdaki satırı bulun ve spamassassin filtresini ekleyin:

Şimdi bu parametreleri ekleyebilirsiniz:

Son olarak, değişiklikleri uygulamak için SpamAssassin'i başlatın ve Postfix'i yeniden başlatın. Yeniden başlattığınızda, Postfix e-postalardaki spam'leri doğrulamaya başlayacaktır:

İşte bu kadar! Postfix ve Dovecot ile posta sunucunuzu başarıyla yapılandırdınız. Ayrıca MySQL kimlik doğrulamasını gerçekleştirdiniz ve SpamAssassin ile spam filtrelemeyi kurdunuz.

Sonuç

Bu eğitim, yukarıda belirtilen araçlarla posta sunucunuzun yapılandırmasını gerçekleştirmek için izlemeniz gereken adımları özetlemektedir. Posta sunucunuzu bağımsız olarak kurmanız için kapsamlı bir kılavuz olarak kullanılabilir. Eğer Google'ın SMTP sunucusu özelliğini kullanmakla ilgileniyorsanız, bu eğitimi takip edebilirsiniz.

Keyifli Çalışmalar!

author

Pranay Kapgate

Yazar · CloudSigma

Preslav Dobrev, CloudSigma'da Kreatif Tasarımcı olarak görev yapmakta olup geleneksel ve yenilikçi pazarlama kanallarını kullanarak tutarlı bir kurumsal kimlik oluşturmaya odaklanmaktadır. Sanatsal vizyonu stratejik pazarlamayla harmanlayarak etkili marka anlatıları oluşturma konusunda oldukça yeteneklidir.

Yorumlar

Henüz yorum yapılmamış. İlk siz olun.