Sözdizimi
sendmail [seçenek ...] [alıcı ...]
mailq
sendmail -bp
newaliases
sendmail -I
Açıklama
Postfix sendmail(1) komutu, Postfix - Sendmail uyumluluk arayüzünü uygular. Mevcut uygulamalarla uyumluluk adına, bazı Sendmail komut satırı seçenekleri tanınır ancak sessizce yoksayılır.
Varsayılan olarak, Postfix sendmail(1) komutu, standart girdiden EOF (dosya sonu) karakterine veya yalnızca tek bir . karakteri içeren bir satır okuyana kadar bir iletiyi okur ve iletimi ayarlar. Postfix sendmail(1), maildrop dizininde bir kuyruk dosyası oluşturmak için postdrop(1) komutuna güvenir.
Diğer yaygın çalışma modları için özel komut takma adları sağlanmıştır:
mailq Posta kuyruğunu listeler. Her bir girdi; kuyruk dosyası kimliğini (ID), ileti boyutunu, varış zamanını, göndericiyi ve henüz iletilmesi gereken alıcıları gösterir. Son denemede posta iletilemediyse, başarısızlık nedeni gösterilir. Kuyruk ID dizgesini isteğe bağlı bir durum karakteri takip eder:
İleti aktif kuyruktadır, yani ileti teslimat için seçilmiştir.
! İleti bekletme (hold) kuyruğundadır, yani posta bekletmeden çıkarılana kadar başka bir teslimat denemesi yapılmayacaktır.
Bu çalışma modu postqueue(1) komutu yürütülerek uygulanır.
newaliases Takma ad (alias) veritabanını başlatır. Herhangi bir girdi dosyası belirtilmemişse (-oA seçeneği ile, aşağıya bakın), program alias_database yapılandırma parametresi ile belirtilen dosya veya dosyaları işler. Eğer herhangi bir takma ad veritabanı türü belirtilmemişse, program default_database_type yapılandırma parametresi ile belirtilen türü kullanır. Bu çalışma modu postalias(1) komutu çalıştırılarak uygulanır.
Not: Bir takma ad veritabanı güncellemesinin görünür hale gelmesi bir dakika kadar sürebilir. Bu gecikmeyi ortadan kaldırmak için "postfix reload" komutunu kullanın.
Bu ve diğer özellikler, komut satırı seçeneklerinin uygun kombinasyonu belirtilerek seçilebilir. Bazı özellikler main.cf yapılandırma dosyasındaki parametreler tarafından kontrol edilir.
Aşağıdaki seçenekler tanınır:
-Am (yoksayılır)
-Ac (yoksayılır) Postfix sendmail, bir iletinin ilk gönderim olup olmadığına bakılmaksızın aynı yapılandırma dosyasını kullanır.
-B body_type İleti gövdesi MIME türü: 7BIT veya 8BITMIME.
-bd: Daemon moduna geçer. Bu çalışma modu "postfix start" komutu yürütülerek uygulanır.
-bh (yoksayılır)
-bH (yoksayılır) Postfix'in kalıcı bir ana bilgisayar (host) durum veritabanı yoktur.
-bi: Takma ad veritabanını başlatır. Yukarıdaki newaliases komutuna bakın.-bl: Daemon moduna geçer. Sendmail'in -bl seçeneğinde olduğu gibi yalnızca yerel bağlantıları kabul etmek için Postfix main.cf yapılandırma dosyasında "inet_interfaces = loopback" belirtin.-bm: Standart girdiden postayı oku ve iletimi ayarla. Bu, varsayılan çalışma modudur.-bp: Posta kuyruğunu listeler. Yukarıdaki mailq komutuna bakın.-bs: Bağımsız (stand-alone) SMTP sunucu modu. Standart girdiden SMTP komutlarını okur ve standart çıktıya yanıtları yazar. Bağımsız SMTP sunucu modunda, posta aktarımı (relaying) ve diğer erişim kontrolleri varsayılan olarak devre dışıdır. Bunları etkinleştirmek için işlemi mail_owner kullanıcısı olarak çalıştırın.
Bu çalışma modu smtpd(8) daemon'ı çalıştırılarak uygulanır.
-bv: Bir iletiyi toplamaz veya iletmez. Bunun yerine, her bir alıcı adresini doğruladıktan sonra bir e-posta raporu gönderir. Bu, adres yeniden yazma ve yönlendirme yapılandırmalarını test etmek için kullanışlıdır.
Bu özellik Postfix sürüm 2.1 ve sonrasında mevcuttur.
-C config_file
-C config_dir Postfix main.cf dosyasının veya üst dizininin yol adı. Bu bilgi, 2.3'ten önceki Postfix sürümlerinde yoksayılır.
Postfix sürüm 3.2 ve sonrasında, varsayılan olmayan bir dizin, alternate_config_directories veya multi_instance_directories parametreleri aracılığıyla varsayılan main.cf dosyasında yetkilendirilmelidir.
Tüm Postfix sürümlerinde, yapılandırma dosyalarının konumunu geçersiz kılmak için MAIL_CONFIG ortam değişkeni ile bir dizin yol adı belirtebilirsiniz.
-F full_name Gönderenin tam adını ayarlar. Bu, NAME ortam değişkenini geçersiz kılar ve yalnızca From: ileti başlığı olmayan iletilerde kullanılır.
-f sender Zarf gönderici (envelope sender) adresini ayarlar. Bu, teslimat sorunlarının gönderildiği adrestir. 2.1'den önceki Postfix sürümlerinde, Errors-To: ileti başlığı hata dönüş adresini geçersiz kılar.
-G: İlk kullanıcı gönderiminin aksine, ağ geçidi (gateway / relay) gönderimi. Adresleri hiç yeniden yazmayın veya eksik adresleri remote_header_rewrite_domain ile belirtilen alan adı bilgiyle güncelleyin.
Bu seçenek Postfix sürüm 2.3'ten önce yoksayılır.
-h hop_count (yoksayılır) Atlama sayısı (hop count) sınırı. Bunun yerine hopcount_limit yapılandırma parametresini kullanın.
-I: Takma ad veritabanını başlatır. Yukarıdaki newaliases komutuna bakın.-i: Standart girdiden bir ileti okurken, yalnızca . karakteri içeren bir satırı girdinin sonu olarak kabul etmeyin.
-L label (yoksayılır) Günlük kaydı etiketi. Bunun yerine syslog_name yapılandırma parametresini kullanın.
-m (yoksayılır) Geriye dönük uyumluluk.
-N dsn (varsayılan: 'delay, failure') Teslimat durumu bildirimi (DSN) kontrolü. failure (teslimat başarısız olduğunda bildirim gönder), delay (teslimat geciktiğinde bildirim gönder) veya success (ileti teslim edildiğinde bildirim gönder) seçeneklerinden bir veya daha fazlasını içeren virgülle ayrılmış bir liste belirtin; ya da never (hiçbir bildirim gönderme) belirtin.
Bu özellik Postfix 2.3 ve sonrasında mevcuttur.
-n (yoksayılır) Geriye dönük uyumluluk.
-oAalias_database Varsayılan olmayan takma ad veritabanı. Yol adını veya tür:yol_adı belirtin. Detaylar için postalias(1) kılavuzuna bakın.
-O option=value (yoksayılır) Belirtilen seçeneği değere ayarlar. Bunun yerine main.cf dosyasındaki eşdeğer yapılandırma parametresini kullanın.
-o7 (yoksayılır)
-o8 (yoksayılır) 8-bit veya ikili (binary) içerik göndermek için uygun bir MIME kapsüllemesi kullanın ve uygun -B komut satırı seçeneğini belirtin.
-oi: Standart girdiden bir ileti okurken, yalnızca . karakteri içeren bir satırı girdinin sonu olarak kabul etmeyin.
-om (yoksayılır) Gönderici hiçbir zaman takma ad vb. genişletmelerinden çıkarılmaz.
-o x value (yoksayılır) x seçeneğini değere ayarlar. Bunun yerine main.cf dosyasındaki eşdeğer yapılandırma parametresini kullanın.
-r sender Zarf gönderici adresini ayarlar. Bu, teslimat sorunlarının gönderildiği adrestir. 2.1'den önceki Postfix sürümlerinde, Errors-To: ileti başlığı hata dönüş adresini geçersiz kılar.
-R return Teslimat durumu bildirimi kontrolü. Bir ileti geri döndüğünde (bounce) yalnızca başlığın döndürülmesi için "hdrs", tam bir kopyasının döndürülmesi için "full" (varsayılan davranış) belirtin.
-R seçeneği bir üst sınır belirtir; tam bir kopya bounce_size_limit ayarını aştığında Postfix yalnızca başlığı döndürür.
Bu seçenek Postfix sürüm 2.10'dan önce yoksayılır.
-q: Kuyruğa alınmış tüm postaları iletmeyi dener. Bu, postqueue(1) komutu yürütülerek uygulanır.
Uyarı: İletilemeyen postaları sık sık temizlemek (flush), diğer tüm postaların teslimat performansının düşmesine neden olur.
-qinterval (yoksayılır) Kuyruk çalıştırmaları arasındaki süre. Bunun yerine queue_run_delay yapılandırma parametresini kullanın.
-qIqueueid Belirtilen kuyruk ID'sine sahip postanın hemen iletilmesini planlar. Bu seçenek postqueue(1) komutu yürütülerek uygulanır ve Postfix sürüm 2.4 ve sonrasında mevcuttur.
-qRsite Belirtilen site için kuyruğa alınmış tüm postaların hemen iletilmesini planlar. Bu seçenek yalnızca "fast flush" hizmeti için uygun olan site adlarını kabul eder ve postqueue(1) komutu yürütülerek uygulanır. "Fast flush" hizmeti hakkında daha fazla bilgi için flush(8) kılavuzuna bakın.
-qSsite Bu komut uygulanmamıştır. Bunun yerine daha yavaş olan "sendmail -q" komutunu kullanın.
-t: İleti başlıklarından alıcıları ayıklar. Bunlar, komut satırında belirtilen alıcılara eklenir.
Postfix 2.1'den önceki sürümlerde bu seçenek, komut satırında hiçbir alıcı adresinin belirtilmemesini gerektirir.
-U (yoksayılır) İlk kullanıcı gönderimi.
-V envid DSN destekleyen sunucular tarafından bildirim için kullanılacak zarf ID'sini belirtir.
Bu özellik Postfix 2.3 ve sonrasında mevcuttur.
-XV (Postfix 2.2 ve öncesi: -V) Değişken Zarf Dönüş Yolu (Variable Envelope Return Path - VERP). owner-listname@origin biçiminde bir zarf gönderici adresi verildiğinde, her bir alıcı user@domain kişiselleştirilmiş bir zarf gönderici adresiyle posta alır.
Varsayılan olarak, kişiselleştirilmiş zarf gönderici adresi owner-listname+user=domain@origin şeklindedir. Varsayılan + ve = karakterleri, default_verp_delimiters yapılandırma parametresi ile yapılandırılabilir.
-XVxy (Postfix 2.2 ve öncesi: -Vxy) -XV gibidir, ancak default_verp_delimiters yapılandırma parametresi ile belirtilen karakterler yerine VERP sınırlayıcı karakterleri olarak x ve y karakterlerini kullanır.
-v: İlk teslimat denemesinin e-posta raporunu gönderir (Postfix sürüm 2.1 ve sonrası). Posta teslimatı her zaman arka planda gerçekleşir. Birden fazla -v seçeneği verildiğinde, hata ayıklama amacıyla ayrıntılı günlük kaydını (verbose logging) etkinleştirir.
-X log_file (yoksayılır) Postacı (mailer) trafiğini günlüğe kaydeder. Bunun yerine debug_peer_list ve debug_peer_level yapılandırma parametrelerini kullanın.
Güvenlik
Tasarım gereği, bu program set-user (veya group) kimliğine sahip değildir. Ancak güvenilmeyen, muhtemelen uzak kullanıcılardan gelen verileri işlemelidir. Bu nedenle, kötü niyetli girdilere karşı alışılagelmiş önlemlerin alınması gerekir.
Tanılama
Sorunlar syslogd(8) hizmetine ve standart hata akışına kaydedilir.
Ortam
MAIL_CONFIG Postfix yapılandırma dosyalarının bulunduğu dizin.
MAIL_VERBOSE (değer önemsizdir) Hata ayıklama amacıyla ayrıntılı günlük kaydını etkinleştirir.
MAIL_DEBUG (değer önemsizdir) debugger_command yapılandırma parametresiyle belirtilen şekilde harici bir komutla hata ayıklamayı etkinleştirir.
NAME Gönderenin tam adı. Bu, yalnızca From: ileti başlığı olmayan iletilerde kullanılır. Ayrıca yukarıdaki -F seçeneğine bakın.
Yapılandırma Parametreleri
Aşağıdaki main.cf parametreleri özellikle bu programla ilgilidir. Aşağıdaki metin yalnızca parametrelerin bir özetini sunar. Örnekler dahil daha fazla ayrıntı için postconf(5) kılavuzuna bakın.
Uyumluluk Kontrolleri
Postfix 2.9 ve sonrasında mevcuttur:
sendmail_fix_line_endings (her zaman)
Postfix sendmail komutunun, e-posta iletisi satır sonlarını
Sorun Giderme Kontrolleri
DEBUG_README dosyası, bir Postfix sisteminde nasıl sorun giderileceğine dair örnekler sunar.
debugger_command (boş) Bir Postfix daemon programı -D seçeneği ile çağrıldığında yürütülecek harici komut.
debug_peer_level (2) Uzak bir istemci veya sunucu debug_peer_list parametresindeki bir kalıpla eşleştiğinde, ayrıntılı günlük kaydı düzeyindeki artış miktarı.
debug_peer_list (boş) Ayrıntılı günlük kaydı düzeyinin $debug_peer_level içinde belirtilen miktar kadar artırılmasına neden olan, uzak istemci veya sunucu ana bilgisayar adı ya da ağ adresi kalıplarının isteğe bağlı listesi.
Erişim Kontrolleri
Postfix sürüm 2.2 ve sonrasında mevcuttur:
authorized_flush_users (static:anyone) Kuyruğu temizleme yetkisine sahip kullanıcıların listesi.
authorized_mailq_users (static:anyone) Kuyruğu görüntüleme yetkisine sahip kullanıcıların listesi.
authorized_submit_users (static:anyone) sendmail(1) komutuyla (ve ayrıcalıklı postdrop(1) yardımcı komutuyla) posta gönderme yetkisine sahip kullanıcıların listesi.
Kaynak ve Hız Kontrolleri
bounce_size_limit (50000) Teslim edilemeyen bildirimi içinde gönderilen orijinal ileti metninin maksimum miktarı.
fork_attempts (5) Bir alt işlemi fork() etmek için yapılacak maksimum deneme sayısı.
fork_delay (1s) Bir alt işlemi fork() etme denemeleri arasındaki gecikme süresi.
hopcount_limit (50) Birincil ileti başlıklarında izin verilen maksimum Received: ileti başlığı sayısı.
queue_run_delay (300s) Kuyruk yöneticisi tarafından ertelenen kuyruk taramaları arasındaki süre; Postfix 2.4'ten önce varsayılan değer 1000s idi.
Hızlı Temizleme (Fast Flush) Kontrolleri
ETRN_README dosyası, Postfix "fast flush" hizmetinin yapılandırma ve çalışma ayrıntılarını açıklar.
fast_flush_domains ($relay_domains) Bu hedeflere kuyruğa alınmış postalarla birlikte, hedef başına günlük dosyaları için uygun olan hedeflerin isteğe bağlı listesi.
VERP Kontrolleri
VERP_README dosyası, değişken zarf dönüş yolu (VERP) adresleri için Postfix desteğinin yapılandırma ve çalışma ayrıntılarını açıklar.
default_verp_delimiters (+=) İki varsayılan VERP sınırlayıcı karakteri.
verp_delimiter_filter (-=+) Postfix'in, Postfix sendmail(1) komut satırında ve SMTP komutlarında VERP sınırlayıcı karakterleri olarak kabul ettiği karakterler.
Çeşitli Kontroller
alias_database ('postconf -d' çıktısına bakın) "newaliases" veya "sendmail -bi" ile güncellenen, local(8) teslimatı için takma ad veritabanları.
command_directory ('postconf -d' çıktısına bakın) Tüm postfix yönetim komutlarının konumu.
config_directory ('postconf -d' çıktısına bakın) Postfix main.cf ve master.cf yapılandırma dosyalarının varsayılan konumu.
daemon_directory ('postconf -d' çıktısına bakın) Postfix destek programları ve daemon programlarının bulunduğu dizin.
default_database_type ('postconf -d' çıktısına bakın) newaliases(1), postalias(1) ve postmap(1) komutlarında kullanılacak varsayılan veritabanı türü.
delay_warning_time (0h) Hâlâ kuyrukta olan postaların ileti başlıklarının bir kopyasının göndericiye ne kadar süre sonra iletileceği.
import_environment ('postconf -d' çıktısına bakın) Ayrıcalıklı bir Postfix işleminin, Postfix olmayan bir üst işlemden içe aktaracağı ortam parametrelerinin listesi veya name=value ortam geçersiz kılmaları.
mail_owner (postfix) Postfix kuyruğunun ve çoğu Postfix daemon işleminin sahibi olan UNIX sistem hesabı.
queue_directory ('postconf -d' çıktısına bakın) Postfix üst düzey kuyruk dizininin konumu.
remote_header_rewrite_domain (boş) Bu parametre boş olduğunda uzak istemcilerden gelen ileti başlıklarını kesinlikle yeniden yazmaz; aksi takdirde ileti başlıklarını yeniden yazar ve eksik adreslere belirtilen alan adını ekler.
syslog_facility (mail) Postfix günlük kaydının syslog tesisi (facility).
syslog_name ('postconf -d' çıktısına bakın) syslog kayıtlarında işlem adının önüne eklenen bir önek; böylece, örneğin "smtpd", "önek/smtpd" haline gelir.
Postfix 3.2 ve sonrası:
alternate_config_directories (boş) Komut satırında "-c config_directory" (sendmail(1) durumunda "-C config_directory") ile veya MAIL_CONFIG ortam parametresi aracılığıyla belirtilebilen, varsayılan olmayan Postfix yapılandırma dizinlerinin listesi.
multi_instance_directories (boş) Varsayılan olmayan Postfix yapılandırma dizinlerinin isteğe bağlı bir listesi; bu dizinler, varsayılan Postfix örneğiyle Postfix yürütülebilir dosyalarını ve belgelerini paylaşan ve varsayılan Postfix örneğiyle birlikte başlatılan, durdurulan vb. ek Postfix örneklerine aittir.
Dosyalar
/var/spool/postfix, posta kuyruğu /etc/postfix, yapılandırma dosyaları
Ayrıca Bakınız
pickup(8), posta toplama daemon'ı qmgr(8), kuyruk yöneticisi smtpd(8), SMTP sunucusu flush(8), hızlı temizleme (fast flush) hizmeti postsuper(1), kuyruk bakımı postalias(1), takma ad veritabanı oluşturma/güncelleme/sorgulama postdrop(1), posta gönderme aracı postfix(1), posta sistemi kontrolü postqueue(1), posta kuyruğu kontrolü syslogd(8), sistem günlüğü kaydı
README Dosyaları
Bu bilgiyi bulmak için "postconf readme_directory" veya "postconf html_directory" komutunu kullanın. DEBUG_README, Postfix hata ayıklama kılavuzu ETRN_README, Postfix ETRN kılavuzu VERP_README, Postfix VERP kılavuzu
Lisans
Secure Mailer lisansı bu yazılımla birlikte dağıtılmalıdır.
Yazar(lar)
Wietse Venema IBM T.J. Watson Research P.O. Box 704 Yorktown Heights, NY 10598, USA
Wietse Venema Google, Inc. 111 8th Avenue New York, NY 10011, USA
SENDMAIL(1)