Host subdomain wildcard menggunakan postfix

9

Saya mencoba mencari cara bagaimana saya bisa mendapatkan postfix untuk menerima email untuk setiap sub-domain dari situs utama saya. Saya tidak memiliki domain virtual, hanya daftar panjang sub-domain untuk pengiriman lokal. Secara khusus, saya python@*.mydomain.commemasukkan Python menggunakan file alias:

python:    |/www/proc_email.py

Python dapat menangani pengiriman dari sana. Saya membayangkan ini tampak seperti:

mydestination = encendio, localhost.localdomain, localhost, *.mydomain.com

Saya menjalankan versi terbaru postfix di Ubuntu (tidak yakin bagaimana memeriksa versi).

Terima kasih sebelumnya.

Jack M.
sumber

Jawaban:

19

Anda tidak dapat menggunakan wildcard jika Anda secara eksplisit mencantumkan tujuan dalam konfigurasi Postfix Anda, tetapi untungnya $mydestinationopsi tersebut menerima pencarian tabel. Jadi cobalah mengatur $mydestinationke peta pcre seperti ini:

mydestination = pcre:/etc/postfix/mydestinations

Kemudian buat /etc/postfix/mydestinationsdengan regexps yang berlabuh dan lolos dengan benar:

/^encendio$/                  ACCEPT
/^localhost\.localdomain$/    ACCEPT
/^localhost$/                 ACCEPT
/^.*\.mydomain\.example$/     ACCEPT

Secara teknis Anda bisa meletakkan apa saja di tempat "MENERIMA" karena hasilnya diabaikan; hanya kehadiran pertandingan cukup :

Tentukan daftar nama host atau domain, pola "/ file / name" atau "type: table", dipisahkan dengan koma dan / atau spasi putih. Pola "/ file / nama" diganti oleh isinya; tabel pencarian "type: table" cocok ketika nama cocok dengan kunci pencarian (hasil pencarian diabaikan).

Insyte
sumber
2
Ekspresi reguler harus ditingkatkan; lihat serverfault.com/a/352928/84843
Richard Hansen
19

Solusi pcre dalam jawaban yang diterima berfungsi dengan baik, tetapi Anda mungkin ingin mempertimbangkan untuk memasang regexp untuk menghindari mendapatkan hit hanya pada bagian dari nama domain.

/^encendio$/                  ACCEPT
/^localhost\.localdomain$/    ACCEPT
/^localhost$/                 ACCEPT
/^.*\.mydomain\.com$/         ACCEPT
gldr
sumber
0

*.mydomain.com tidak akan bekerja.

Anda perlu membuat relay-domainsdan meletakkan semua subdomain Anda di sana. 1 per baris.

solefald
sumber