Why only logged in users can see published post on BlogEngine?

If your server in different time zone, you'll need to compensate this difference with time offset. Under basic settings, set "server time offset" to positive on negative number, in hours. For example, 5 or -5 to compensate 5 hours difference.