Posta komutu bir posta sunucusu gerektiriyor mu?


16

Linux mailkomutunu kullanabilmek için bir posta sunucusu kurmanız gerekir mi?



@slm bu soru ile gerçekten aynı değil, bir posta çalıştırmak için bir SMTP sunucusuna ihtiyaç olduğunu ima ediyor, ama kesinlikle gerekli olup olmadığını soruyorum
puk

1
Evet, olası bir kopya, size Q'nun biraz fazla özel olduğunu b / c olarak cevapladım. Hala bir dup gibi hissediyor ama ben yine de size cevap 8-)
slm

Yanıtlar:


14

Hayır, posta göndermek için bir posta sunucusuna ihtiyacınız yoktur. Sendmail'e en aşinayım ve e-postayı hizmet olarak yerine getiren 3 işlevsellik sınıfı vardır. MDA (Posta Teslim Aracıları) 1 ve MTA (Posta Aktarım Aracıları) 2'dir ve 3, MUA'dır (Posta Kullanıcı Aracıları).

Terminoloji kafa karıştırıcı ama MTA'nın sürekli çalışması gerekmiyor. MTA, MUA ( mail) her "posta" göndermek istediğinde çağrılır .

Çalıştırdığınızda mailve posta göndermek için bir adres belirlediğinizde sam@example.com,. Posta istemcisi MTA ( /usr/bin/sendmail) ' yı çağıracak ve daha sonra o ana bilgisayar / etki alanı (example.com) için DNS'yi sorgulayacak ve MX kaydı için hangi değerin belirtildiğini öğrenecektir. MX, Posta Değiştirici'nin kısaltmasıdır.

Misal

Bunu diggörmek için komutu kullanabilirsiniz :

$ dig gnu.org mx

; <<>> DiG 9.7.4-P1-RedHat-9.7.4-2.P1.fc14 <<>> gnu.org mx
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21053
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 2

;; QUESTION SECTION:
;gnu.org.           IN  MX

;; ANSWER SECTION:
gnu.org.        299 IN  MX  10 eggs.gnu.org.

;; ADDITIONAL SECTION:
eggs.gnu.org.       299 IN  A   208.118.235.92
eggs.gnu.org.       299 IN  AAAA    2001:4830:134:3::10

;; Query time: 218 msec
;; SERVER: 192.168.1.8#53(192.168.1.8)
;; WHEN: Thu Oct  3 17:27:22 2013
;; MSG SIZE  rcvd: 90

Bu nedenle, müşteri bu e-postayı göndermek için 25 numaralı bağlantı noktasındaki eggs.gnu.org adresine bağlanmaya çalışacaktır.

Dns sunucusu?

@puk aşağıdaki takip sorusunu sordu:

Bu DNS yerel makinemde mi?

Yanıt verdiğim:

@puk - posta sunucusuyla aynı şekilde olabilir, ancak genellikle değildir. Senin bak /etc/resolv.confdosyası ve çalıştırdığınızda da digkomutu fark edeceğiniz SERVER: ...altındaki çizgiyi. Bu, isteğinize hizmet veren DNS sunucusudur.

Misal

Dosyam /etc/resolv.confaşağıdakileri içeriyor:

nameserver 192.168.1.8

Ve bunun gibi sorgular kullanarak dig:

$ dig gnu.org mx

Sonuçta alttaki:

;; Query time: 259 msec
;; SERVER: 192.168.1.8#53(192.168.1.8)
;; WHEN: Thu Oct  3 17:46:13 2013
;; MSG SIZE  rcvd: 90

Ve zeki okuyucu için, bir sorum, bu nasıl yapılandırılır? Cevap /etc/nsswitch.confdosyadır. Özellikle bu satır:

hosts:      files mdns4_minimal [NOTFOUND=return] dns

Yani, önce dosyaları kullanın ( /etc/hosts), ardından mdns4_minimal. Bu çok noktaya yayın DNS'si. Temelde önceki aramaların önbelleğidir. Son olarak , dosyada belirtilen dnsIP adresini kullanır .nameserver/etc/resolv.conf


Bu DNS yerel makinemde mi?
puk

@puk - güncellemelere bakın.
slm

@puk - Ben daha ekledim ....
slm

7

Gerçekten hangi sürümü mailkullandığınıza bağlıdır .

Tüm sürümler postayı teslim etmek için bir MTA'ya ihtiyaç duyar, ancak bazı sürümler uzak bir MTA ("akıllı ana bilgisayar", örneğin ISS'nizin posta sunucusu) ile konuşmak için SMTP'yi kullanabilir ve bazıları yalnızca /usr/sbin/sendmailpostaları göndermek için iletiyi kesebilir yerel bir MTA.

İkinci durumda, yerel MTA gibi tam teşekküllü bir MTA olabilir sendmail veya exim veya postfix . Veya nullmailer veya ssmtp gibi basit bir salt gönderme MTA olabilir . Veya msmtp gibi biraz daha sofistike bir mini MTA , daha sonra teslim etmek için kuyruk postasını da destekler.

Özgür Yazılım ve Açık Kaynak dünyasında, mailxpaketin iki ana varyantı vardır ( mailkomutu sağlar): bsd-mailxve heirloom-mailx.

bsd-mailx SMTP konuşmaz ve yalnızca posta göndererek/usr/sbin/sendmail

hierloom-mailx SMTP'yi bir akıllı ana bilgisayara ve geleneksel ' send-to-mail'e' yöntemiyle konuşabilir.

Bu nedenle, "Bir posta sunucusuna ihtiyacınız var mı?" Evet, bir çeşit. Bir tanesine ihtiyacınız var, ancak hangi posta sürümünü yüklediğinize bağlı olarak, bunu kendi sisteminize kurmanız ve yapılandırmanız gerekmeyebilir.

IMO, msmtpsadece bir akıllı ana bilgisayara güvenmek gibi minimal bir MTA ile daha iyi durumdasınız, heirloom-mailxçünkü internet bağlantınız kesildiğinde veya akıllı ana makinenize erişilemediğinde postaları daha sonra teslim etmek için sıraya almanız gerekiyor. Yerel bir kuyruğa sahip mailve crondve diğer programlar sadece herhangi postayı unutmak göndermek bırakabilirsiniz. Yerel bir kuyruk olmadan, akıllı ana makine kullanılamıyorsa hata koşuluyla bir şekilde uğraşmaları gerekir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.