Lưu trữ tên miền phụ ký tự đại diện bằng cách sử dụng postfix


9

Tôi đang cố gắng tìm ra cách để tôi có thể nhận được postfix để chấp nhận email cho bất kỳ tên miền phụ nào trên trang web chính của tôi. Tôi không có tên miền ảo, chỉ là một danh sách dài các tên miền phụ để phân phối cục bộ. Cụ thể, tôi đang ăn python@*.mydomain.comvào Python bằng tệp bí danh:

python:    |/www/proc_email.py

Python có thể xử lý việc giao hàng từ đó. Tôi hình dung điều này tìm kiếm một cái gì đó dọc theo dòng:

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

Tôi đang chạy phiên bản mới nhất của postfix trên Ubuntu (không chắc chắn cách kiểm tra phiên bản).

Cảm ơn trước.

Câu trả lời:


19

Bạn không thể sử dụng ký tự đại diện nếu bạn liệt kê rõ ràng các đích trong cấu hình Postfix của mình, nhưng may mắn thay, $mydestinationtùy chọn này chấp nhận tra cứu bảng. Vì vậy, hãy thử thiết lập $mydestinationmột bản đồ pcre như thế này:

mydestination = pcre:/etc/postfix/mydestinations

Sau đó tạo /etc/postfix/mydestinationsvới các biểu thức chính xác được neo và thoát:

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

Về mặt kỹ thuật, bạn có thể đặt bất cứ thứ gì vào vị trí "CHẤP NHẬN" vì kết quả bị bỏ qua; chỉ cần sự hiện diện của trận đấu là đủ :

Chỉ định danh sách các tên máy chủ hoặc tên miền, "/ file / name" hoặc "type: bảng", được phân tách bằng dấu phẩy và / hoặc khoảng trắng. Mẫu "/ file / name" được thay thế bằng nội dung của nó; bảng tra cứu "loại: bảng" được khớp khi tên khớp với khóa tra cứu (kết quả tra cứu bị bỏ qua).


2
Các biểu thức thông thường nên được đạt được; xem serverfault.com/a3532928/84843
Richard Hansen

19

Giải pháp pcre trong câu trả lời được chấp nhận hoạt động tốt, nhưng bạn có thể muốn xem xét việc neo regrec để tránh bị truy cập chỉ vào một phần của tên miền.

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

0

*.mydomain.com sẽ không làm việc

Bạn cần tạo relay-domainsvà đặt tất cả tên miền phụ của bạn vào đó. 1 mỗi dòng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.