我必須將所有無效傳入的新地址設定為這樣的路線。
虛擬別名: 驅動程式 = 重定向 允許延遲 允許失敗 域 = lsearch;/etc/userdomains 使用者=“${查找\ {$網域名稱} \ lsearch{/etc/userdomains} \ {$值} \ }” 組=“${查找\ {$網域名稱} \ lsearch{/etc/userdomains} \ {$值} \ }” 地址資料 = \ “路由器=$router_name \ 重定向=${引用:${查找\ {$local_part} \ lsearch{${extract{5}{::}{${查找密碼{${lookup{$domain}lsearch{/etc/userdomains}{$value}}}{$value}}}}/etc/${ perl{untaint}{$domain}}/aliases} \ }}" 資料 = ${提取{重定向}{$address_data}} 文件傳輸 = 地址文件 router_home_directory = ${提取\ {5} \ {::} \ {${查找密碼\ {${查找\ {$domain_data} \ lsearch{/etc/userdomains} \ {$值} \ }} \ {$值} \ }} \ } 本地部分後綴 = +* 本地部分後綴可選 重試使用本地部分 看不見 使用者轉發: 驅動程式 = 重定向 允許過濾器 允許失敗 禁止過濾器運行 禁止過濾器perl 禁止過濾器查找 禁止過濾器讀取文件 禁止過濾器讀套接字 檢查祖先 檢查本地用戶 網域 = $primary_hostname 無表達式 require_files = "+$home/.forward" 條件=“${提取{大小}{${stat:$home/.forward}}}” 檔案 = $home/.forward 文件傳輸 = 地址文件 回覆傳輸 = 地址回复 目錄_傳輸 = 地址_目錄 使用者 = $local_part_data 組 = $local_part_data 無驗證
以使用者身分歸檔:[電子郵件受保護],使用者*:::失敗:任何訊息
在這裡,我的正常轉發工作,但不是這個 * 一個
答案1
只需使用nwildlsearch
代替lsearch
並將*
條目放在文件底部即可。
答案2
應該是這樣的。
catchall:
driver = redirect
domains = lsearch;/etc/userdomains
address_data = \
"router=$router_name \
redirect=${quote:${lookup \
{invalid_accept} \
lsearch{${extract{5}{::}{${lookup passwd{${lookup{$domain}lsearch{/etc/userdomains}{$value}}}{$value}}}}/etc/${perl{untaint}{$domain}}/aliases} \
}}"
data = ${extract{redirect}{$address_data}}
allow_fail
這是完美的方式,在文件中應該是這樣的
invalid_accept : :fail:Whatever act you want I shown here failed act