Bir e-posta sunucusu nasıl kurarım?

59

VPS'im Ubuntu kullanıyor ve alan adımın e-postalarını almak istiyorum.

Bunu yapmak için bir posta sunucusunu nasıl kolayca kurabilirim?

    
sordu Stefano Palazzo 29.07.2011 08:13

4 cevap

48

Bu, üretim makinelerimizde postayı nasıl kurduğum. Bunlar bizim ihtiyacımız olan kriterler:

  • E-posta Hesapları
  • E-posta Takma Adları (İletenler)
  • IMAP, POP3 ve SMTP

"Kolay" (tl; dr)

Öncelikle en kolay çözümün neye benzeyeceğini ele almak istiyorum.

sudo tasksel install mail-server

Bunu denediğimizde bununla ilgili birkaç sorun oluştu: İlk önce Dovecot'u yüklüyor, ki bu çoğu için iyi, ama Courier'i bizim ihtiyaçlarımız için daha iyi olarak kabul ettik. İkincisi, harika olan Postfix'i kullanıyor ancak daha güçlü bir MTA / SMTP sunucusu olduğu için Exim'e de ihtiyacımız var. Üçüncü olarak, MySQL'i kurar - kullandığım konfigürasyonda, daha az kırılma noktası olduğu için konfigürasyon için düz dosyaları tercih ederiz. MySQL'in bilinmeyen bir nedenle çökmesi durumunda ne olacağını düşünün. Aksi takdirde paketlerin geri kalanı oldukça basittir ve küçük bir posta servisi için bakımı kolaydır (toplamda 1-2 e-posta etki alanını düşünün).

Yapılandırmamız

Dizin Yapısı

Normal yapılandırmaların yolunun biraz dışında kalıyoruz, ancak daha kolay yönetim sağlıyor.

Tüm postalarımız /var/mail/virtual/<domain>/<user>/mail dizininde depolandı. Gelecek örnekler için [email protected] , [email protected] , [email protected] değerini bir e-posta adresini, [email protected] 'ye gitmeyi ileten bir iletici ve bir sırasıyla hatalı adres. Yukarıdaki örnekte /var/mail/virtual/example.com/email/mail olacaktır.

Ayrıca, sunucudaki tüm alan adlarının bir listesini /etc/valiases 'de, ancak bununla ilgili daha sonra da sürdürüyorum.

Postfix

Bu, kurulumun kolay bir parçası. Sadece postfix paketini yükleyin.

Exim

Exim apt-get install exim4 exim4-base exim4-config exim4-daemon-heavy ile yükle Yüklendikten sonra aşağıdaki değerleri değiştirmek veya eklemek için exim varsayılan yapılandırmasını düzenlemeniz gerekir:

domainlist local_domains = @:localhost:dsearch;/etc/valiases:dsearch;/var/mail/virtual
daemon_smtp_ports = smtp : 587 : 465
MAIN_TLS_ENABLE = yes

(Bu satırlar dosyanın farklı bölümlerinde görünecek, her birini uygun şekilde değiştirecek)

Bu işlem tamamlandığında, exim yapılandırmasını update-exim4.conf ile yeniden oluşturun. Exim için gerekli değişiklikleri tamamladı

Kurye

Kuryeyi courier-base ile yükle, bu courier-authdaemon , courier-authlib* , courier-imap* , courier-pop* , courieruserinfo , courier-ssl

dosyasını yüklemelidir.

Standartların dışında dürüst bir yapılandırma yok. Sadece bir kullanıcı veritabanı oluşturmanız gerekecek.

Hesaplar

Exim ve Courier, bir girişin veya gelen bir e-postanın geçerli olup olmadığını görmek için birkaç yeri kontrol eder. Exim, alanın yerel bir ana makine adı olarak mı listelendiğini mi, yoksa alanın /var/mail/virtual mi yoksa alan adı /etc/valiases ise mi kontrol eder.

E-posta Hesapları Oluşturma

En sonunda, bu işlemi kolaylaştırmak için birkaç araç oluşturdum - ancak yeni bir kullanıcı ekledikten sonra:

mkdir -p /var/mail/virtual/example.com/email
chown -R mail.mail /var/mail/virtual/example.com/
maildirmake /var/mail/virtual/example.com/email/mail
chown -R mail.mail /var/mail/virtual/example.com/

Sonra adresi kurye userdb'ye ekleyin - böylece giriş yapabilirler

userdb [email protected] set uid=8 gid=8 home=/var/mail/virtual/example.com/email mail=/var/mail/virtual/example.com/email/mail

Uygun olan yerlerde değerleri değiştirdiğinizden emin olun. Ayrıca - posta kullanıcısı için sayısal kullanıcı / grup kimlikleri olmak için uid ve gid gerekir .

userdbpw -md5 | userdb [email protected] set systempw

Bu size şifre sormanızı sağlar, hesap için kullanmak istediğiniz hesabı girin.

makeuserdb

Son olarak, userdb hash / shadow dosyalarını oluşturun. Kurtarıcıyı yeniden başlatın ve değişikliklerin işe yarayıp yaramadığını test edin:

authtest [email protected]

ile benzer bir şey üretmelidir
Authentication succeeded.

     Authenticated: [email protected]  (uid 8, gid 8)
    Home Directory: /var/mail/virtual/example.com/email
           Maildir: /var/mail/virtual/example.com/email/mail
             Quota: (none)
Encrypted Password: $LOLCATS$THISWILLBEAHASH.
Cleartext Password: (none)
           Options: (none)

"Kimlik Doğrulama Başarısız Oldu: İşlemi izinli değil" ifadesini görürseniz / etc / courier / authdaemonrc dosyasını düzenleyin ve authmodulelist satırına authuserdb ekleyin.

Tüm testler onaylandıktan sonra, dahil olan çeşitli hizmetleri yeniden başlatın ( courier-authdaemon , exim4 ), 143, 25, 586, 495, 110 numaralı bağlantı noktalarını açın ve hesaplarınızı favori posta istemcinizde ayarlayın.

E-posta takma adları oluşturma

Her alan adı için, en az aşağıdaki satırda /etc/valiases dosyasında bir dosya oluşturmalısınız (mevcut değilse oluşturun):

*: :fail: No user at this address.

Bu ne diyor: Gelen posta dosyada sahip olduğum herhangi bir e-posta hesabıyla eşleşmiyorsa, posta başarısız olmalı ve bir mesajla geri dönmelidir: "Bu adreste kullanıcı yok". Bu nedenle, gönderilen tüm postalar: [email protected] bir hata olarak geri döndü.

Ancak, başka bir yerde tutmak istediğimiz birkaç e-posta adresimiz var - örneğin [email protected] - bunu yapmak için /etc/valiases/example.com oluşturmamız gerekiyor ve dosyanın içeriği aşağıdaki gibi olmalıdır:

fwd: [email protected]
*: :fail: No user at this address.

Bu şekilde, [email protected] sunucudaki herhangi bir e-posta hesabıyla eşleşmiyor olsa da, /etc/valiases dosyasında eşleşir ve posta [email protected] adresine yönlendirilir - Ancak, foo @ example .com, "Bu adreste hiç kullanıcı yok" iletisiyle başarısız olacaktır.

    
verilen cevap Marco Ceppi 29.07.2011 20:41
14

En kolay yol, sudo tasksel install mail-server dosyasını çalıştırmaktır. Bu size varsayılanlar ile bir e-posta sunucusu verecektir. Tek yapman gereken birkaç soruya cevap vermek. Açıkçası, eğer gerekli ise, daha sonra manuel yapılandırmalar yapabilirsiniz, ancak çoğu durumda olmayacak. Sadece ekrandaki talimatları izleyin ve iyi olmalısınız.

Ancak e-posta hizmetleri yönetimini okumak kesinlikle tavsiye edilir.

Resmi Referanslar:

verilen cevap Jo-Erlend Schinstad 29.07.2011 18:35
5

"Harika bir yanıtım yok" ancak bu bağlantıları yararlı bulabilirsiniz İşte Mail ve < bir href="https://help.ubuntu.com/community/Postfix"> İşte

    
verilen cevap fragos 29.07.2011 09:22
4

Bunu kendim yaptım, gerçekten postfix'e ihtiyacın var ve benim durumumda başka bir makinede iyi bir gui istemcisi (herhangi bir isim belirtmeden) kullanabilmem için bir imap sunucu istedim. Bu belgeleri kullandım:

Postfix

Dovecot (imap ve pop3)

Aslında oldukça basit, birkaç dakika içinde kalktı ve e-postalar alıyorum. Bu, her şeyin ayarlandığını kontrol etmek için de yararlıdır. pingability .

Oh, ve elbette dns kayıtlarınızı aşağıdaki gibi doğru bir şekilde kurmalısınız (benim için çalışan ayarlara göre):

name   type   content
  @      A     ???.???.??.??    
mail     A     ???.???.??.??

ve

         MX Records
Name                 Priority
mail.mydomain.com.      1
mail2.mydomain.com.     2

Posta sunucularının sonundaki tüm duraklara dikkat edin ve ip adresinizi ve alan adınızı uygun olan yere ekleyin.

    
verilen cevap NimChimpsky 29.07.2011 09:27

Etiketlerdeki diğer soruları oku