Hi Paulo,
You mentioned you were running your database on an Ubuntu server on Azure, so the keepalive setting should definitely apply. This setting controls keeping the connection alive from the server point of view.
With Windows, are you referring to timeouts from a Windows client/application connecting to your server? Setting a lower idle timeout in your client (as per the blog post you originally referenced) should keep the client connection from timing out.
Can you clarify where you are seeing the timeouts? How long is your connection idle before it times out, and what application/driver and version are you using to connect to MongoDB?
Regards,
Stephen