
Bài viết này sẽ hướng dẫn bạn Cách Kiểm Tra Mail Queue, Xóa Mail Queue Rác. Nếu bạn cần hỗ trợ, xin vui lòng liên hệ VinaHost qua Hotline 1900 6046 ext.3, email về support@vinahost.vn hoặc chat với VinaHost qua livechat https://livechat.vinahost.vn/chat.php.
Nguyên nhân mail queue
- Bị phía người nhận chặn hoặc không thực hiện send mail được tới người nhận do dns, bộ lọc, server bị báo cáo là spam, IP blacklist, bounce
- Các email hệ thống có tiêu đề dạng: T=”Mail delivery failed: returning message to sender” do gửi email tới người nhận không thành công.
- Các email gửi đi bị lỗi và vào trạng thái đóng băng.
- Vấn đề mã độc
Cách xóa mail queue
Cách 1: Bằng lệnh.
Cách 2: Sử dụng giao diện admin host như Cpanel/Directadmin.
Spam Mail VPS:
- Nhận biết
- VPS của bạn tự nhiên chậm, RAM và CPU tăng cao
- Email không đến được người nhận
- DirectAdmin thông báo lượng mail gửi ra nhiều
- Địa chỉ IP bị Blacklist
- Nguyên nhân
Nếu là máy chủ website có thể source code bạn có vấn đề. Hãy chắc chắn rằng các module, plugin, theme là đáng tin cậy.
SMTP spam: Có thể tài khoản nào đó bị đánh cắp
User chủ động spam mail ra ngoài (Email Marketing)
Do hàm mail() được enable và bị lạm dụng
- Cách xác định
Step 1: Kiểm tra số lượng mail trong queue. Nếu con số >100 thì cũng đồng nghĩa là VPS đang thực hiện spam mail ra ngoài
-
exim -bpc
Step 2: Kiểm tra danh sách mail trong queue để biết cụ thể user account mail nào đang thực hiện spam
-
exim -bp
Step 3: Kiểm tra log mail
-
cd /var/log/exim
-
tail -n 100 mainlog |more
hoặc
- tail -n 10000 mainlog |grep user@example.com |more // lệnh này sẽ liệt kê log theo user được truy vấn
Step 4: Kiểm tra nội dung mail
-
exim -Mvh [id] // id dạng 1YlI6V-0004K0-MT
- Cách khắc phục
Step 1: Trước tiên cần thực hiện xóa/gửi toàn bộ/một mail trong queue
- exim -Mrm {message-id} // xóa 1 mail trong queue, id dạng 1YlI6V-0004K0-MT
- exim -bp | awk ‘{ print $3 }’ | xargs exim -Mrm // xóa tòa bộ mail trong queue
- exim -bpr | grep frozen | awk {‘print $3’} | xargs exim -Mrm // xóa tòa bộ mail trong frozen
- /usr/sbin/exim -bp |awk ‘{print $3}’ | xargs -n 1 -P 40 /usr/sbin/exim -v -M //gửi toàn bộ mail trong queue
- Đẩy mail queue/Gửi email đi trong queue: sendmail -v -q
Step 2: Thực hiện config và stop service exim( dùng cho các server muốn chạy host nhưng không dùng email server)
- vim /etc/exim.conf //Chỉnh sửa bất kỳ 1 dòng nào đó để làm sai hoạt động của exim sau đó lưu lại
- /etc/init.d/exim stop //Stop service exim
Step 3: Disable hàm mail()
- php -i | grep php.ini //Xác định file php.ini
Giả sử kết quả trả về file php.ini nằm trong /usr/local/php54/lib/php.ini
- grep disable_functions /usr/local/php54/lib/php.ini //Kiểm tra xem hàm nào bị disable
- sed -i ‘s/disable_functions =/disable_functions = mail/’ /usr/local/php54/lib/php.ini //Thực hiện disable hàm mail()
- /etc/init.d/httpd restart //Restart service httpd