Powered by Blogger.

ZIMBRA DoSFilter Throttling Mechanism

ZIMBRA DoSFilter Throttling Mechanism

Trong môi trường multi server (store và MTA),việc thay đổi IP của MTA sẽ gặp một vài lỗi phát sinh, một trong những lỗi đó là DosFilter.
Khái niệm Whitelist IP (trusted IP) trong môi trường mail server dùng để hệ thống nhật biết những hosts, server trong group mail server và bỏ qua những tham số filter.
Hiện tượng để nhận biết MTA không được Whitelist:
- Tất cả các services trên hệ thống mail đều tốt.
- Người dùng sử dụng mail bằng giao thức POP3/IMAP đều hoạt động tốt.
- Người dùng webmail sẽ bị tình trạng login lúc được lúc không, trong trường hợp login không được sẽ nhận được thông báo lỗi như hình dưới:
Kiểm tra log trên server mail sẽ phát hiện như hình sau:
#grep  "webclient - system failure" /opt/zimbra/log/mailbox.log
2016-06-07 17:39:59,537 WARN  [qtp509886383-1298:https://<server-ip>:443/] [] webclient - system failure: error while proxying request to target server: HTTP/1.1 503 Service Unavailable
com.zimbra.common.service.ServiceException: system failure: error while proxying request to target server: HTTP/1.1 503 Service Unavailable
Caused by: com.zimbra.common.service.ServiceException: error while proxying request to target server: HTTP/1.1 503 Service Unavailable
Code:service.PROXY_ERROR Arg:(url, STR, "http://localhost:81/service/soap/AuthRequest")
   at com.zimbra.common.service.ServiceException.PROXY_ERROR(ServiceException.java:329)

 #grep  "DosFilter Configured Whitelist" /opt/zimbra/log/mailbox.log



Thông thường mục số 1 sẽ là IP của mailstore và mục số 2 sẽ là IP MTA, 02 IP này sẽ được whitelist, nếu trong quá trình thay đồi IP mà chưa cập nhật thống số này thì IP mới sẽ bị DosFilter xem như là IP lạ tấn công vào hệ thống và sẽ bị block, thời gian block sẽ được thể hiện trong 03 tham số sau:
dùng những lệnh sau để kiểm tra những thông số:
#zmprov gcf zimbraInvalidLoginFilterDelayInMinBetwnReqBeforeReinstating
zimbraInvalidLoginFilterDelayInMinBetwnReqBeforeReinstating: 15 
#zmprov gcf zimbraInvalidLoginFilterMaxFailedLogin
zimbraInvalidLoginFilterMaxFailedLogin: 10
#zmprov gcf zimbraInvalidLoginFilterReinstateIpTaskIntervalInMin
zimbraInvalidLoginFilterReinstateIpTaskIntervalInMin: 5

Để giải quyết vấn đề này là cho IP server mới vào whitelist theo câu lệnh sau:
#su zimbra
#zmprov mcf +zimbraHttpThrottleSafeIPs IP_Server_mới
#zmprov ms `zmhostname` +zimbraHttpThrottleSafeIPs IP_Server_mới
#zmmailboxdctl restart
 
kiểm tra  IP server mới đã được Whitelist giá trị trả về sẽ là IP server được whitelist:
#zmprov gcf zimbraHttpThrottleSafeIPs
zimbraHttpThrottleSafeIPs: x.x.x.x

Như vậy đã hoàn thành việc Whitelist IP để không bị DosFilter block

Good luck!




    Blogger Comment
    Facebook Comment