Nếu bạn đã quá chán nản với thư rác trên email với những nội dung về quảng cáo, đầu tư, sự mời gọi từ những đối tượng bạn không mong muốn. Hay thậm chí là lo lắng về các mối nguy hại tiềm ẩn trong email đó. Đừng lo, ZingServer sẽ giúp bạn với những mẹo chặn thư rác trong bài viết này.
Postfix SMTP là gì?
Postfix là một phần mềm mã nguồn mở có chức năng giúp gửi và nhận email. SMTP là một giao thức chuẩn để truyền tải thư điện tử qua mạng Internet. Postfix sẽ phân loại thư và đưa vào những hệ thống chờ xử lý khác nhau. Nếu một tin nhắn không mong muốn hoặc thư rác được gửi bằng hệ thống nhắn tin, thì đó được gọi là gửi thư rác. Thư rác qua email (email spam) là một trong những hình thức gửi thư rác phổ biến nhất. Thư rác cũng xảy ra trong các nền tảng xã hội khác. Dưới đây sẽ là một số mẹo để chặn thư rác với máy chủ Postfix SMTP.
Cách cài đặt Postfix trên Ubuntu rất đơn giản:
apt-get update -y apt-get install postfix mailutils -y
Sau đó nhập hostname và cấu hình firewall với lệnh:
ufw allow Postfix
Khởi động chương trình với lệnh:
service postfix restart service postfix enable
Một số mẹo giúp chặn thư rác với máy chủ Postfix SMTP
1. Từ chối email
Bạn nên đặt quy tắc để từ chối email nếu email của người gửi không có bản ghi MX hoặc bản ghi A hợp lệ. Địa chỉ email của người gửi còn được gọi là địa chỉ ‘envelope from‘ trong Postfix. Một số kẻ gửi thư rác sử dụng tên miền không tồn tại để gửi email. Postfix tìm bản ghi A của miền chính nếu miền của người gửi không có bản ghi MX. Sau đó gửi email đến máy chủ lưu trữ. Nếu miền không có bản ghi A và bản ghi MX thì Postfix sẽ không thể gửi email đến miền đó. Vì vậy, bạn có thể từ chối email từ các miền đó bằng quy trình sau.
Chỉnh sửa tệp cấu hình chính Postfix để lọc thư rác khỏi các miền không có bản ghi MX hoặc bản ghi A:
$ sudo vim /etc/postfix/main.cf
Thêm các dòng sau vào phần ‘smtpd_sender_restrictions‘. Những dòng này trong tệp cấu hình chính thông báo cho máy chủ từ chối email từ người gửi nếu họ không có bản ghi MX hoặc A hợp lệ:
smtpd_sender_restrictions = reject_unknown_sender_domain
Tiếp theo lưu và đóng tệp cấu hình. Sau đó, khởi động lại Postfix để đảm bảo rằng các thay đổi được ghi nhận.
$ sudo systemctl restart postfix
Postfix sẽ từ chối email, nếu:
- Máy khách SMTP không có bản ghi PTR hợp lệ.
- Tên máy khách SMTP không có bản ghi A hợp lệ.
Để bật giới hạn tên máy chủ HELO/EHLO, hãy thêm các dòng sau vào phần smtpd_sender_restrictions của tệp cấu hình chính Postfix. Sau khi thêm vào tệp main.cf, hãy khởi động lại Postfix để lưu các thay đổi:
smtpd_sender_restrictions = permit_mynetworks permit_sasl_authenticated reject_unknown_sender_domain reject_unknown_reverse_client_hostname reject_unknown_client_hostname
2. Kích hoạt Greylisting
Theo mặc định, Postfix gửi lại email bị lỗi nhiều lần trước khi thông báo cho người gửi rằng không thể gửi email. Postgrey là một máy chủ lưu trữ danh sách xám (Greylisting) trên Postfix. Bạn có thể cài đặt ‘Postgrey‘ và bật Greylisting trên Ubuntu bằng cách thực hiện theo quy trình bên dưới.
Chạy lệnh sau để cài đặt Postgrey. Sau khi cài đặt, Postgrey sẽ tự động khởi động.
$ sudo apt install postgrey
Thực hiện lệnh bên dưới để kiểm tra trạng thái của Postgrey đã cài đặt:
$ sudo systemctl status postgrey
Theo mặc định, Postgrey sẽ nghe trên cổng TCP 10023 trên máy chủ cục bộ. Để kiểm tra hãy chạy lệnh sau:
$ sudo netstat -lnpt | grep postgrey
Theo mặc định, thời gian cho Greylisting là 300 giây. Nếu bạn muốn thay đổi thời gian đó, bạn cần chỉnh sửa tệp /etc/default/postgrey.
Mở tệp /etc/default/postgrey bằng cách sử dụng bất kỳ trình soạn thảo văn bản nào.
$ sudo nano /etc/default/postgrey
Tìm dòng “POSTGREY_OPTS=”–inet=10023″” và thay thế thành dòng sau nếu bạn muốn thay đổi thời gian trong danh sách xám thành 60 giây:
POSTGREY_OPTS="--inet=127.0.0.1:10023 --delay=60"
Lưu và đóng tệp, sau đó khởi động lại Postgrey để các thay đổi được thực hiện:
$ sudo systemctl restart postgrey
Tiếp theo, chỉnh sửa tệp cấu hình chính của Postfix để làm cho có thể sử dụng máy chủ Postgrey.
Mở tệp main.cf bằng bất kỳ trình soạn thảo văn bản nào:
$ sudo nano /etc/postfix/main.cf
Sau đó, thêm dòng sau vào phần “smtpd_recipient_restrictions”:
check_policy_service inet:<ip_address>:10023
Lưu và đóng tệp rồi khởi động lại Postfix để hoàn thành các thay đổi:
$ sudo systemctl restart postfix
*Lưu ý:
- Sau khi thực hiện tất cả những thay đổi này, thư hoặc email sẽ được đưa vào greylisting. Hoặc bị Postgrey từ chối, nếu bất kỳ bộ ba người gửi nào là mới. Bộ ba của người gửi là địa chỉ IP người gửi, địa chỉ email người nhận và địa chỉ email người gửi.
- Greylisting có thể dẫn đến trải nghiệm người dùng không tốt. Để tránh điều này, bạn có thể tạo một danh sách trắng. Postgrey cung cấp hai tệp danh sách trắng /etc/postgrey/whitelist_recipients và /etc/postgrey/whitelist_clients. Cái trước chứa địa chỉ email của người nhận và cái sau chứa danh sách tên máy chủ. Trong Postgrey, máy chủ thư được đưa vào danh sách trắng theo mặc định là máy chủ thư của Google.
3. Sử dụng Public Anti-Spam Blacklists – Danh sách đen chống thư rác công khai
Những kẻ gửi thư rác cũng sử dụng các địa chỉ email có tên máy chủ hợp lệ – bản ghi PTR và bản ghi A để gửi email. Và nhờ đó những email này vượt qua Greylisting. Trong trường hợp này bạn có thể sử dụng Public Anti-Spam Blacklists để từ chối thư rác. Để thực hiện hãy làm theo các bước dưới đây.
Mở tệp cấu hình chính của Postfix bằng bất kỳ trình soạn thảo văn bản nào:
$ sudo nano /etc/postfix/main.cf
Thêm các dòng sau vào phần smtpd_recipient_restrictions.
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_rhsbl_helo <blacklists_name>, reject_rhsbl_reverse_client <blacklists_name>, reject_rhsbl_sender <blacklists_name>, reject_rbl_client <blacklists_name>
Trong các dòng trên, hãy thay thế <blacklists_name> bằng danh sách đen công khai. Danh sách này đã đưa những kẻ gửi thư rác vào danh sách đen.
4. Tạo Whitelist – Danh sách trắng
Có nhiều khả năng một địa chỉ email hợp pháp lỡ bị đưa vào danh sách đen. Vì vậy, để tránh tình huống như vậy, bạn có thể đưa các địa chỉ email đó vào danh sách trắng. Hãy làm theo các bước dưới đây.
Tạo tệp sau trong thư mục Postfix.
$ sudo nano /etc/postfix/rbl_override
Trong tệp đã tạo, hãy thêm các tên miền trong danh sách trắng theo định dạng sau. Ở định dạng sau, hãy thay <domain_name> bằng tên miền thực mà bạn muốn đưa vào danh sách trắng.
<domain_name> OK
Lưu và đóng tập tin.
Tạo tệp ‘rbl_override.db‘ bằng cách thực hiện lệnh sau:
$ sudo postmap /etc/postfix/rbl_override
Mở tệp cấu hình chính của Postfix bằng bất kỳ trình soạn thảo văn bản nào.
$ sudo nano /etc/postfix/main.cf
Sau đó, thêm dòng sau vào phần smtpd_recipient_restrictions.
check_client_access hash:/etc/postfix/rbl_override,
Tải lại Postfix để đảm bảo rằng các thay đổi được thực hiện.
$ sudo systemctl reload postfix
Bạn có thể sử dụng 4 mẹo chặn thư rác trên bằng máy chủ Postfix SMTP. Hy vọng rằng chia sẻ này sẽ hữu ích cho bạn. Hãy bình luận bên dưới nếu có bất kỳ câu hỏi hoặc thắc mắc nào. Cảm ơn đã theo dõi bài viết!