From: BlogEngine.NET 2.5 - Private Blogs
If you enter the control panel, the "Users" tab, the "Roles" tab (right side) for "Anonymous" in the right "Tools" area, hover over it and select "Rights".
You are now on the Rights page for the Anonymous role. Uncheck all the boxes, in particular "View Public Messages." HOWEVER, you need to save at least one element, otherwise everything will return to default. For example, you can save "View Ratings on Posts". Then save.
Then, anyone who is not logged in should automatically be redirected to the login page, regardless of which page they are trying to enter the site on.
source share