Hi there,
I faced a challenge to set up a working filter set (firewall) in a RouterOS device so to protect internal WebService infrastructure in a smart and intelligent fashion. The setup is as follows: We have an internal WebService behind RB1100AHx2 version 5.25, which provides sensitive information like prices and discounts of items and products to external requests. The problem is that such services are regularly exploited by sending a lot of requests and big batch queries which are capable of drawing valuable information from the internal database or cause complete failure of the serving system (DoS in our case the WebService). What is to my mind is first limiting the requests per second or minute to the WebService, second I need to limit the maximum amount of data drawn and requested per second/minute to avoid downloading more info than "normally" is necessary, also I need to limit the maximum connections from one IP to the WebService, and last but not the least I have to count up the bytes transferred (I/O) to requesting clients so to cool down a bit the "heavy" users. Any other best practices in this context are most welcome.
Any suggestions and guidance will be greatly appreciated!