Berikut adalah beberapa pemikiran, yang akan memerlukan beberapa penyesuaian untuk memenuhi kebutuhan Anda yang sebenarnya. Hal pertama yang saya temukan adalah Postfix sepertinya tidak suka melakukan apa pun ke alamat yang alias (ie virtual_alias_domain
/ virtual_alias_maps
). Tapi itu tidak apa-apa karena pada kenyataannya tidak masalah apa alamat ini disebut asalkan semuanya disampaikan dengan benar pada akhirnya.
Jadi, di Postfix's main.cf
, tambahkan baris berikut:
virtual_mailbox_domains = example.org
# Feel free to give munger a better name, just update master.cf appropriately
virtual_transport = munger:
Selanjutnya, Anda perlu memberi tahu Postfix apa munger
arti sebenarnya. Tambahkan yang berikut (lihat pipa (8) untuk opsi lainnya). Jadi tambahkan yang berikut ini ke master.cf
:
munger unix - n n - - pipe
flags= user=nobody argv=/usr/bin/redirector
Menurut hal di atas, apa pun yang ditakdirkan example.org
akan dikirim ke /usr/bin/redirector
program (atau apa pun yang Anda ingin menyebutnya). Untuk sebagian besar hal normal, Anda akan memerlukan beberapa argumen baris perintah untuk informasi pengirim / penerima (sekali lagi, pipe(8)
memiliki lebih banyak detail) tetapi karena pengirim dan alamat tujuan diperbaiki, tidak ada lagi yang diperlukan pada baris perintah.
Sekarang Anda hanya perlu menulis redirector
programnya. Ini bekerja untuk saya:
#!/bin/sh
/usr/sbin/sendmail -bm -f 'something@myserver' 'something@gmail.com'
Ini adalah skrip shell biasa (atau bahasa pilihan Anda) jadi buat sesederhana atau serumit yang Anda suka.