Làm cách nào để chặn tệp đính kèm trên thư đến chỉ bằng Postfix?


9

Tôi có một máy chủ thư (CentOS 6.5) đang chạy Postfix và Dovecot

Postfix đang lắng nghe trên cổng 25 cho thư gửi đến và 587 cho thư gửi đi

Vấn đề là thư gửi đi với tệp đính kèm pdf đang bị chặn trong đó tôi chỉ muốn thư đến có tệp đính kèm pdf bị chặn.

Tôi có dòng cấu hình này trong main.cf

 mime_header_checks = regexp:/etc/postfix/blocked_attachments

Tệp bị chặn_attachments chứa:

/name=[^>]*\.(pdf|zip)/ REJECT

Vì vậy, thư đến với tệp đính kèm pdf chính xác bị chặn, nhưng khi tôi soạn email với tệp PDF cũng bị chặn khi tôi thử và gửi.

Làm thế nào tôi có thể nói với postfix rằng tôi chỉ muốn các tệp đính kèm đến được lọc? Hay tôi đã bỏ lỡ điều gì?

Câu trả lời:


7

Tôi sẽ viết lại câu hỏi của bạn trở thành:

Làm cách nào tôi có thể sử dụng _header_checks khác nhau cho smtpd (cổng 25) và gửi (cổng 587)?

Vấn đề kinh điển này có thể được chia với một số điều kiện

  1. Tôi muốn tắt tiêu đề_checks cho một trong những smtpd hoặc gửi.
  2. Tôi muốn chạy các tiêu đề khác nhau để gửi smtpd và gửi.

1. Tôi muốn tắt tiêu đề_checks cho một trong những smtpd hoặc gửi.

Ví dụ, tôi giả sử rằng bạn muốn tắt tiêu đề_checks để gửi (email gửi đi) .

Giải pháp 1: phương thức receive_override_options

Bạn có thể sử dụng tham số postfix được gọi là receive_override_options . Với tham số bạn có thể ghi đè công tắc tiêu đề toàn cầu, vì vậy bộ lọc sẽ không chạy. # main.cf header_checks = pcre: / path / to / header_checks

#master.cf
submission inet n       -       n       -       -       smtpd
    -o receive_override_options=no_header_body_checks

Hãy cẩn thận: điều này sẽ tắt TẤT CẢ _header_checks và body_checks được xác định trong man 5 header_checks . Để kiểm soát hoàn thành tham số nào sẽ bị tắt, xem Giải pháp 2.

Giải pháp 2: Phương pháp dịch vụ dọn dẹp nhiều

Chúng tôi có thể sử dụng nhiều kỹ thuật dọn dẹp dịch vụ cho vấn đề của bạn như *_header_checksđã được thực hiện bởi dịch vụ dọn dẹp . Bạn có thể xem ví dụ về thiết lập này trong hướng dẫn mới .

Tham số ma thuật cho cấu hình này là Cleanup_service_name . Với tham số này, chúng tôi có thể sử dụng dịch vụ dọn dẹp khác nhau cho mỗi quy trình smtpd. Trước tiên, chúng tôi xác định một dịch vụ dọn dẹp bổ sung (được gọi là không có tiêu đề) trong master.cf

no-headerchecks unix    n       -       n       -       0       cleanup
    -o mime_header_checks=

Trong phần dọn dẹp này, chúng tôi xác định mime_header_checks trống để tắt tính năng lọc. Bước cuối cùng là yêu cầu dịch vụ đệ trình sử dụng các kiểm tra không có tiêu đề của chúng tôi

submission inet n       -       n       -       -       smtpd
    -o cleanup_service_name=no-headerchecks 

2. Tôi muốn chạy các tiêu đề_check khác nhau cho smtpd và gửi.

Đối với vấn đề này, bạn có thể sử dụng nhiều phương pháp dịch vụ dọn dẹp như mô tả ở trên.

Trước tiên, chúng tôi xác định một dịch vụ dọn dẹp bổ sung (được gọi là kiểm tra tiêu đề thứ hai) trong master.cf

second-headerchecks unix    n       -       n       -       0       cleanup
    -o mime_header_checks=pcre:/path/to/2ndheaderchecks

Trong lần dọn dẹp này, chúng tôi xác định mime_header_checks thứ hai cho bảng PCRE khác. Bước cuối cùng là yêu cầu dịch vụ đệ trình sử dụng các kiểm tra tiêu đề thứ hai của chúng tôi

submission inet n       -       n       -       -       smtpd
    -o cleanup_service_name=second-headerchecks

Ghi chú:

  • Trường hợp của bạn trông tương tự với câu hỏi này . Thật không may , câu trả lời từ Laurentiu Roescu chỉ hoạt động nếu bạn muốn bật tiêu đề_checks cho thư gửi đi sử dụng smtp làm phương tiện vận chuyển. Tin tốt là câu đầu tiên của ông về cleanupdaemon cho chúng ta một số ý tưởng cho giải pháp thứ hai.

  • Nhiều phương thức dịch vụ dọn dẹp có thể được áp dụng nếu bạn muốn các tiêu đề khác nhau, body_checks và các tham số khác được xác định trong man 5 header_checks.

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.