Ubuntu'da Postfix Nasıl Kurulur ve Yapılandırılır 18.04

Bu öğreticinin önceki bir versiyonu Justin Ellingwood tarafından yazılmıştır.

Giriş

Postfix, Linux sistemindeki e-postayı yönlendirmek ve iletmek için kullanılabilecek popüler bir açık kaynak Posta Aktarım Aracısı (MTA). Internet'teki genel posta sunucularının yaklaşık% 25'inin Postfix'i çalıştırdığı tahmin edilmektedir.

Bu kılavuzda, Ubuntu 18.04 sunucusundaki Postfix ile nasıl hızlı bir şekilde çalışıp çalışacağınızı öğreteceğiz.

Ön şartlar

Bu kılavuzu takip etmek için, sudo ayrıcalıklarına sahip olmayan root kullanıcısına erişiminiz olmalıdır. Gerekli kullanıcıyı oluşturmak için Ubuntu 18.04 ilk sunucu kurulum kılavuzumuzu takip edebilirsiniz.

Postfix'i doğru şekilde yapılandırmak için Ubuntu 18.04 sunucunuza işaret edilen Tam Nitelikli Alan Adına ihtiyacınız olacaktır. Bu kılavuzu izleyerek DigitalOcean ile alan adınızı ayarlama konusunda yardım alabilirsiniz. Posta kabul etmeyi planlıyorsanız, posta sunucunuza da işaret eden bir MX kaydınızın olduğundan emin olmanız gerekir.

Bu öğreticinin amaçları için, mail.example.com FQDN'sine sahip bir ana bilgisayarı yapılandırdığınızı kabul edeceğiz.

1. Adım – Postfix'i yükleyin

Postfix, Ubuntu'nun varsayılan depolarında bulunur, bu nedenle kurulum basittir.

Başlamak için yerel apt paket önbelleğinizi güncelleyin ve ardından yazılımı yükleyin. Bazı ek soruları yanıtlamak için DEBIAN_PRIORITY=low çevre değişkeninde kurulum komutumuza DEBIAN_PRIORITY=low :

  • sudo apt güncellemesi
  • sudo DEBIAN_PRIORITY = düşük apt install postfix

Bilgilerinizi doğru bir şekilde çevreniz için doldurmak için aşağıdaki bilgileri kullanın:

  • Genel posta yapılandırması türü? : Bunun için, İnternet Sitesi'ni seçeceğiz çünkü bu bizim altyapı ihtiyaçlarımızla eşleşiyor.
  • Sistem posta adı : Bu, yalnızca adresin hesap kısmı verildiğinde geçerli bir e-posta adresi oluşturmak için kullanılan temel alan adıdır . Örneğin, sunucumuzun ana bilgisayar adı mail.example.com , ancak sistem kullanıcısı adını example.com ayarlamak isteriz, böylece kullanıcı adı user1 verilirse, Postfix user1@example.com adresini user1@example.com .
  • Kök ve posta yöneticisi posta alıcısı : Bu, root@ ve postmaster@ adresine gönderilen postayı iletilecek olan Linux hesabıdır. Bunun için birincil hesabınızı kullanın. Bizim durumumuzda, sammy .
  • Postaları kabul etmek için diğer hedefler : Bu, Postfix örneğinin kabul edeceği posta hedeflerini tanımlar. Bu sunucunun teslim alınmasından sorumlu olduğu başka alan adları eklemeniz gerekiyorsa, buradakileri ekleyin, aksi halde varsayılanın iyi çalışması gerekir.
  • Posta sırasındaki eşzamanlı güncellemeleri zorla? : Muhtemelen bir günlük dosya sistemini kullandığınız için, burada Hayır kabul edin.
  • Yerel ağlar : Bu, posta sunucunuzun iletileri iletmek üzere yapılandırıldığı ağların bir listesidir. Varsayılan çoğu senaryo için çalışmalıdır. Değiştirmeyi seçerseniz, ağ aralığına göre çok kısıtlayıcı olduğundan emin olun.
  • Posta kutusu boyutu sınırı : Bu mesajların boyutunu sınırlamak için kullanılabilir. "0" a ayarlandığında, herhangi bir boyut kısıtlaması devre dışı kalır.
  • Yerel adres uzantısı karakteri : Adresin normal bölümünü bir uzantıdan ayırmak için kullanılabilecek karakterdir (dinamik takma ad oluşturmak için kullanılır).
  • Kullanılacak İnternet protokolleri : Postfix'in desteklediği IP sürümünü kısıtlayıp sınırlamamayı seçin. Amaçlarımız için "hepsini" seçeceğiz.

Açık olmak gerekirse, bunlar bu kılavuz için kullanacağımız ayarlardır:

  • Genel posta yapılandırması türü? : İnternet sitesi
  • Sistem posta adı : example.com (mail.example.com değil)
  • Kök ve posta yöneticisi posta alıcısı : sammy
  • Diğer postalar için posta kabul etmek : $ myhostname, example.com, mail.example.com, localhost.example.com, localhost
  • Posta sırasındaki eşzamanlı güncellemeleri zorla? : Yok hayır
  • Yerel ağlar : 127.0.0.0/8 [::ffff:127.0.0.0]/104 [:: 1] / 128
  • Posta kutusu boyutu sınırı : 0
  • Yerel adres uzantısı karakteri : +
  • Kullanılacak İnternet protokolleri : hepsi

Bu ayarları yeniden ayarlamak için herhangi bir yere dönmeniz gerekiyorsa, bunu yazarak şunları yapabilirsiniz:

  • sudo dpkg-reconfigure postfix

Talepler önceki yanıtlarınızla önceden doldurulur.

İşiniz bittiğinde, şimdi sistemimizi nasıl istediğimizi ayarlamak için biraz daha fazla yapılandırma yapabiliriz.

Adım 2 – Postfix Yapılandırmasını Tweak

Ardından, paketin bizi istemediği bazı ayarları yapabiliriz.

Başlamak için posta kutusunu ayarlayabiliriz. İletileri, kullanıcı eylemine bağlı olarak dizinler arasında taşınan tek tek dosyalara ayıran Maildir biçimini kullanacağız. Diğer seçenek ise, tüm mesajları tek bir dosya içinde saklayan mbox formatıdır (burada ele almayız ).

home_mailbox değişkenini Maildir/ kullanıcı dizininde bu isimde bir dizin yapısı oluşturacak şekilde ayarlayacağız. postconf komutu, yapılandırma ayarlarını sorgulamak veya ayarlamak için kullanılabilir. Yazarak home_mailbox yapılandırın:

  • sudo postconf -e 'home_mailbox = Maildir /'

Ardından, virtual_alias_maps tablosunun konumunu ayarlayabiliriz. Bu tablo, Linux sistem hesaplarına isteğe bağlı e-posta hesaplarını eşler. Bu tabloyu /etc/postfix/virtual oluşturacağız. Yine, postconf komutunu kullanabiliriz:

  • sudo postconf -e 'virtual_alias_maps = hash: / etc / postfix / virtual'

3. Adım – Mail Adreslerini Linux Hesaplarına Aktarın

Ardından, sanal haritalar dosyasını kurabiliriz. Dosyayı metin düzenleyicinizde açın:

  • sudo nano / etc / postfix / sanal

Sanal takma harita tablosu çok basit bir biçim kullanır. Sol tarafta, e-postayı kabul etmek istediğiniz adresleri listeleyebilirsiniz. Daha sonra, boşluk ile ayrılmış olarak, bu postayı iletilmesini istediğiniz Linux kullanıcısına girin.

Örneğin, e-postayı contact@example.com ve admin@example.com kabul etmek ve bu e-postaların sammy Linux kullanıcısına gönderilmesini istiyorsanız, dosyanızı şu şekilde ayarlayabilirsiniz:

/etc/postfix/virtualcontact@example.com sammy
admin@example.com sammy

Tüm adresleri uygun sunucu hesaplarına eşledikten sonra, dosyayı kaydedip kapatın.

Eşleştirmeyi yazarak uygulayabiliriz:

  • sudo postmap / etc / postfix / sanal

Tüm değişikliklerin uygulandığından emin olmak için Postfix işlemini yeniden başlatın:

  • sudo systemctl yeniden başlatma düzeltmesi

Adım 4 – Güvenlik Duvarı Ayarlayın

UFW güvenlik duvarını, ilk sunucu kurulum kılavuzunda yapılandırıldığı şekilde çalıştırıyorsanız, Postfix için bir istisnaya izin vermeliyiz.

Yazarak bağlantıya izin verebilirsiniz:

  • sudo ufw Postfix'e izin ver

Postfix sunucu bileşeni yüklü ve hazır. Ardından, Postfix'in işleyeceği postayı işleyebilecek bir istemci kuracağız.

Adım 5 – Posta Konumunu Eşleştirmek için Ortamı Kurma

Bir müşteriyi kurmadan önce, MAIL çevre değişkenimizin doğru şekilde ayarlandığından emin olmalıyız. Müşteri, bu değişkeni, kullanıcının e-postasını nereye arayacağını bulmak için inceleyecektir.

Değişkenin hesabınıza nasıl eriştiğinizden bağımsız olarak ayarlanabilmesi için ( ssh , su , su - , sudo , vb.). Değişkeni birkaç farklı konumda ayarlamamız gerekir. Her kullanıcının bu yapılandırılmış olduğundan emin olmak için /etc/bash.bashrc ve /etc/bash.bashrc bir dosyayı /etc/profile.d .

Değişkeni bu dosyalara eklemek için şunu yazın:

  • echo 'export MAIL = ~ / Maildir' | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh

Değişkeni mevcut oturumunuza okumak için /etc/profile.d/mail.sh dosyasına kaynak /etc/profile.d/mail.sh :

  • kaynak /etc/profile.d/mail.sh

6. Adım – Posta İstemcisini Kurma ve Yapılandırma

Teslim edilen posta ile etkileşimde bulunmak için s-nail paketini kuracağız. Bu özellik zengin özellikli BSD xmail istemcisinin bir çeşidi olup, Maildir formatını doğru bir şekilde ele alabilir ve çoğunlukla geriye doğru uyumludur. mail kutusunun GNU sürümünde, kaynak biçime bakılmaksızın her zaman okunan postaları mbox biçimine kaydetme gibi bazı sinir bozucu sınırlamalar vardır.

s-nail paketini kurmak için şunu yazın:

  • sudo apt install s-nail

Birkaç ayar yapmalıyız. /etc/s-nail.rc dosyasını açın:

  • sudo nano /etc/s-nail.rc

Dosyanın altına doğru aşağıdaki seçenekleri ekleyin:

/etc/s-nail.rc. . .
set emptystart
set folder=Maildir
set record=+sent

Bu, istemcinin boş bir gelen kutusuyla bile açılmasına olanak tanır. Ayrıca, Maildir dizinini dahili folder değişkenine ayarlayacak ve daha sonra gönderilen postayı depolamak için bunun içinde sent mbox dosyası oluşturmak için kullanacaktır.

İşiniz bittiğinde dosyayı kaydedin ve kapatın.

Adım 7 – Maildir'i başlatın ve istemciyi test edin

Şimdi, müşteriyi test edebiliriz.

Dizin Yapısını Başlatma

Maildir yapısını ana dizinimizde oluşturmanın en kolay yolu kendimize bir e-posta göndermektir. Bunu s-nail komutuyla yapabiliriz. sent dosya yalnızca Maildir oluşturulduktan sonra kullanılabileceğinden, ilk e-postamız için bunu yazmayı devre dışı bırakmalıyız. Bunu -Snorecord seçeneğini geçerek yapabiliriz.

E-postayı s-nail komutuna bir dize pipetleyerek gönderin. Linux kullanıcısını alıcı olarak işaretlemek için komutu ayarlayın:

  • echo 'init' | s-tırnak -s 'init' -Snorecord sammy

Aşağıdaki yanıtı alabilirsiniz:

OutputCan't canonicalize "/home/sammy/Maildir"

Bu normaldir ve sadece bu ilk mesajı gönderirken görünebilir. Dizinin ~/Maildir dizinimizi arayarak oluşturulduğundan emin olmak için kontrol edebiliriz:

  • ls -R ~ / Maildir

Dizin yapısının oluşturulduğunu ve yeni bir mesaj dosyasının ~/Maildir/new dizininde olduğunu görmelisiniz:

Output/home/sammy/Maildir/:
cur new tmp

/home/sammy/Maildir/cur:

/home/sammy/Maildir/new:
1463177269.Vfd01I40e4dM691221.mail.example.com

/home/sammy/Maildir/tmp:

Postamızın teslim edildiği anlaşılıyor.

Müşteriyle Posta Yönetimi

Postanızı kontrol etmek için müşteriyi kullanın:

  • salyangoz

Yeni mesajınızı beklemelisiniz:

Outputs-nail version v14.8.6. Type ? for help.
"/home/sammy/Maildir": 1 message 1 new
>N 1 sammy@example.com Wed Dec 31 19:00 14/369 init

Sadece ENTER basarak mesajınızı göstermelisiniz:

Output[-- Message 1 -- 14 lines, 369 bytes --]:
From sammy@example.com Wed Dec 31 19:00:00 1969
Date: Fri, 13 May 2016 18:07:49 -0400
To: sammy@example.com
Subject: init
Message-Id: <20160513220749.A278F228D9@mail.example.com>
From: sammy@example.com

init

Mesaj listenize h yazıp ENTER basarak geri dönebilirsiniz:

  • h

Outputs-nail version v14.8.6. Type ? for help.
"/home/sammy/Maildir": 1 message 1 new
>R 1 sammy@example.com Wed Dec 31 19:00 14/369 init

Bu ileti çok kullanışlı olmadığından, d ile silebilir ve sonra ENTER :

  • d

q yazıp sonra ENTER basarak terminale geri dönün:

  • q

Müşteri ile Posta Gönderme

Bir metin düzenleyicisine bir mesaj yazarak posta göndermeyi test edebilirsiniz:

  • nano ~ / test_message

İçeride, e-posta göndermek istediğiniz bazı metni girin:

~/test_messageHello,

This is a test. Please confirm receipt!

cat komutunu kullanarak mesajı s-nail işlemine s-nail . Bu, iletiyi varsayılan olarak Linux kullanıcınız olarak gönderir. Bu değeri başka bir şeye değiştirmek isterseniz, "Gönderen" alanını -r bayrağıyla ayarlayabilirsiniz:

  • kedi ~ / test_message | s-nail -s 'Test e-postası konu satırı' -r from_field_account user@email.com

Yukarıdaki seçenekler:

  • -s : E-postanın konu satırı
  • -r : E-postanın "Kimden:" alanına isteğe bağlı bir değişiklik. Varsayılan olarak, oturum açtığınız Linux kullanıcısı bu alanı doldurmak için kullanılacaktır. -r seçeneği bunu geçersiz -r izin verir.
  • user@email.com : E-postayı gönderecek hesap. Eriştiğiniz geçerli bir hesap olarak değiştirin.

Gönderilen mesajlarınızı s-nail istemcinizde görebilirsiniz. Yazarak etkileşimli istemciyi tekrar başlatın:

  • salyangoz

Daha sonra gönderilen iletilerinizi yazarak görüntüleyin:

  • dosya + gönderildi

Gelen posta için kullandığınız komutları kullanarak gönderilen postayı yönetebilirsiniz.

Sonuç

Artık Ubuntu 18.04 sunucunuzda Postfix yapılandırılmış olmalıdır. E-posta sunucularını yönetmek yöneticileri başlatmak için zor bir görev olabilir, ancak bu yapılandırmada, başlamanıza yardımcı olacak temel MTA e-posta işlevlerine sahip olmanız gerekir.

Bir önceki yazımız olan Ubuntu 18.04 LAMP ile WordPress Nasıl Kurulur başlıklı makalemizi de okumanızı öneririz.

About This Author

Comments are closed

%d blogcu bunu beğendi: