Postfix: Bagaimana Cara Membuat Email Alias ​​Bekerja?

11

Dokumentasi mengklaim bahwa saya dapat menambahkan alias dalam file (seperti / etc / postfix / virtusertable) dan kemudian menggunakan direktif "virtual_maps" untuk mengarahkannya. Namun, ini tampaknya tidak berfungsi.

Email saya terpental dengan:

Recipient address rejected: User unknown in local recipient table;

Jika saya mengirimkan pengguna dari server menggunakan perintah mail, itu berhasil.

mail myuser

Pesan melewati postfix dan memasukkan dirinya ke dalam kotak masuk Cyrus dengan benar.

Ketika saya menggunakan fetchmail untuk mengeluarkan pesan pengguna dari server pop3, postfix gagal. Email pengguna adalah "[email protected]", tetapi sepertinya tidak memetakan dengan benar ke "myuser", nama kotak surat cyrus.



/etc/postfix/main.cf

myhostname = localhost
alias_maps = hash: / etc / aliases
alias_database = hash: / etc / aliases
myorigin = / etc / mailname
mydestination = localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0/10/104 [:: 1] / 128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = semua
mailbox_transport = lmtp: unix: / var / run / cyrus / socket / lmtp
#lmtp: unix: / var / run / lmtp
virtual_alias_domains = mydomain.com
virtual_maps = hash: / etc / postfix / virtusertable



/ etc / fetchmailrc

et syslog;
atur daemon 20;

polling "mail.pop3server.com"
dengan protokol pop3
pengguna "[email protected]" kata sandi "12345" adalah "myuser"
ambil semuanya



/ etc / postfix / virtusertable

[email protected]     myuser



postconf -n

alias_database = hash: / etc / aliases
alias_maps = hash: / etc / aliases
append_dot_mydomain = tidak
biff = tidak
config_directory = / etc / postfix
inet_interfaces = semua
mailbox_size_limit = 0
mailbox_transport = lmtp: unix: / var / run / cyrus / socket / lmtp
mydestination = localhost 
myhostname = localhost
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0/10/104 [:: 1] / 128
myorigin = / etc / mailname
readme_directory = no
recipient_delimiter = +
relayhost = 
smtp_tls_session_cache_database = btree: $ {data_directory} / smtp_scache
smtpd_banner = $ myhostname ESMTP $ mail_name (Ubuntu)
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree: $ {data_directory} / smtpd_scache
smtpd_use_tls = ya
virtual_alias_domains = mydomain.com

Mengapa mengabaikan alias saya?

Nick
sumber

Jawaban:

19

Alias ​​lokal masuk ke

alias_database = hash:/etc/aliases(tidak di /etc/postfix/virtusertable) dalam format berikut:

alias: destination. Setelah lari itu newaliases.

solefald
sumber
Saya mendapat peringatan: "peringatan: / etc / aliases, baris 3: name harus lokal". Saya menambahkan entri "[email protected]: user" ke / etc / aliases. pengguna bukan pengguna di mesin, melainkan pengguna kotak surat Cyrus.
Nick
2
Tidak, format yang benar adalah pengguna: [email protected], pengguna lokal
David Rickman
Oke, ubah format dan peringatannya hilang, tetapi surat masih terpental. Saya mendapatkan "550-Mailbox tidak diketahui".
Nick
Sepertinya Fetchmail menerima pesan itu, mencoba mengirimkannya ke Cyrus, tapi sekarang Cyrus memantulkannya. Saya berpikir bahwa postfix tidak mengirimkannya dengan alias yang benar? Atau apakah Cyrus membutuhkan tabel alias sendiri?
Nick
Saya akan menandai ini sebagai diselesaikan, dan membuat pertanyaan baru untuk masalah Cyrus, karena secara teknis ini adalah pertanyaan yang berbeda.
Nick
0

Baru saja berlari ke masalah ini ... dan menemukan bahwa anehnya masalah saya tidak terkait cyrus ...

karena saya bisa mengirimkan langsung termasuk alamat "+" tetapi alamat yang ditolak ditolak ... FYI yang saya temukan adalah alamat alias yang ditulis ulang [myalias] menjadi [[email protected]]

jadi sampai saya menemukan cara untuk mematikan ekspansi atau mengubahnya untuk menjatuhkan solusi [myhost] adalah untuk memperluas dalam file alias [[email protected]] alih-alih [myalias] akhirnya menemukan ketika saya akhirnya melihat log yang menunjukkan FQDN bukan hanya domain seperti yang saya gunakan di sendmail.

Robert
sumber