Bu makalede bir
Linux dağıtımı olan
Ubuntu'ya e-posta
(*: e-mail)
sunucusu olan
Postfix yazılımı nasıl kurulur ve çalışır duruma getirilir açıklamaya çalışacağım.
Açıklamalar DigitalOcean üzerinde oluşturacağınız droplet adı verilen ve Ubuntu 14.04 sürümü yüklenmiş olan sanal sunucular içindir. Firmadan deneme amaçlı bir hosting oluşturabilir memnun kalınca ayda $5 ödeyerek kullanmaya devam edebilirsiniz. Kullanmadığınız saat ve günlerde sunucuyu kapatırsanız aylık çok daha az ödersiniz. Öğrenciler ve denemek, kendini geliştirmek isteyenler için faydalı.
Giriş
Postfix çok popüler bir açık kaynaklı e-posta aktarma ajanı
(*: mail transfer agent)
(*: mta)
uygulamasıdır. Sadece
Linux işletim sisteminde çalışır. Bütün internetteki e-posta trafiğinin %25'i postfix üzerinden sağlanır.
Bu ön bilgiyi de verdikten sonra Ubuntu 14.04 dağıtımına nasıl kolayca Postfix kurulumu yapacağınızı anlatmaya başlayalım.
Ön Gereksinimler
Bu klavuzdaki adımları başarıyla uygulayabilmek ve Postfix'i çalıştırabilmek için takip etmeniz gereken bir işlem sırası var. Bu yüzden eğer şimdiye kadar yapmadıysanız Fully Qualified Domain Name
(*: FQDA)
adı verilen olayı Ubuntu 14.04 sisteminize uygulamanız gerekiyor. Bu işlemin DigitalOcean üzerinde nasıl yapıldığına
şuradan
(https://www.digitalocean.com/community/articles/how-to-set-up-a-host-name-with-digitalocean)
ulaşabilirsiniz.
Yazılım Yükleme ve Kurulum
Postfix'in Ubuntu 14.04 üzerine kurulum süreci oldukça basittir çünkü yazılım, Ubuntu'nun varsayılan paket deposunda
(*: package repository)
mevcut olduğu için direkt oradan indirebiliyoruz.
Bu arada ilk defa
apt ile işlem yapacağız. İşlemlerin temiz ve sorunsuz yürüyebilmesi için öncelikle yerel paketleri güncellemek iyi olacaktır. Ardından ikinci satırdaki komut ile Postfix'i makinenize indirmelisiniz.
sudo apt-get update
sudo apt-get install postfix
Kurulum sırasında hangi tür mail konfigürasyonu ile devam etmek istediğinizi soran bir ekran göreceksiniz. Biz bu aşamada "
Internet Site" seçeneğini seçmeliyiz çünkü amacımızı en iyi tanımlayan seçenek bu.
Sonraki aşamada sunucunun Fully Qualified Domain Name
(*: FQDN)
bilgisi istenecek. Aslında bu sizin tam alan adınızla aynı şey. (örn: siteadi.com) Teknik olarak FQDN tanımlaması nokta ile bitmelidir ancak Postfix buna ihtiyaç duymuyor. Bu nedenle direkt şu şekilde alan adınızı yazmanız yeterli;
siteadi.com
Artık yazılım verdiğiniz talimatlara uygun biçimde kurulumu tamamlayıp bitirecektir. Kurulum işini halletmiş olduk. Ancak hemen sevinmeyin çünkü bu aşamada sorulmayan ancak gerekli olan bazı başka ayarlamaları kendimiz halletmek zorundayız.
Postfix Yapılandırma
Postfix'in ana konfigürasyon dosyasında bazı basit ayarları elimizle değiştirmek zorundayız.
Bu dosyayı yönetici yetkisiyle bir metin editöründe açmanız gerekiyor. Şu komutu yazmalısınız;
sudo nano /etc/postfix/main.cf
İlk iş,
myhostname isimli parametreyi bulmak. Kurulum sırasında bize sorulan ve alan adımızı yazdığımız FQDN bilgisini hatırladınız mı?
mydestination parametresine yazılmış olması gerekiyor. Ancak
myhostname localhost olarak kalmış durumda. Bu parametreye de FQDN bilgimizi yazmamız gerekiyor. Yani şöyle görünmeli;
myhostname = example.com
Postaları başka alan adlarına yönlendirilecek şekilde yapılandırmak istiyorsanız veya sistem hesaplarıyla 1'e 1 eşleşme olmasını istemiyorsanız
alias_maps parametresini kaldırmalıyız ve onun yerine
virtual_alias_maps parametresini yazmalısınız. Şu değerin yazdığından emin olun;
virtual_alias_maps = hash:/etc/postfix/virtual
Demin de belirttiğim gibi mydestination parametresinin değeri biz kurulum yaparken bizden alınan FQDN değeri ile güncellenmiş olmalı.
Bu parametre FQDN bilgisi tutuyor ve bütün localhost bu ortak parametreyi kullanıyor, Postfix'in bütün özellikleri bu parametreye bakar.
Bunun kadar önemli bir başka parametre olan
mynetworks'den bahsetmek istiyorum. Bu parametre kurmuş olduğunuz posta sunucusunu kullanabilecek bilgisayarları tanımlar. Değer olarak lokal makine adresini (yani 127.0.0.0/8 ve varsa başka yerel adresleri) yazmalısınız. Bu değişkende başka makinelere izin verdiğinizde (mesela paylaşımlı hosting kurulumu yapıyorsanız) aşırı spam vakalarına sebep olacak bir güvenlik açığı oluşturmuş olursunuz. Her hostun bu postfix kurulumu üzerinden posta göndermesi sonucu ana ip adresiniz büyük e-posta hizmetlerinin kara listesine düşer ve bütün alt hosting müşterilerinin e-postaları spam klasörüne düşer veya hedefe hiç ulaşmaz.
Paylaşımsız, sorunsuz bir işleyiş için yazmanız gereken değeri aşağıda verdim. Bu değer büyük ihtimalle otomatik olarak zaten yazılmıştır ama emin olmak için siz yine de kontrol edin, aşağıdaki gibi değilse öyle olmasını sağlayın.
mynetworks = 127.0.0.0/8 <bkz user="" entry-id="" space="" meaning="">::ffff:127.0.0.0</bkz>/104 <bkz user="" entry-id="" space="" meaning="">::1</bkz>/128
İlave Email Adresleri Tanımlama
İsteğe bağlı e-posta hesaplarını, takma ad
(*: alias)
tanımlayarak sağlarız. Bu takma adlar, gelen postaları işletim sisteminde tanımlı olan diğer kullanıcılara teslim etmeye yarar.
Bu işlevi kullanmak istiyorsanız, yukarıda gösterdiğim gibi
virtual_alias_maps yönergesini yapılandırdığınızdan emin olun. Adres eşlemelerini yapılandırmak için postfix'in oluşturmadığı bir dosya oluşturmamız gerekiyor. Dosyayı, şunu yazarak oluşturun:
sudo nano /etc/postfix/virtual
Bu dosyaya önce oluşturmak istediğiniz e-posta adresini tam olarak yazın. Bir boşluk bırakıp yanına bu adrese posta geldiğinde teslim edilmesini istediğiniz linux kullanıcısının adını yazın. Her satıra bir tane olacak şekilde hesapları oluşturabilirsiniz.
blah@example.com username1
Virgül kullanarak bir adrese gelen e-postaları birden fazla yerel kullanıcıya yönelendirebilirsiniz.
contact@example.com demouser,root
Düzenleme işlemini bitirdiğinizde dosyayı kaydetmeyi unutmayın. Dosya mevcut olmasa da ilgili dizine oluşturulup kaydedilecektir.
Şimdi şu kodu kullanarak haritalama işlemi uygulamamız gerekiyor.
sudo postmap /etc/postfix/virtual
Bu değişikliklerin geçerli olması için ilgili servisi yeniden başlatmalıyız:
sudo service postfix restart
Test Edelim
Şimdi sunucuyu test etme zamanı. Normalde kullandığınız gmail gibi bir e-posta adresinizden az önce oluşturduğunuz kullanıcı hesaplarınızdan birine veya kurduğunuz takma adlardan birine posta göndererek posta sunucusunun e-postaları doğru bir şekilde alıp almadığını test edebilirsiniz.
Yani e-posta göndermeniz gereken adres şöyle olmalı;
demouser@siteadi.com
Sunucuya teslim edilen e-posta
/var/mail dizininde ilgili yerel kullanıcı adıyla aynı adı taşıyan bir dosyaya kaydedilir. Yukarıdaki örnekte verdiğimiz yerel kullanıcı almış olduğu e-postaları şu komutla açıp okuyabilecek;
nano /var/mail/demouser
Bu dosya o yerel kullanıcının tüm e-posta mesajlarını saklar. Protokol başlıkları gibi bütün teknik ifadeler de gelen posta ile bu dosyada tutulur. Elbette bu pek pratik bir posta okuma yöntemi değil. Daha dost bir arayüz istiyorsanız sırf gelen postaları sizin için düzenleyen yardımcı programlar var. Bunlardan birini kurup çalıştırmanız gerekiyor.
sudo apt-get install mailutils
Bu komut size e-postaları kontrol etmek ve okumak için biraz daha pratik kullanım sağlayacak bir yazılım. Gelen e-postaları görmek için konsolda şu komutu çalıştırın;
mail
Sonuç
Artık basit de olsa sunucunuz üzerinde bir e-posta kurulumuna sahip oldunuz.
Ancak sunucu güvenliğini sağlamak için Postfix'in uygun olmayan konfigürasyonu nedeniyle güvenlik açığına neden olmadığından emin olmak önemli. Saldırganlar genellikle e-posta sunucularını hedef aldıklarından yoğun spam bombardımanı altında kalırlar. Bu tür sorunlarla boğuşmamak için güvenlik duvarı gibi çözümleri kullanmak önemlidir.
Şurada
(https://digitalocean.com/community/articles/an-introduction-to-securing-your-linux-vps)
sunucu güvenliğini arttırmak için bazı yöntemler bulabilirsiniz.
#teknoloji
#yazılım
#nasıl yapılır